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/* 7union _XEvent { 8}; 9void ProcessEvent() { 10 _XEvent pluginEvent = _XEvent(); 11} 12*/ 13 14// Example from PR11665: 15void f() { 16 union U { int field; } u = U(); 17 (void)U().field; 18} 19 20namespace PR17476 { 21struct string { 22 string(const char *__s); 23 string &operator+=(const string &__str); 24}; 25 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 35void f() { finalizeDefaultAtomValues<int>(); } 36} 37