2012-09-20 20 views
8

我在写一些利用计算出来的代码。语法检查器将goto *ptr&&label的每个实例都标记为语法错误。无论如何阻止这个?如何停止Eclipse CDT发出错误,因为gcc特定的语法?

加为ALK:

举例计算转移(GCC扩展名):

... 

void * pLbl = NULL; 

if (<some expression>) 
    pLbl = &&lbl1; /* gcc extension: no, '&&' is not a typo */ 
else if (<some other expression>) 
    pLbl = &&lbl2; /* gcc extension: no, '&&' is not a typo */ 

if (pLbl) 
    goto * pLbl; /* gcc extension: goes/jumps to either 'lbl1' or 'lbl2' */ 

goto lbl0; 

lbl1: 
    <do some stuff> 
goto lbl0; 

lbl2: 
    <do some other stuff> 
goto lbl0; 

lbl0: 

... 

eclipse看到这段代码获得黄色遍布)

+0

请把一些代码,我不明白的问题。 –

+3

我想知道为什么这个被拒绝了。它在这里被认为是主题吗?如果放弃投票,留下评论是不错的风格,不是吗? – alk

+0

为了更好的理解而添加的示例... @JulienFouilhé – alk

回答

1

没有其他的办法,然后申请一个错误到CDT bugtracker,最好用解析器的补丁。

+0

已经有一个条目提到:https://bugs.eclipse.org/bugs/show_bug.cgi?id = 84144也许有人可以澄清对这个错误报告的评论想说? – alk

+0

最初的报告是在2005年2月提交的。这个得到修复的机会看起来不太好。我只是要关闭该功能。它也给了我其他的虚假警告。尽管如此,我仍然遇到了麻烦。我在首选项> C/C++>代码分析中取消选中所有复选框,并且仍然弹出错误信息。 – cleong

+0

@cleong你是否已经成功转动了这种功能。我面临同样的问题。随着时间的推移,CDT的情况没有改变。 – Mihalko