cyclops <cyclops64@xxxxxxxxx> writes: > I found that some files like cpplex.c disappeared from 4.0.0. (Maybe > in earlier version, i do not know) It moved to libcpp/lex.c, although I don't know why it matters. > The thing is in 3.2.3, when compile code like > > __asm__ (" > .set noat > mov r5,%0 > mov r8,%1 > mov r9,%2 > mov r10,%3 > svc > .set at" > : > : "r"(SVC_LSEEK), "r"(file), "r"(ptr), "r"(dir) > : "r5", "r8", "r9", "r10" > ); > > > It only gives an warning: "warning: multi-line string literals are > deprecated". The code is still generated correctly. > > However, in gcc-4.0.0, it treats the same piece code as error: > > "error: missing terminating " character" > > I know this problem can be solved by add "\" at the end of each line. > However, we have a lot of code written in that way, we may not want to > change them all. Is there a way to make gcc-4.0.0 to treat those > multi-line strings as gcc-3.2.3 did? No. Sorry. The easiest fix is to use string concatenation, or to simply put a backslash (or perhaps "\n\") at the end of each line. Ian