Context-awareness in Cpp parser

Milian Wolff mail at milianw.de
Tue May 31 10:29:34 UTC 2011


Hey all, esp. David :)

While hacking away at C++0x support, I tripped over the following issue: The 
parser sometimes seems to ignore some rules / does not take the context into 
account properly. One case which I'm hit by right now is parseDeclarator. It 
supports bitfields everywhere, even outside of struct/class contexts.

On one hand this can lead to false-positives (the following is accepted as 
valid by our parser):

int main() {
  int i : 1;
  return 0;
}

even though it will not compile. Furthermore it makes me jump through hoops 
when trying to reuse that function in implementing range-based for (as there 
the colon has a different meaning).

So what would you guys suggest - should I try to add rough context 
sensitivity?

Bye
-- 
Milian Wolff
mail at milianw.de
http://milianw.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20110531/33845225/attachment.sig>


More information about the KDevelop-devel mailing list