Handle a "#pragma options align" inside a class.
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>
Fri, 12 Oct 2012 17:39:59 +0000 (17:39 +0000)
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>
Fri, 12 Oct 2012 17:39:59 +0000 (17:39 +0000)
llvm-svn: 165810

clang/lib/Parse/ParseDeclCXX.cpp
clang/test/Parser/pragma-options.cpp [new file with mode: 0644]

index 7e1e8ce..e656a6b 100644 (file)
@@ -2372,6 +2372,11 @@ void Parser::ParseCXXMemberSpecification(SourceLocation RecordLoc,
         continue;
       }
 
+      if (Tok.is(tok::annot_pragma_align)) {
+        HandlePragmaAlign();
+        continue;
+      }
+
       AccessSpecifier AS = getAccessSpecifierIfPresent();
       if (AS != AS_none) {
         // Current token is a C++ access specifier.
diff --git a/clang/test/Parser/pragma-options.cpp b/clang/test/Parser/pragma-options.cpp
new file mode 100644 (file)
index 0000000..152aacb
--- /dev/null
@@ -0,0 +1,5 @@
+// RUN: %clang_cc1 -triple i386-apple-darwin9 -fsyntax-only -verify %s
+
+class C {
+#pragma options align=natural
+};