https://gcc.gnu.org/bugzilla/show_bug.cgi?id=21438
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |NEW Assignee|pinskia at gcc dot gnu.org |unassigned at gcc dot gnu.org --- Comment #8 from Andrew Pinski <pinskia at gcc dot gnu.org> --- I am not going to fix this in the end. The reason is because the C++ front-end warns twice for templates when I think it should only warn once. ``` template <int C> int f2(int t) { return t/0; } int tt1 = f2<0>(1); ``` Or none at all: ``` template <typename C> int f(C t) { return t/0; } template <int C> int f1(int t) { return t/C; } int tt = f<int>(1); int tt1 = f1<0>(1); ``` Note clang warns twice for f2 but only once for f/f1.