1*67e74705SXin Li // RUN: %clang_cc1 %s -debug-info-kind=line-tables-only -S -emit-llvm -o - | FileCheck %s 2*67e74705SXin Li // Checks that clang with "-gline-tables-only" doesn't emit debug info 3*67e74705SXin Li // for variables and types. 4*67e74705SXin Li 5*67e74705SXin Li // CHECK-NOT: DW_TAG_variable 6*67e74705SXin Li int global = 42; 7*67e74705SXin Li 8*67e74705SXin Li // CHECK-NOT: DW_TAG_typedef 9*67e74705SXin Li // CHECK-NOT: DW_TAG_const_type 10*67e74705SXin Li // CHECK-NOT: DW_TAG_pointer_type 11*67e74705SXin Li // CHECK-NOT: DW_TAG_array_type 12*67e74705SXin Li typedef const char* constCharPtrArray[10]; 13*67e74705SXin Li 14*67e74705SXin Li // CHECK-NOT: DW_TAG_structure_type 15*67e74705SXin Li struct S { 16*67e74705SXin Li // CHECK-NOT: DW_TAG_member 17*67e74705SXin Li char a; 18*67e74705SXin Li double b; 19*67e74705SXin Li constCharPtrArray c; 20*67e74705SXin Li }; 21*67e74705SXin Li 22*67e74705SXin Li // CHECK-NOT: DW_TAG_enumerator 23*67e74705SXin Li // CHECK-NOT: DW_TAG_enumeration_type 24*67e74705SXin Li enum E { ZERO = 0, ONE = 1 }; 25*67e74705SXin Li 26*67e74705SXin Li // CHECK-NOT: DILocalVariable sum(int p,int q)27*67e74705SXin Liint sum(int p, int q) { 28*67e74705SXin Li int r = p + q; 29*67e74705SXin Li struct S s; 30*67e74705SXin Li enum E e; 31*67e74705SXin Li return r; 32*67e74705SXin Li } 33