Kito Cheng <kito.ch...@gmail.com> writes: > Yes, I know it's non-fatal warning, but I think gcc should build with > --enable-werror-always by it's self > and it's the *ONLY* warning in trunk now.
Yeah, but it should only build with --enable-werror-always if your host compiler is the same version as the one you're building. It would be too much to expect it to compile cleanly with older versions too, since there's no obvious place to draw the line. So Marek's point was that current GCC (deliberately) does not warn about this switch statement. The switch statement used to be: /* Allow the target to compare Y with X without leaking either into a register. */ switch ((int) (HAVE_stack_protect_test != 0)) but the (int) cast was removed at the same time as the warning was adjusted: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00790.html (BTW, although you cc:ed me, it was that patch rather than mine that introduced the warnings when using unpatched host compilers.) Thanks, Richard