blob: 46b30d76b7c000dac00da3ff9d7ea90880615710 (
plain)
1
2
3
4
5
6
|
<div class="section-level-extent" id="Escaped-Newlines"> <div class="nav-panel"> <p> Next: <a href="subscripting" accesskey="n" rel="next">Non-Lvalue Arrays May Have Subscripts</a>, Previous: <a href="variadic-macros" accesskey="p" rel="prev">Macros with a Variable Number of Arguments.</a>, Up: <a href="c-extensions" accesskey="u" rel="up">Extensions to the C Language Family</a> [<a href="index#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="indices" title="Index" rel="index">Index</a>]</p> </div> <h1 class="section" id="Slightly-Looser-Rules-for-Escaped-Newlines"><span>6.22 Slightly Looser Rules for Escaped Newlines<a class="copiable-link" href="#Slightly-Looser-Rules-for-Escaped-Newlines"> ¶</a></span></h1> <p>The preprocessor treatment of escaped newlines is more relaxed than that specified by the C90 standard, which requires the newline to immediately follow a backslash. GCC’s implementation allows whitespace in the form of spaces, horizontal and vertical tabs, and form feeds between the backslash and the subsequent newline. The preprocessor issues a warning, but treats it as a valid escaped newline and combines the two lines to form a single logical line. This works within comments and tokens, as well as between tokens. Comments are <em class="emph">not</em> treated as whitespace for the purposes of this relaxation, since they have not yet been replaced with spaces. </p> </div><div class="_attribution">
<p class="_attribution-p">
© Free Software Foundation<br>Licensed under the GNU Free Documentation License, Version 1.3.<br>
<a href="https://gcc.gnu.org/onlinedocs/gcc-13.1.0/gcc/Escaped-Newlines.html" class="_attribution-link">https://gcc.gnu.org/onlinedocs/gcc-13.1.0/gcc/Escaped-Newlines.html</a>
</p>
</div>
|