[PATCH] D34263: [preprocessor] When preprocessor option 'SingleFileParseMode' is enabled, parse all directive blocks if the condition uses undefined macros

Ben Langmuir via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jun 16 10:34:25 PDT 2017

benlangmuir added a comment.

It would be nice if the doc comment for the single file parse mode flag was updated to include this new functionality.

Comment at: lib/Lex/PPDirectives.cpp:2709
+    CurPPLexer->pushConditionalLevel(IfToken.getLocation(), /*wasskip*/true,
+                                   /*foundnonskip*/false, /*foundelse*/false);
+  } else if (ConditionalTrue) {
Nitpick: this is misaligned.  Same with many other calls to pushConditionalLevel in this patch.

Comment at: lib/Lex/PPDirectives.cpp:2774
+    // the directive blocks.
+    CurPPLexer->pushConditionalLevel(CI.IfLoc, /*wasskip*/false,
+                                   /*foundnonskip*/true, /*foundelse*/true);
Why is wasSkipping false here?


More information about the cfe-commits mailing list