brintos

brintos / llvm-project-archived public Read only

0
0
Text · 809 B · 63bca48 Raw
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