[cfe-commits] r62018 - in /cfe/trunk: lib/Parse/ParseDecl.cpp test/Parser/MicrosoftExtensions.c

Douglas Gregor dgregor at apple.com
Fri Jan 9 16:48:18 PST 2009


Author: dgregor
Date: Fri Jan  9 18:48:18 2009
New Revision: 62018

URL: http://llvm.org/viewvc/llvm-project?rev=62018&view=rev
Log:
Allow multiple Microsoft calling-convention keywords. Fixes rdar://problem/6486133

Modified:
    cfe/trunk/lib/Parse/ParseDecl.cpp
    cfe/trunk/test/Parser/MicrosoftExtensions.c

Modified: cfe/trunk/lib/Parse/ParseDecl.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Parse/ParseDecl.cpp?rev=62018&r1=62017&r2=62018&view=diff

==============================================================================
--- cfe/trunk/lib/Parse/ParseDecl.cpp (original)
+++ cfe/trunk/lib/Parse/ParseDecl.cpp Fri Jan  9 18:48:18 2009
@@ -1735,8 +1735,8 @@
     RequiresArg = true;
   }
   // Eat any Microsoft extensions.
-  if ((Tok.is(tok::kw___cdecl) || Tok.is(tok::kw___stdcall) ||
-      (Tok.is(tok::kw___fastcall))) && PP.getLangOptions().Microsoft)
+  while ((Tok.is(tok::kw___cdecl) || Tok.is(tok::kw___stdcall) ||
+          (Tok.is(tok::kw___fastcall))) && PP.getLangOptions().Microsoft)
     ConsumeToken();
   
   // If we haven't past the identifier yet (or where the identifier would be

Modified: cfe/trunk/test/Parser/MicrosoftExtensions.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Parser/MicrosoftExtensions.c?rev=62018&r1=62017&r2=62018&view=diff

==============================================================================
--- cfe/trunk/test/Parser/MicrosoftExtensions.c (original)
+++ cfe/trunk/test/Parser/MicrosoftExtensions.c Fri Jan  9 18:48:18 2009
@@ -26,3 +26,5 @@
 void foo() {
 	__declspec(align(16)) int *buffer = (int *)_alloca(9);
 }
+
+typedef bool (__stdcall __stdcall *blarg)(int);





More information about the cfe-commits mailing list