The testcase that has been committed for this PR doesn't work on ilp32
targets, because both 0u - 1 and 0u - 1l are there 0xffffffffu.
The testcase originally filed had proper 0u - 1ll in the second case, which
works on all targets where long long is wider than int (not aware of any
target we support where that wouldn't be true right now).
Tested on x86_64-linux, -m32/-m64, committed to trunk as obvious.
2018-02-19 Jakub Jelinek <ja...@redhat.com>
* g++.dg/template/overload15.C (f): Use 0u - 1ll instead of 0u - 1l.
--- gcc/testsuite/g++.dg/template/overload15.C.jj 2018-02-16
+++ gcc/testsuite/g++.dg/template/overload15.C 2018-02-19 19:45:48.771094113
@@ -5,7 +5,7 @@ template <unsigned N>
void f (char (*)[0u - 1 > N ? 1 : 7]);
template <unsigned N>
-void f (char (*)[0u - 1l > N ? 1 : 7]);
+void f (char (*)[0u - 1ll > N ? 1 : 7]);
void f ()