Sema: Just ignore '#pragma options align=power' for now, this is no worse than
what we used to be doing, and makes sure that paired '#pragma options
align=reset' won't fail.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104998 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaAttr.cpp b/lib/Sema/SemaAttr.cpp
index fcf5bfd..df68f53 100644
--- a/lib/Sema/SemaAttr.cpp
+++ b/lib/Sema/SemaAttr.cpp
@@ -135,7 +135,6 @@
return;
}
- // We don't support #pragma options align=power.
switch (Kind) {
// For all targets we support native and natural are the same.
//
@@ -146,6 +145,12 @@
Context->setAlignment(0);
break;
+ // FIXME: We just ignore #pragma options align=power for now.
+ case POAK_Power:
+ Context->push(0);
+ Context->setAlignment(0);
+ break;
+
// Note that '#pragma options align=packed' is not equivalent to attribute
// packed, it has a different precedence relative to attribute aligned.
case POAK_Packed:
diff --git a/test/Parser/pragma-options.c b/test/Parser/pragma-options.c
index 332249f..daf385d 100644
--- a/test/Parser/pragma-options.c
+++ b/test/Parser/pragma-options.c
@@ -9,4 +9,4 @@
#pragma options align=natural
#pragma options align=reset
#pragma options align=mac68k
-/* expected-warning {{unsupported alignment option}} */ #pragma options align=power
+#pragma options align=power