[previous] 0257 [next] [S] String literal is not terminated. A trigraph has been used in the construction of an escape sequence.
Syntax errors REFERENCE - ISO:C90-6.1.3.4 Character Constants, ISO:C90-5.2.1.1 Trigraph Sequences

A string literal must begin and end on the same logical line. It appears that the terminating '"' character may not be recognised because it is preceded by a trigraph '??/'. This trigraph is interpreted as a backslash character '\' and the '"' character has thus become part of an escape sequence.

To insert a backslash character within the string literal, use the sequence '\\' or the trigaph sequence '??/??/'. For example:


/*PRQA S 753,3122,3211,3408,3601,3625 ++*/

    char *pca = "This literal ends with a backslash ??/??/";
    char *pcb = "This literal is not terminated. ??/";         /* Message 0257 */

QA·C Source Code Analyser 8.1.2
© 2013 Programming Research.
www.programmingresearch.com
Personality Groups | Glossary | Message Index Contents