* Richard Kenner: > If this still doesn't convince you, here's an example which doesn't > use Ada.Unchecked_Conversion at all. > > Well sure, reading an uninitialized value is erroneous except for the use > of 'Valid.
No, it's not, as Ada is not C. And please not the presence of pragma Normalize_Scalars. > I'm not saying that things aren't broken, just being very careful in the > definition of what a "valid" value in an object is. To be honest, I think your definitions don't match what is described in the in the ARM and the GNAT RM. > The point is that these values are not "valid" (which is why 'Valid > returns FALSE) and that the compiler (specifically VRP) This is not a VRP bug. It also happens with GCC 4.0.1.