https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71827
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org, | |jason at gcc dot gnu.org Target Milestone|6.2 |4.9.4 Summary|[6/7 Regression] ICE on |[4.9/5/6/7 Regression] ICE |invalid C++11 code with non |on invalid C++11 code with |constant diff between two |non constant diff between |labels |two labels --- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> --- No, that appears only because 6+ defaults to -std=c++14. With -std=c++0x this ICEs back to r174891, r174880 rejects it. template <typename T, T> struct A {}; void foo () { m: n: A <int, (__INTPTR_TYPE__) &&n - (__INTPTR_TYPE__) &&m> a; }