• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // RUN: %clang_cc1 -fsyntax-only -verify -fms-extensions %s
2 // RUN: %clang_cc1 -fsyntax-only -verify -fms-compatibility %s
3 // RUN: %clang_cc1 -fsyntax-only -verify -triple i386-pc-win32 -fms-compatibility %s
4 
5 __int8 x1  = 3i8;
6 __int16 x2 = 4i16;
7 __int32 x3 = 5i32;
8 __int64 x5 = 0x42i64;
9 __int64 x6 = 0x42I64;
10 #ifndef __SIZEOF_INT128__
11 // expected-error@+2 {{__int128 is not supported on this target}}
12 #endif
13 __int64 x4 = 70000000i128;
14 
15 __int64 y = 0x42i64u;  // expected-error {{invalid suffix}}
16 __int64 w = 0x43ui64;
17 __int64 z = 9Li64;  // expected-error {{invalid suffix}}
18 __int64 q = 10lli64;  // expected-error {{invalid suffix}}
19 
20 __complex double c1 = 1i;
21 __complex double c2 = 1.0i;
22 __complex float c3 = 1.0if;
23 
24 // radar 7562363
25 #define ULLONG_MAX 0xffffffffffffffffui64
26 #define UINT 0xffffffffui32
27 #define USHORT 0xffffui16
28 #define UCHAR 0xffui8
29 
a()30 void a() {
31 	unsigned long long m = ULLONG_MAX;
32 	unsigned int n = UINT;
33         unsigned short s = USHORT;
34         unsigned char c = UCHAR;
35 }
36 
pr_7968()37 void pr_7968()
38 {
39   int var1 = 0x1111111e+1;
40   int var2 = 0X1111111e+1;
41   int var3 = 0xe+1;
42   int var4 = 0XE+1;
43 
44   int var5=    0\
45 x1234e+1;
46 
47   int var6=
48   /*expected-warning {{backslash and newline separated by space}} */    0\
49 x1234e+1;
50 }
51 
52