168045b1d4de4b332b7c478e81b5c4383891ba593Rafael Espindola// RUN: %clang_cc1 %s -std=c++11 -emit-llvm-only 268045b1d4de4b332b7c478e81b5c4383891ba593Rafael Espindola// CHECK that we don't crash. 368045b1d4de4b332b7c478e81b5c4383891ba593Rafael Espindola 41d0c9a8d0573d1f670f484cc17aa94f06be971a5Richard Smith// PR11676's example is ill-formed: 51d0c9a8d0573d1f670f484cc17aa94f06be971a5Richard Smith/* 668045b1d4de4b332b7c478e81b5c4383891ba593Rafael Espindolaunion _XEvent { 768045b1d4de4b332b7c478e81b5c4383891ba593Rafael Espindola}; 868045b1d4de4b332b7c478e81b5c4383891ba593Rafael Espindolavoid ProcessEvent() { 968045b1d4de4b332b7c478e81b5c4383891ba593Rafael Espindola _XEvent pluginEvent = _XEvent(); 1068045b1d4de4b332b7c478e81b5c4383891ba593Rafael Espindola} 111d0c9a8d0573d1f670f484cc17aa94f06be971a5Richard Smith*/ 121d0c9a8d0573d1f670f484cc17aa94f06be971a5Richard Smith 131d0c9a8d0573d1f670f484cc17aa94f06be971a5Richard Smith// Example from PR11665: 141d0c9a8d0573d1f670f484cc17aa94f06be971a5Richard Smithvoid f() { 151d0c9a8d0573d1f670f484cc17aa94f06be971a5Richard Smith union U { int field; } u = U(); 161d0c9a8d0573d1f670f484cc17aa94f06be971a5Richard Smith (void)U().field; 171d0c9a8d0573d1f670f484cc17aa94f06be971a5Richard Smith} 18