------- Comment #3 from janis at gcc dot gnu dot org 2009-02-10 21:50 ------- Suffixes for fixed-point constants are broken as well. GCC allows the letters in them to be in any order, except that "ll" must be together and in the same case. GCC does not reject 'l' by itself as invalid. N1169, a draft of TR 18037, says that a suffix is case-insensitive but isn't clear about whether that means that a suffix can mix cases within a suffix or just that all-uppercase or all-lowercase varieties are valid.
Function interpret_float_suffix in libcpp/expr.c was originally quite simple. It was not designed to support long suffixes like those for decimal-float and fixed-point constants. It will need to get even more complicated with support for suffix 'd' for double contants (PR c/39027) and pragma FLOAT_CONST_DECIMAL64 (PR c/39037), which specifies whether an unsuffixed float constant is double or _Decimal64. I'm looking at reasonable ways to rewrite it. -- janis at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |joseph at codesourcery dot | |com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33466