Very simple test case: % cat /tmp/ff.s #define Concat(a,b) a##b Concat(foo,2.2)
% cpp -P /tmp/ff.s foo22.2 Notice that what should be "2.2" becomes "22.2". Also note that this occurs while preprocessing assembler (-x assembler-with-cpp) code. -- Summary: preprocessor doubles up digits in token pasting Product: gcc Version: 4.1.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: preprocessor AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dsb at boyski dot com GCC build triplet: i386-pc-solaris2.10 GCC host triplet: i386-pc-solaris2.10 GCC target triplet: i386-pc-solaris2.10 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31182