我正在使用现有的 C 代码,其中有几行与此类似的语句:
struct collect_conn *tc = (struct collect_conn *)
((char *)c - offsetof(struct collect_conn, runicast_conn));
结构 collect_conn 遵循以下几行:
struct collect_conn {
struct runicast_conn runicast_conn;
struct announcement announcement;
const struct collect_callbacks *cb;
struct ctimer t;
uint16_t rtmetric;
uint8_t forwarding;
uint8_t seqno;
};
我正在使用 Eclipse CDT,它将带有橙色波浪线的行标记为“语法错误”。我认为它是由 CDT 索引器标记的。但是,编译(在终端中手动)没有问题。
然而,这有点不方便,因为行上的元素没有被索引(因此调用层次结构树并不总是正确的,或者元素的突出显示等)
为什么 Ecipse 不喜欢这条线?