https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86836
Marek Polacek <mpolacek at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ice-on-invalid-code --- Comment #3 from Marek Polacek <mpolacek at gcc dot gnu.org> --- struct A { int operator*(); void operator++(); bool operator!=(A); }; template <typename> class map { public: A begin(); A end(); }; template <typename T> void mergemap(map<T> orig, map<T> toadd) { for (auto p : toadd) auto [orig] = orig; } int main() { map<double> x, y; mergemap(x, y); }