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