From f27e5a09a0d815b8a4814152954ff87dadfdefc0 Mon Sep 17 00:00:00 2001 From: ed Date: Tue, 2 Jun 2009 17:58:47 +0000 Subject: Import Clang, at r72732. --- test/Sema/types.c | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 test/Sema/types.c (limited to 'test/Sema/types.c') diff --git a/test/Sema/types.c b/test/Sema/types.c new file mode 100644 index 0000000..e7d4b00 --- /dev/null +++ b/test/Sema/types.c @@ -0,0 +1,39 @@ +// RUN: clang-cc %s -pedantic -verify -triple=x86_64-apple-darwin9 + +// rdar://6097662 +typedef int (*T)[2]; +restrict T x; + +typedef int *S[2]; +restrict S y; // expected-error {{restrict requires a pointer or reference ('S' (aka 'int *[2]') is invalid)}} + + + +// int128_t is available. +int a() { + __int128_t s; + __uint128_t t; +} +// but not a keyword +int b() { + int __int128_t; + int __uint128_t; +} + + +// Array type merging should convert array size to whatever matches the target +// pointer size. +// rdar://6880874 +extern int i[1LL]; +int i[(short)1]; + +enum e { e_1 }; +extern int j[sizeof(enum e)]; // expected-note {{previous definition}} +int j[42]; // expected-error {{redefinition of 'j' with a different type}} + +// rdar://6880104 +_Decimal32 x; // expected-error {{GNU decimal type extension not supported}} + + +// rdar://6880951 +int __attribute__ ((vector_size (8), vector_size (8))) v; // expected-error {{invalid vector type}} -- cgit v1.1