1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
// { dg-do compile } // { dg-require-effective-target lto } // { dg-options "-flto -g" } template < typename > void * bar (int *p) { union { int *p; } u; u.p = p; return u.p; } void foo (int *p) { bar < void >(p); }