Home | History | Annotate | Download | only in Lexer
      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 
     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 
     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