2010-01-01 05:34:51 -05:00
|
|
|
// RUN: %clang_cc1 -o %t -emit-llvm -g %s
|
2009-10-23 10:22:18 -04:00
|
|
|
// RUN: FileCheck --input-file=%t %s
|
2009-06-02 13:58:47 -04:00
|
|
|
|
|
|
|
|
// PR3023
|
|
|
|
|
void convert(void) {
|
|
|
|
|
struct { typeof(0) f0; } v0;
|
|
|
|
|
}
|
|
|
|
|
|
2009-10-23 10:22:18 -04:00
|
|
|
|
2009-06-02 13:58:47 -04: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-10-23 10:22:18 -04:00
|
|
|
|
2009-06-02 13:58:47 -04:00
|
|
|
// PR3134
|
|
|
|
|
char xpto[];
|
|
|
|
|
|
2009-10-23 10:22:18 -04:00
|
|
|
|
2009-06-02 13:58:47 -04:00
|
|
|
// PR3427
|
|
|
|
|
struct foo {
|
2009-10-14 14:03:49 -04:00
|
|
|
int a;
|
|
|
|
|
void *ptrs[];
|
2009-06-02 13:58:47 -04:00
|
|
|
};
|
|
|
|
|
struct foo bar;
|
|
|
|
|
|
2009-10-23 10:22:18 -04:00
|
|
|
|
2009-06-02 13:58:47 -04:00
|
|
|
// PR4143
|
|
|
|
|
struct foo2 {
|
2009-10-14 14:03:49 -04:00
|
|
|
enum bar *bar;
|
2009-06-02 13:58:47 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
struct foo2 foo2;
|
2009-10-23 10:22:18 -04:00
|
|
|
|
|
|
|
|
|
|
|
|
|
// Radar 7325611
|
|
|
|
|
// CHECK: "barfoo"
|
|
|
|
|
typedef int barfoo;
|
|
|
|
|
barfoo foo() {
|
|
|
|
|
}
|