diff options
author | Zancanaro; Carlo <czan8762@plang3.cs.usyd.edu.au> | 2012-09-24 09:58:17 +1000 |
---|---|---|
committer | Zancanaro; Carlo <czan8762@plang3.cs.usyd.edu.au> | 2012-09-24 09:58:17 +1000 |
commit | 222e2a7620e6520ffaf4fc4e69d79c18da31542e (patch) | |
tree | 7bfbc05bfa3b41c8f9d2e56d53a0bc3e310df239 /clang/test/Lexer/ms-extensions.c | |
parent | 3d206f03985b50beacae843d880bccdc91a9f424 (diff) |
Add the clang library to the repo (with some of my changes, too).
Diffstat (limited to 'clang/test/Lexer/ms-extensions.c')
-rw-r--r-- | clang/test/Lexer/ms-extensions.c | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/clang/test/Lexer/ms-extensions.c b/clang/test/Lexer/ms-extensions.c new file mode 100644 index 0000000..377d2d5 --- /dev/null +++ b/clang/test/Lexer/ms-extensions.c @@ -0,0 +1,43 @@ +// RUN: %clang_cc1 -fsyntax-only -verify -fms-extensions %s +// RUN: %clang_cc1 -fsyntax-only -verify -fms-compatibility %s + +__int8 x1 = 3i8; +__int16 x2 = 4i16; +__int32 x3 = 5i32; +__int64 x5 = 0x42i64; +__int64 x6 = 0x42I64; +__int64 x4 = 70000000i128; + +__int64 y = 0x42i64u; // expected-error {{invalid suffix}} +__int64 w = 0x43ui64; +__int64 z = 9Li64; // expected-error {{invalid suffix}} +__int64 q = 10lli64; // expected-error {{invalid suffix}} + +// radar 7562363 +#define ULLONG_MAX 0xffffffffffffffffui64 +#define UINT 0xffffffffui32 +#define USHORT 0xffffui16 +#define UCHAR 0xffui8 + +void a() { + unsigned long long m = ULLONG_MAX; + unsigned int n = UINT; + unsigned short s = USHORT; + unsigned char c = UCHAR; +} + +void pr_7968() +{ + int var1 = 0x1111111e+1; + int var2 = 0X1111111e+1; + int var3 = 0xe+1; + int var4 = 0XE+1; + + int var5= 0\ +x1234e+1; + + int var6= + /*expected-warning {{backslash and newline separated by space}} */ 0\ +x1234e+1; +} + |