2 // { dg-do compile { target c++11 } }
4 #define assert(X) do { if (!(X)) __builtin_abort(); } while (0)
6 struct holder { int& value; };
8 constexpr holder from_value(int& value)
11 struct aggr { int i; };
13 constexpr holder from_aggr(aggr& a)
14 { return from_value(a.i); }
21 assert( &from_value(a.i).value != nullptr );
22 assert( &a.i == &from_value(a.i).value );
25 assert( &from_aggr(a).value != nullptr );
26 assert( &a.i == &from_aggr(a).value );