1 // RUN: %clang_cc1 %s -std=c++11 -emit-llvm-only 2 // RUN: %clang_cc1 -emit-obj -o %t -debug-info-kind=line-tables-only -std=c++11 %s 3 // CHECK that we don't crash. 4 5 // PR11676's example is ill-formed: 6 /* 7 union _XEvent { 8 }; 9 void ProcessEvent() { 10 _XEvent pluginEvent = _XEvent(); 11 } 12 */ 13 14 // Example from PR11665: f()15void f() { 16 union U { int field; } u = U(); 17 (void)U().field; 18 } 19 20 namespace PR17476 { 21 struct string { 22 string(const char *__s); 23 string &operator+=(const string &__str); 24 }; 25 finalizeDefaultAtomValues()26template <class ELFT> void finalizeDefaultAtomValues() { 27 auto startEnd = [&](const char * sym)->void { 28 string start("__"); 29 start += sym; 30 } 31 ; 32 startEnd("preinit_array"); 33 } 34 f()35void f() { finalizeDefaultAtomValues<int>(); } 36 } 37