2009-11-29 12:33:10 +03:00
|
|
|
// RUN: clang-cc -o %t -emit-llvm -g %s
|
2009-10-23 05:52:13 +04:00
|
|
|
// RUN: FileCheck --input-file=%t %s
|
2008-11-08 07:42:29 +03:00
|
|
|
|
2008-11-11 09:27:34 +03:00
|
|
|
// PR3023
|
2008-11-08 07:42:29 +03:00
|
|
|
void convert(void) {
|
|
|
|
struct { typeof(0) f0; } v0;
|
|
|
|
}
|
2008-11-11 09:42:53 +03:00
|
|
|
|
2009-10-23 05:52:13 +04:00
|
|
|
|
2008-11-11 09:42:53 +03:00
|
|
|
// PR2784
|
|
|
|
struct OPAQUE;
|
|
|
|
typedef struct OPAQUE *PTR;
|
|
|
|
PTR p;
|
|
|
|
|
|
|
|
|
|
|
|
// PR2950
|
|
|
|
struct s0;
|
|
|
|
struct s0 { struct s0 *p; } g0;
|
|
|
|
|
|
|
|
struct s0 *f0(struct s0 *a0) {
|
|
|
|
return a0->p;
|
|
|
|
}
|
2009-01-28 03:35:17 +03:00
|
|
|
|
2009-10-23 05:52:13 +04:00
|
|
|
|
2008-11-26 20:40:42 +03:00
|
|
|
// PR3134
|
|
|
|
char xpto[];
|
|
|
|
|
2009-10-23 05:52:13 +04:00
|
|
|
|
2009-01-28 03:35:17 +03:00
|
|
|
// PR3427
|
|
|
|
struct foo {
|
2009-09-09 19:08:12 +04:00
|
|
|
int a;
|
|
|
|
void *ptrs[];
|
2009-01-28 03:35:17 +03:00
|
|
|
};
|
|
|
|
struct foo bar;
|
2009-05-04 08:39:55 +04:00
|
|
|
|
2009-10-23 05:52:13 +04:00
|
|
|
|
2009-05-04 08:39:55 +04:00
|
|
|
// PR4143
|
|
|
|
struct foo2 {
|
2009-09-09 19:08:12 +04:00
|
|
|
enum bar *bar;
|
2009-05-04 08:39:55 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
struct foo2 foo2;
|
2009-10-23 05:52:13 +04:00
|
|
|
|
|
|
|
|
2009-10-23 06:13:20 +04:00
|
|
|
// Radar 7325611
|
2009-10-23 05:52:13 +04:00
|
|
|
// CHECK: "barfoo"
|
|
|
|
typedef int barfoo;
|
|
|
|
barfoo foo() {
|
|
|
|
}
|