https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87586
Harald van Dijk <harald at gigawatt dot nl> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |harald at gigawatt dot nl --- Comment #1 from Harald van Dijk <harald at gigawatt dot nl> --- > without a matching < is taken simply as the greater-than operator. You are > checking whether cast_integral_type<uint16_t, int>(nRedundantVar) is greater > than (0x64), which is valid so should compile successfully, even if it is not > what you intended.