This bug was reported back in 1998/07/19 by Alexander Favorov msg00504.html . It is well described by him. The bug still exists as of gcc 3.3.3 . Its a simple parsing error. My understanding of C is: '\10' is ten (decimal) '\010' is eight (octal) '\0x10' is sixteen (hexadecimal) For a number to be octal, it must be preceeded by a zero, otherwise it is decimal. Book Reference: C: The Complete Reference 3rd Edition Author: Schildt, Herbert Page 37.
-- Summary: Number Representation - Octal Product: gcc Version: 3.3.3 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: robert dot amodeo at ntlworld dot com CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21473