// { dg-options "-std=c++0x" } struct A { };
template <typename S, typename T, typename U, typename S::v = &S::v::s> typename S::A foo (S c, T t, U u) { } struct B { struct C { template <typename U> C (U t) { A a; A b = foo (this, a, t); } } c; B () : c (A ()) { } }; int main () { B f; } ICEs in tsubst (seeing ADDR_EXPR there). This is likely invalid testcase, though the ICE is the only diagnostics issued, whether the original testcase from http://bugzilla.redhat.com/509596 is valid or not is unclear. -- Summary: ICE in tsubst Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jakub at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40684