diff options
| author | Nico Weber <nicolasweber@gmx.de> | 2015-02-25 02:22:06 +0000 |
|---|---|---|
| committer | Nico Weber <nicolasweber@gmx.de> | 2015-02-25 02:22:06 +0000 |
| commit | fc3fe4f0a1161850692d14c72d6c729fa91bdf82 (patch) | |
| tree | 27dd4afac2669becea076cd61e098f7334b8d82c /clang/test/Parser/ms-seh.c | |
| parent | 64b04b9bdf6f5dec2ebccd39195d8f216dad9ccb (diff) | |
| download | bcm5719-llvm-fc3fe4f0a1161850692d14c72d6c729fa91bdf82.tar.gz bcm5719-llvm-fc3fe4f0a1161850692d14c72d6c729fa91bdf82.zip | |
Don't crash on missing '{' after __except or __finally, PR22687.
Also add some general test/Parser coverage for SEH blocks.
llvm-svn: 230449
Diffstat (limited to 'clang/test/Parser/ms-seh.c')
| -rw-r--r-- | clang/test/Parser/ms-seh.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/clang/test/Parser/ms-seh.c b/clang/test/Parser/ms-seh.c new file mode 100644 index 00000000000..68c2e309154 --- /dev/null +++ b/clang/test/Parser/ms-seh.c @@ -0,0 +1,24 @@ +// RUN: %clang_cc1 %s -fsyntax-only -Wmicrosoft -verify -fms-extensions + +void f() { + int a; + + __try a; // expected-error {{expected '{'}} expected-warning {{expression result unused}} + + __try { + } +} // expected-error {{expected '__except' or '__finally' block}} + +void g() { + int a; + + __try { + } __except(1) a; // expected-error {{expected '{'}} expected-warning {{expression result unused}} +} + +void h() { + int a; + + __try { + } __finally a; // expected-error {{expected '{'}} expected-warning {{expression result unused}} +} |

