The code in c-lex.c that handles string concatenation allows weird, and from what I can tell invalid, ObjC string concatentations. In particular it allows any number of "@"s, and trailing "@"s. E.g., it treats these as valid strings:
"foo" @@@@@ "bar" @"foo" @@@@@ -- Summary: compiler accepts invalid string concatenation Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: objc AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tromey at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34033