Lines Matching full:line
49 * Line Control::
231 very first action, before it even looks for line boundaries, is to
287 a line. GCC accepts the ASCII control sequences `LF', `CR LF' and
288 `CR' as end-of-line markers. These are the canonical sequences
292 conversion. (GCC may lose track of the current line number if a
297 If the last line of any input file lacks an end-of-line marker,
331 3. Continued lines are merged into one long line.
333 A continued line is a line which ends with a backslash, `\'. The
334 backslash is removed and the following line is joined with the
335 current one. No space is inserted, so you may split a line
339 The trailing backslash on a continued line is commonly referred to
342 If there is white space between a backslash and the end of a line,
343 that is still a continued line. However, as this is usually the
345 it as a continued line, GCC will warn you about it.
354 "Line comments" begin with `//' and continue to the end of the
355 current line. Line comments do not nest either, but it does not
361 It is safe to put line comments inside block comments, or vice versa.
364 // contains line comment
368 // line comment /* contains block comment */
370 But beware of commenting out one end of a block comment with a line
379 Line comments are not in the 1989 edition of the C standard, but they
384 can split a line mechanically with backslash-newline anywhere. You can
385 comment out the end of a line. You can continue a line comment onto the
386 next line with backslash-newline. You can even split `/*', `*/', and
400 There is no way to prevent a backslash at the end of a line from
505 No string literal may extend past the end of a line. Older versions
506 of GCC accepted multi-line string constants. You may use continued
579 * Line control. If you use a program to combine or rearrange source
581 use line control to inform the compiler where each source line
606 directive line and must be separated from the directive name by
610 A preprocessing directive cannot cover more than one line. The line
612 which extends past the end of the line. In either case, when the
614 the first line to make one long line.
699 It is an error if there is anything (other than comments) on the line
756 The line following the `#include' directive is always treated as a
757 separate line by the C preprocessor, even if the included file lacks a
781 You can add to this list with the `-IDIR' command line option. All
806 `#line' (*note Line Control::) does not change GCC's idea of the
912 not `"' or `<', then the entire line is macro-expanded like running
915 If the line expands to a single string constant, the contents of that
926 If the line expands to a token stream beginning with a `<' token and
934 In either case, if there are any tokens on the line after the file
1016 The `-isystem' command line option adds its argument to the list of
1022 command line. If the same directory is named by both `-I' and
1036 from the command line.
1105 The macro's body ends at the end of the `#define' line. You may
1108 come out on one line. For example,
1116 The most common visible consequence of this is surprising line numbers
1232 single logical line--it can cross as many lines in the source file as
1281 (Line breaks shown here for clarity would not actually be generated.)
1607 This macro expands to the current input line number, in the form
1610 with each new line of source code.
1614 state the source line at which the inconsistency was detected. For
1619 "%d at %s, line %d.",
1627 then incremented by one as processing moves to the line after the
1630 A `#line' directive changes `__LINE__', and may change `__FILE__' as
1631 well. *Note Line Control::.
1799 on the command line of the preprocessor or C compiler.
1806 the base file specified on the command line.
2089 function-like. It is an error if anything appears on the line after
2295 be a single logical line, so that it resembles the way such code would
2548 comes out on one line. Thus line numbers emitted by the compiler or
2549 debugger refer to the line the invocation started on, which might be
2550 different to the line containing the argument causing the problem.
2561 error message citing line three--the line of ignore_second_arg-- even
2562 though the problematic code comes from line five.
2713 line options when you compile the program. You can arrange to
2717 then controlling the state of the macro with command line options,
2817 wherever your code uses this feature if you use the command-line option
2915 File: cpp.info, Node: Diagnostics, Next: Line Control, Prev: Conditionals, Up: Top
2921 The tokens forming the rest of the line following `#error' are used as
2950 The line must consist of complete tokens. It is wisest to make the
2955 File: cpp.info, Node: Line Control, Next: Pragmas, Prev: Diagnostics, Up: Top
2957 6 Line Control
2962 and line number. All the tokens resulting from macro expansion are
2963 reported as having appeared on the line of the source file where the
2968 notion of the current file name and line number by hand. Parts of the
2974 `bison' or any such program can arrange this by writing `#line'
2975 directives into the output file. `#line' is a directive that specifies
2976 the original line number and source file name for subsequent input in
2977 the current preprocessor input file. `#line' has three variants:
2979 `#line LINENUM'
2981 the line number which should be reported for the following line of
2984 `#line LINENUM FILENAME'
2987 following line and all subsequent lines are reported to come from
2993 Previous versions of CPP did not interpret escapes in `#line'; we
2997 `#line ANYTHING ELSE'
3001 `#line' directives alter the results of the `__FILE__' and
3007 #line 1 "../src/gram.y"
3013 a `#line' referring to a different directory.
3019 Bison installed. These files frequently have `#line' directives
3028 `-I' switch on the command line. The failures caused by the old
3033 File: cpp.info, Node: Pragmas, Next: Other Directives, Prev: Line Control, Up: Top
3050 a `GCC' prefix. This is in line with the `STDC' prefix on all pragmas
3079 of directives other than `#define', and putting it on a line of its own.
3149 null directive is that an input line consisting of just a `#' will
3150 produce no output, rather than a line of output containing just a `#'.
3174 non-directive line is preceded with sufficient spaces that it appears in
3181 Source file name and line number information is conveyed by lines of
3188 that the following line originated in file FILENAME at line LINENUM.
3213 `#line' directive, (*note Line Control::), except that trailing flags
3337 line comments are preserved. (In fact, the current implementation
3383 If a macro argument crosses a new line, the new line is replaced with
3384 a space when forming the argument. If the previous line contained an
3385 unterminated quote, the following line inherits the quoted state.
3414 between the beginning of the line and the `#', but whitespace can
3427 * If a line that looks like a directive appears within macro
3449 Traditional preprocessors would only consider a line to be a
3450 directive if the `#' appeared in column 1 on the line. Therefore
3453 first character on the line. It also suggests you hide directives
3542 non-directive line of output is preceded with sufficient spaces
3583 No macro expansion occurs on any `#pragma' directive line, so the
3640 * Number of characters on a logical source line.
3679 define them with preprocessing directives or command-line options.
3724 which was specified on the `#unassert' line; other answers for that
3733 You can also make or cancel assertions using command line options.
3846 * `#line' and `#include'
3848 The `#line' directive used to change GCC's notion of the
3851 *Note Line Control::, for further explanation.
3853 * Syntax of `#line'
3855 In GCC 2.95 and previous, the string constant argument to `#line'
3882 actual work. Their command line interfaces are similar but not
3917 If you wish to define a function-like macro on the command line,
3924 the command line. All `-imacros FILE' and `-include FILE' options
3969 (`??/' at the end of a line) can, by changing where the comment
3998 Built-in macros, macros defined on the command line, and macros
4054 `-imacros' command line options.
4236 Process FILE as if `#include "file"' appeared as the first line of
4244 in the order they appear on the command line.
4310 With `-fpreprocessed', predefinition of command line and most
4344 appear on the line. If the value is less than 1 or greater than
4365 overridden by either the locale or this command line option.
4366 Currently the command line option takes precedence if there's a
4382 command line, this option has no effect, since no `#line'
4450 directive line have the effect of turning that line into an
4451 ordinary source line, since the first token on the line is no
4463 source line.
4480 Print text describing all the command line options instead of
4528 on the command line. This environment variable is used regardless
4534 after any paths given with `-isystem' options on the command line.
4983 Texts, replace the "with...Texts." line with this:
5007 * #assert: Assertions. (line 41)
5008 * #define: Object-like Macros. (line 11)
5009 * #elif: Elif. (line 6)
5010 * #else: Else. (line 6)
5011 * #endif: Ifdef. (line 6)
5012 * #error: Diagnostics. (line 6)
5013 * #ident: Other Directives. (line 6)
5014 * #if: Conditional Syntax. (line 6)
5015 * #ifdef: Ifdef. (line 6)
5016 * #ifndef: Ifdef. (line 40)
5018 (line 10)
5019 * #include: Include Syntax. (line 6)
5020 * #include_next: Wrapper Headers. (line 6)
5021 * #line: Line Control. (line 20)
5022 * #pragma GCC dependency: Pragmas. (line 53)
5023 * #pragma GCC poison: Pragmas. (line 65)
5024 * #pragma GCC system_header <1>: Pragmas. (line 92)
5025 * #pragma GCC system_header: System Headers. (line 31)
5026 * #sccs: Other Directives. (line 6)
5027 * #unassert: Assertions. (line 52)
5029 (line 6)
5030 * #warning: Diagnostics. (line 27)
5038 CPP's command line options and environment variables are indexed here
5044 line 525)
5045 * ansi: Invocation. (line 311)
5046 * C: Invocation. (line 577)
5048 (line 16)
5050 (line 15)
5052 (line 17)
5053 * D: Invocation. (line 39)
5054 * dD: Invocation. (line 557)
5056 (line 44)
5057 * dI: Invocation. (line 566)
5058 * dM: Invocation. (line 541)
5059 * dN: Invocation. (line 563)
5060 * fdirectives-only: Invocation. (line 433)
5061 * fdollars-in-identifiers: Invocation. (line 455)
5062 * fexec-charset: Invocation. (line 482)
5063 * fextended-identifiers: Invocation. (line 458)
5064 * finput-charset: Invocation. (line 495)
5065 * fno-show-column: Invocation. (line 520)
5066 * fno-working-directory: Invocation. (line 505)
5067 * fpreprocessed: Invocation. (line 463)
5068 * ftabstop: Invocation. (line 476)
5069 * fwide-exec-charset: Invocation. (line 487)
5070 * fworking-directory: Invocation. (line 505)
5071 * H: Invocation. (line 622)
5072 * help: Invocation. (line 614)
5073 * I: Invocation. (line 71)
5074 * I-: Invocation. (line 348)
5075 * idirafter: Invocation. (line 390)
5076 * imacros: Invocation. (line 381)
5077 * imultilib: Invocation. (line 413)
5078 * include: Invocation. (line 370)
5079 * iprefix: Invocation. (line 397)
5080 * iquote: Invocation. (line 425)
5081 * isysroot: Invocation. (line 409)
5082 * isystem: Invocation. (line 417)
5083 * iwithprefix: Invocation. (line 403)
5084 * iwithprefixbefore: Invocation. (line 403)
5085 * M: Invocation. (line 183)
5086 * MD: Invocation. (line 272)
5087 * MF: Invocation. (line 218)
5088 * MG: Invocation. (line 227)
5089 * MM: Invocation. (line 208)
5090 * MMD: Invocation. (line 288)
5091 * MP: Invocation. (line 237)
5092 * MQ: Invocation. (line 263)
5093 * MT: Invocation. (line 249)
5094 * nostdinc: Invocation. (line 360)
5095 * nostdinc++: Invocation. (line 365)
5096 * o: Invocation. (line 82)
5098 (line 18)
5099 * P: Invocation. (line 570)
5100 * pedantic: Invocation. (line 173)
5101 * pedantic-errors: Invocation. (line 178)
5102 * remap: Invocation. (line 609)
5103 * std=: Invocation. (line 311)
5105 (line 60)
5106 * target-help: Invocation. (line 614)
5107 * traditional-cpp: Invocation. (line 602)
5108 * trigraphs: Invocation. (line 606)
5109 * U: Invocation. (line 62)
5110 * undef: Invocation. (line 66)
5111 * v: Invocation. (line 618)
5112 * version: Invocation. (line 631)
5113 * w: Invocation. (line 169)
5114 * Wall: Invocation. (line 88)
5115 * Wcomment: Invocation. (line 96)
5116 * Wcomments: Invocation. (line 96)
5117 * Wendif-labels: Invocation. (line 146)
5118 * Werror: Invocation. (line 159)
5119 * Wimport: Invocation. (line 119)
5120 * Wsystem-headers: Invocation. (line 163)
5121 * Wtraditional: Invocation. (line 113)
5122 * Wtrigraphs: Invocation. (line 101)
5123 * Wundef: Invocation. (line 122)
5124 * Wunused-macros: Invocation. (line 127)
5125 * x: Invocation. (line 295)
5136 * # operator: Stringification. (line 6)
5137 * ## operator: Concatenation. (line 6)
5138 * _Pragma: Pragmas. (line 25)
5139 * alternative tokens: Tokenization. (line 106)
5140 * arguments: Macro Arguments. (line 6)
5141 * arguments in macro definitions: Macro Arguments. (line 6)
5142 * assertions: Assertions. (line 6)
5143 * assertions, canceling: Assertions. (line 52)
5144 * backslash-newline: Initial processing. (line 61)
5145 * block comments: Initial processing. (line 77)
5146 * C++ named operators: C++ Named Operators. (line 6)
5147 * character constants: Tokenization. (line 85)
5148 * character set, execution: Invocation. (line 482)
5149 * character set, input: Invocation. (line 495)
5150 * character set, wide execution: Invocation. (line 487)
5151 * command line: Invocation. (line 6)
5152 * commenting out code: Deleted Code. (line 6)
5153 * comments: Initial processing. (line 77)
5155 (line 6)
5156 * computed includes: Computed Includes. (line 6)
5157 * concatenation: Concatenation. (line 6)
5158 * conditional group: Ifdef. (line 14)
5159 * conditionals: Conditionals. (line 6)
5160 * continued lines: Initial processing. (line 61)
5161 * controlling macro: Once-Only Headers. (line 35)
5162 * defined: Defined. (line 6)
5164 (line 45)
5165 * dependencies, make: Invocation. (line 183)
5166 * diagnostic: Diagnostics. (line 6)
5168 (line 6)
5169 * digraphs: Tokenization. (line 106)
5170 * directive line: The preprocessing language.
5171 (line 6)
5173 (line 6)
5175 (line 6)
5176 * empty macro arguments: Macro Arguments. (line 66)
5178 (line 6)
5179 * expansion of arguments: Argument Prescan. (line 6)
5181 (line 6)
5183 (line 6)
5184 * grouping options: Invocation. (line 34)
5185 * guard macro: Once-Only Headers. (line 35)
5186 * header file: Header Files. (line 6)
5187 * header file names: Tokenization. (line 85)
5188 * identifiers: Tokenization. (line 34)
5190 (line 6)
5192 (line 6)
5193 * including just once: Once-Only Headers. (line 6)
5194 * invocation: Invocation. (line 6)
5195 * iso646.h: C++ Named Operators. (line 6)
5196 * line comments: Initial processing. (line 77)
5197 * line control: Line Control. (line 6)
5198 * line endings: Initial processing. (line 14)
5199 * linemarkers: Preprocessor Output. (line 28)
5200 * macro argument expansion: Argument Prescan. (line 6)
5202 (line 6)
5203 * macros in include: Computed Includes. (line 6)
5204 * macros with arguments: Macro Arguments. (line 6)
5205 * macros with variable arguments: Variadic Macros. (line 6)
5206 * make: Invocation. (line 183)
5207 * manifest constants: Object-like Macros. (line 6)
5208 * named operators: C++ Named Operators. (line 6)
5210 (line 6)
5211 * null directive: Other Directives. (line 15)
5212 * numbers: Tokenization. (line 61)
5213 * object-like macro: Object-like Macros. (line 6)
5214 * options: Invocation. (line 38)
5215 * options, grouping: Invocation. (line 34)
5216 * other tokens: Tokenization. (line 120)
5217 * output format: Preprocessor Output. (line 12)
5218 * overriding a header file: Wrapper Headers. (line 6)
5220 (line 6)
5221 * pitfalls of macros: Macro Pitfalls. (line 6)
5222 * predefined macros: Predefined Macros. (line 6)
5224 (line 6)
5225 * predicates: Assertions. (line 19)
5227 (line 6)
5228 * preprocessing numbers: Tokenization. (line 61)
5229 * preprocessing tokens: Tokenization. (line 6)
5230 * prescan of macro arguments: Argument Prescan. (line 6)
5231 * problems with macros: Macro Pitfalls. (line 6)
5232 * punctuators: Tokenization. (line 106)
5234 (line 6)
5235 * repeated inclusion: Once-Only Headers. (line 6)
5236 * reporting errors: Diagnostics. (line 6)
5237 * reporting warnings: Diagnostics. (line 6)
5239 (line 6)
5241 (line 6)
5243 (line 6)
5245 (line 6)
5247 (line 6)
5248 * string constants: Tokenization. (line 85)
5249 * string literals: Tokenization. (line 85)
5250 * stringification: Stringification. (line 6)
5251 * symbolic constants: Object-like Macros. (line 6)
5252 * system header files <1>: System Headers. (line 6)
5253 * system header files: Header Files. (line 13)
5255 (line 6)
5256 * testing predicates: Assertions. (line 30)
5257 * token concatenation: Concatenation. (line 6)
5258 * token pasting: Concatenation. (line 6)
5259 * tokens: Tokenization. (line 6)
5260 * trigraphs: Initial processing. (line 32)
5262 (line 6)
5264 (line 6)
5265 * variable number of arguments: Variadic Macros. (line 6)
5266 * variadic macros: Variadic Macros. (line 6)
5267 * wrapper #ifndef: Once-Only Headers. (line 6)
5268 * wrapper headers: Wrapper Headers. (line 6)
5322 Node: Line Control119940