]> granicus.if.org Git - clang/commitdiff
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)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165810 91177308-0d34-0410-b5e6-96231b3b80d8

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

index 7e1e8ce10e4590b42c7c004dad33a3dde25cff5d..e656a6bd7660885547118a8ed85b9315ccf1be65 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/test/Parser/pragma-options.cpp b/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
+};