aboutsummaryrefslogtreecommitdiff
path: root/lib/Parse/ParseStmt.cpp
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2012-10-04 02:36:51 +0000
committerEli Friedman <eli.friedman@gmail.com>2012-10-04 02:36:51 +0000
commit9595c7e2533c836537dc300e75d059c29feb7094 (patch)
tree4645f6a201dbffc4a68dafd9008da0cfbbdc7b01 /lib/Parse/ParseStmt.cpp
parent731a26202db4251ce9f98e64bed8ee257c46eb61 (diff)
Permanently end the whole "pragma got handled by the parser too early"
mess by handling all pragmas which the parser touches uniformly. <rdar://problem/12248901>, etc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165195 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Parse/ParseStmt.cpp')
-rw-r--r--lib/Parse/ParseStmt.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/Parse/ParseStmt.cpp b/lib/Parse/ParseStmt.cpp
index eb2a672fdc..776423c28b 100644
--- a/lib/Parse/ParseStmt.cpp
+++ b/lib/Parse/ParseStmt.cpp
@@ -253,6 +253,16 @@ Retry:
ProhibitAttributes(Attrs);
HandlePragmaPack();
return StmtEmpty();
+
+ case tok::annot_pragma_fp_contract:
+ ProhibitAttributes(Attrs);
+ HandlePragmaFPContract();
+ return StmtEmpty();
+
+ case tok::annot_pragma_opencl_extension:
+ ProhibitAttributes(Attrs);
+ HandlePragmaOpenCLExtension();
+ return StmtEmpty();
}
// If we reached this code, the statement must end in a semicolon.