https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63263
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ice-on-valid-code Last reconfirmed|2014-12-13 00:00:00 |2016-9-11 Known to fail|5.0 |5.4.0, 6.2.0, 7.0 --- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> --- Trunk ICEs again. ps.cc: In instantiation of ‘void f(T&) [with T = B]’: ps.cc:5:20: required from here ps.cc:1:35: error: no matching function for call to ‘B::B(int)’ template<typename T> void f(T&) { T(1); } ^~~~ ps.cc:4:8: note: candidate: constexpr B::B() struct B { friend void f<B>(B&); }; ^ ps.cc:4:8: note: candidate expects 0 arguments, 1 provided ps.cc:4:8: note: candidate: constexpr B::B(const B&) ps.cc:4:8: note: no known conversion for argument 1 from ‘int’ to ‘const B&’ ps.cc:4:8: note: candidate: constexpr B::B(B&&) ps.cc:4:8: note: no known conversion for argument 1 from ‘int’ to ‘B&&’ ps.cc:1:39: internal compiler error: in add_stmt, at cp/semantics.c:385 template<typename T> void f(T&) { T(1); } ^ 0x7eafdf add_stmt(tree_node*) /home/jwakely/src/gcc/gcc/gcc/cp/semantics.c:385 0x6b51fa tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/jwakely/src/gcc/gcc/gcc/cp/pt.c:15424 0x6f4f90 instantiate_decl(tree_node*, int, bool) /home/jwakely/src/gcc/gcc/gcc/cp/pt.c:22158 0x6fbe69 instantiate_pending_templates(int) /home/jwakely/src/gcc/gcc/gcc/cp/pt.c:22277 0x740d63 c_parse_final_cleanups() /home/jwakely/src/gcc/gcc/gcc/cp/decl2.c:4617 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions.