blob: ebcf0f49998f4ef753d4707ea2abd749d4fa67c6 [file] [log] [blame]
Daniel Dunbar3573b2c2009-12-15 20:14:24 +00001// RUN: %clang_cc1 -fsyntax-only -verify -fms-extensions %s
Douglas Gregor3ead4752011-10-24 15:27:23 +00002// RUN: %clang_cc1 -fsyntax-only -verify -fms-compatibility %s
Stephen Hinesc568f1e2014-07-21 00:47:37 -07003// RUN: %clang_cc1 -fsyntax-only -verify -triple i386-pc-win32 -fms-compatibility %s
Nuno Lopes8687cc92009-11-28 13:37:52 +00004
5__int8 x1 = 3i8;
6__int16 x2 = 4i16;
7__int32 x3 = 5i32;
8__int64 x5 = 0x42i64;
Chris Lattnerc1be9be2010-10-14 00:24:10 +00009__int64 x6 = 0x42I64;
Stephen Hinesc568f1e2014-07-21 00:47:37 -070010#ifndef __SIZEOF_INT128__
11// expected-error@+2 {{__int128 is not supported on this target}}
12#endif
Nuno Lopes8687cc92009-11-28 13:37:52 +000013__int64 x4 = 70000000i128;
14
15__int64 y = 0x42i64u; // expected-error {{invalid suffix}}
Fariborz Jahanianf127fb52010-01-22 21:36:53 +000016__int64 w = 0x43ui64;
Nuno Lopes8687cc92009-11-28 13:37:52 +000017__int64 z = 9Li64; // expected-error {{invalid suffix}}
18__int64 q = 10lli64; // expected-error {{invalid suffix}}
Fariborz Jahanianf127fb52010-01-22 21:36:53 +000019
Stephen Hinesc568f1e2014-07-21 00:47:37 -070020__complex double c1 = 1i;
21__complex double c2 = 1.0i;
22__complex float c3 = 1.0if;
23
Fariborz Jahanianf127fb52010-01-22 21:36:53 +000024// radar 7562363
25#define ULLONG_MAX 0xffffffffffffffffui64
26#define UINT 0xffffffffui32
Fariborz Jahaniandc1c1a22010-01-22 22:30:25 +000027#define USHORT 0xffffui16
28#define UCHAR 0xffui8
Fariborz Jahanianf127fb52010-01-22 21:36:53 +000029
30void a() {
31 unsigned long long m = ULLONG_MAX;
32 unsigned int n = UINT;
33 unsigned short s = USHORT;
34 unsigned char c = UCHAR;
35}
Douglas Gregor51b99642010-08-30 14:50:47 +000036
37void pr_7968()
38{
39 int var1 = 0x1111111e+1;
40 int var2 = 0X1111111e+1;
41 int var3 = 0xe+1;
42 int var4 = 0XE+1;
Chris Lattner7c26de42010-08-31 16:42:00 +000043
44 int var5= 0\
45x1234e+1;
46
47 int var6=
48 /*expected-warning {{backslash and newline separated by space}} */ 0\
49x1234e+1;
Douglas Gregor51b99642010-08-30 14:50:47 +000050}
Chris Lattner7c26de42010-08-31 16:42:00 +000051