clang-cl: Fix handling of the /volatile flag (PR21893)
authorHans Wennborg <hans@hanshq.net>
Sat, 13 Dec 2014 22:44:46 +0000 (22:44 +0000)
committerHans Wennborg <hans@hanshq.net>
Sat, 13 Dec 2014 22:44:46 +0000 (22:44 +0000)
The /volatile:iso flag is our default behaviour, so it can be ignored.

Parse /volatile:ms as unsupported.

llvm-svn: 224202

clang/include/clang/Driver/CLCompatOptions.td
clang/test/Driver/cl-options.c

index 6269b7c..71c80d2 100644 (file)
@@ -211,6 +211,7 @@ def _SLASH_Ob2 : CLIgnoredFlag<"Ob2">;
 def _SLASH_RTC : CLIgnoredJoined<"RTC">;
 def _SLASH_sdl : CLIgnoredFlag<"sdl">;
 def _SLASH_sdl_ : CLIgnoredFlag<"sdl-">;
+def _SLASH_volatile_iso : CLIgnoredFlag<"volatile:iso">;
 def _SLASH_w : CLIgnoredJoined<"w">;
 def _SLASH_Zc_forScope : CLIgnoredFlag<"Zc:forScope">;
 def _SLASH_Zc_inline : CLIgnoredFlag<"Zc:inline">;
@@ -271,7 +272,7 @@ def _SLASH_Qpar : CLFlag<"Qpar">;
 def _SLASH_Qvec_report : CLJoined<"Qvec-report">;
 def _SLASH_u : CLFlag<"u">;
 def _SLASH_V : CLFlag<"V">;
-def _SLASH_volatile : CLFlag<"volatile">;
+def _SLASH_volatile_ms : CLFlag<"volatile:ms">;
 def _SLASH_WL : CLFlag<"WL">;
 def _SLASH_Wp64 : CLFlag<"Wp64">;
 def _SLASH_X : CLFlag<"X">;
index e3017f8..fa3273e 100644 (file)
 // RUN:    /sdl \
 // RUN:    /sdl- \
 // RUN:    /vmg \
+// RUN:    /volatile:iso \
 // RUN:    /w12345 \
 // RUN:    /wd1234 \
 // RUN:    /Zc:forScope \
 // RUN:     /Qvec-report:2 \
 // RUN:     /u \
 // RUN:     /V \
-// RUN:     /volatile \
+// RUN:     /volatile:ms \
 // RUN:     /wfoo \
 // RUN:     /WL \
 // RUN:     /Wp64 \