http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49911
--- Comment #16 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-08-12 08:01:36 UTC --- > No, they still mean "nothing", but VRP assumes they are the canonical > value according to precision/signedness. Which C and C++ do not follow. > Unfortunately the C and C++ maintainers do not care (and probably have > a harder job "fixing" this because they lack the nice separation of > the "real" frontend and the interface to GENERIC). They certainly used to mean something, so it would be interesting to know when they stopped doing so. The existence of -fstrict-enums is an evidence. > As they mean "nothing" I would like to make VRP not assume anything about > them (and VRP is really the only one caring for TYPE_MIN/MAX_VALUE apart from > array domain uses). The folder cares (or used to care), in particular the range code. In any case, this particular problem is more of a SRA bug in my opinion.