================
@@ -1400,6 +1416,171 @@ bool Parser::HandlePragmaMSAllocText(StringRef 
PragmaName,
   return true;
 }
 
+NestedNameSpecifier *
+Parser::zOSParseIdentifier(StringRef PragmaName,
+                           const IdentifierInfo *IdentName) {
+  NestedNameSpecifier *NestedId = nullptr;
----------------
perry-ca wrote:

The grammar for the pragma is:
```
'#pragma' 'map' '(' name  ',' string-literal ')'
```
or
```
'#pragma' 'map' '(' qualified-name '(' argument-list ')' cv-qualifiers ',' 
string-literal ')'
```
The first syntax is straight forward.  The name matches functions declared as 
extern "C" in C++.  The second syntax provides matching for functions with C++ 
linkage.  The qualified name here isn't an expression.  It is like the 
declarator-id and will match a future declaration.  I haven't seen anything 
that does what this code does.

https://github.com/llvm/llvm-project/pull/111035
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to