================
@@ -1386,6 +1402,77 @@ bool Parser::HandlePragmaMSAllocText(StringRef 
PragmaName,
   return true;
 }
 
+void Parser::zOSHandlePragmaHelper(tok::TokenKind PragmaKind) {
+  assert(Tok.is(PragmaKind));
+
+  StringRef PragmaName = "export";
+
+  using namespace clang::charinfo;
+  auto *TheTokens =
+      (std::pair<std::unique_ptr<Token[]>, size_t> *)Tok.getAnnotationValue();
+  PP.EnterTokenStream(std::move(TheTokens->first), TheTokens->second, true,
+                      false);
+  ConsumeAnnotationToken();
+
+  auto SkipToEnd = [this]() {
----------------
erichkeane wrote:

Instead of calling this everywhere, we can just do this as a :

`auto exit = llvm::make_scope_exit(<lambda>);`.  


That said, I THINK the `StopBeforeMatch` is wrong here.  In the `correct` case 
you consume the EOF, in the `error` case you're not?  Perhaps this should 
consume it too? 

https://github.com/llvm/llvm-project/pull/141671
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to