1 // RUN: %clang_cc1 -Wno-error=return-type -triple x86_64-unk-unk -o - -emit-llvm -debug-info-kind=limited %s | FileCheck %s 2 // RUN: %clang_cc1 -Wno-error=return-type -triple powerpc64-ibm-aix-xcoff -o - -emit-llvm -debug-info-kind=limited %s | FileCheck %s 3 4 // PR3023 5 void convert(void) { 6 struct { typeof(0) f0; } v0; 7 } 8 9 10 // PR2784 11 struct OPAQUE; // CHECK-DAG: DW_TAG_structure_type, name: "OPAQUE" 12 typedef struct OPAQUE *PTR; 13 PTR p; 14 15 16 // PR2950 17 struct s0; 18 struct s0 { struct s0 *p; } g0; 19 20 struct s0 *f0(struct s0 *a0) { 21 return a0->p; 22 } 23 24 25 // PR3134 26 char xpto[]; 27 28 29 // PR3427 30 struct foo { 31 int a; 32 void *ptrs[]; 33 }; 34 struct foo bar; 35 36 37 // PR4143 38 struct foo2 { 39 enum bar *bar; 40 }; 41 42 struct foo2 foo2; 43 44 // CHECK-DAG: !DIDerivedType(tag: DW_TAG_typedef, name: "barfoo" 45 typedef int barfoo; 46 barfoo foo(void) { 47 } 48 49 // CHECK-DAG: __uint128_t 50 __uint128_t foo128 (void) 51 { 52 __uint128_t int128 = 44; 53 return int128; 54 } 55 56 // CHECK-DAG: uint64x2_t 57 typedef unsigned long long uint64_t; 58 typedef uint64_t uint64x2_t __attribute__((ext_vector_type(2))); 59 uint64x2_t extvectbar[4]; 60 61 // CHECK-DAG: !DIBasicType(name: "long" 62 // CHECK-DAG: !DIBasicType(name: "unsigned long long" 63 void integral_types(long x, unsigned long long y) { 64 } 65