Mercurial > hg > CbC > CbC_gcc
comparison gcc/doc/options.texi @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 84e7813d76e9 |
children |
comparison
equal
deleted
inserted
replaced
131:84e7813d76e9 | 145:1830386684a0 |
---|---|
1 @c Copyright (C) 2003-2018 Free Software Foundation, Inc. | 1 @c Copyright (C) 2003-2020 Free Software Foundation, Inc. |
2 @c This is part of the GCC manual. | 2 @c This is part of the GCC manual. |
3 @c For copying conditions, see the file gcc.texi. | 3 @c For copying conditions, see the file gcc.texi. |
4 | 4 |
5 @node Options | 5 @node Options |
6 @chapter Option specification files | 6 @chapter Option specification files |
218 | 218 |
219 @item Negative(@var{othername}) | 219 @item Negative(@var{othername}) |
220 The option will turn off another option @var{othername}, which is | 220 The option will turn off another option @var{othername}, which is |
221 the option name with the leading ``-'' removed. This chain action will | 221 the option name with the leading ``-'' removed. This chain action will |
222 propagate through the @code{Negative} property of the option to be | 222 propagate through the @code{Negative} property of the option to be |
223 turned off. | 223 turned off. The driver will prune options, removing those that are |
224 turned off by some later option. This pruning is not done for options | |
225 with @code{Joined} or @code{JoinedOrMissing} properties, unless the | |
226 options have either @code{RejectNegative} property or the @code{Negative} | |
227 property mentions an option other than itself. | |
224 | 228 |
225 As a consequence, if you have a group of mutually-exclusive | 229 As a consequence, if you have a group of mutually-exclusive |
226 options, their @code{Negative} properties should form a circular chain. | 230 options, their @code{Negative} properties should form a circular chain. |
227 For example, if options @option{-@var{a}}, @option{-@var{b}} and | 231 For example, if options @option{-@var{a}}, @option{-@var{b}} and |
228 @option{-@var{c}} are mutually exclusive, their respective @code{Negative} | 232 @option{-@var{c}} are mutually exclusive, their respective @code{Negative} |
308 @item Var(@var{var}) | 312 @item Var(@var{var}) |
309 The state of this option should be stored in variable @var{var} | 313 The state of this option should be stored in variable @var{var} |
310 (actually a macro for @code{global_options.x_@var{var}}). | 314 (actually a macro for @code{global_options.x_@var{var}}). |
311 The way that the state is stored depends on the type of option: | 315 The way that the state is stored depends on the type of option: |
312 | 316 |
313 @item Deprecated | 317 @item WarnRemoved |
314 The option is deprecated and every usage of such option will | 318 The option is removed and every usage of such option will |
315 result in a warning. | 319 result in a warning. We use it option backward compatibility. |
320 | |
321 @item Var(@var{var}, @var{set}) | |
322 The option controls an integer variable @var{var} and is active when | |
323 @var{var} equals @var{set}. The option parser will set @var{var} to | |
324 @var{set} when the positive form of the option is used and @code{!@var{set}} | |
325 when the ``no-'' form is used. | |
326 | |
327 @var{var} is declared in the same way as for the single-argument form | |
328 described above. | |
316 | 329 |
317 @itemize @bullet | 330 @itemize @bullet |
318 @item | 331 @item |
319 If the option uses the @code{Mask} or @code{InverseMask} properties, | 332 If the option uses the @code{Mask} or @code{InverseMask} properties, |
320 @var{var} is the integer variable that contains the mask. | 333 @var{var} is the integer variable that contains the mask. |
348 and wasn't given. | 361 and wasn't given. |
349 @end itemize | 362 @end itemize |
350 | 363 |
351 The option-processing script will usually zero-initialize @var{var}. | 364 The option-processing script will usually zero-initialize @var{var}. |
352 You can modify this behavior using @code{Init}. | 365 You can modify this behavior using @code{Init}. |
353 | |
354 @item Var(@var{var}, @var{set}) | |
355 The option controls an integer variable @var{var} and is active when | |
356 @var{var} equals @var{set}. The option parser will set @var{var} to | |
357 @var{set} when the positive form of the option is used and @code{!@var{set}} | |
358 when the ``no-'' form is used. | |
359 | |
360 @var{var} is declared in the same way as for the single-argument form | |
361 described above. | |
362 | 366 |
363 @item Init(@var{value}) | 367 @item Init(@var{value}) |
364 The variable specified by the @code{Var} property should be statically | 368 The variable specified by the @code{Var} property should be statically |
365 initialized to @var{value}. If more than one option using the same | 369 initialized to @var{value}. If more than one option using the same |
366 variable specifies @code{Init}, all must specify the same initializer. | 370 variable specifies @code{Init}, all must specify the same initializer. |
469 @code{Optimization} implies @code{PerFunction}, but options that do not | 473 @code{Optimization} implies @code{PerFunction}, but options that do not |
470 affect executable code generation may use this flag instead, so that the | 474 affect executable code generation may use this flag instead, so that the |
471 option is not taken into account in ways that might affect executable | 475 option is not taken into account in ways that might affect executable |
472 code generation. | 476 code generation. |
473 | 477 |
478 @item Param | |
479 This is an option that is a parameter. | |
480 | |
474 @item Undocumented | 481 @item Undocumented |
475 The option is deliberately missing documentation and should not | 482 The option is deliberately missing documentation and should not |
476 be included in the @option{--help} output. | 483 be included in the @option{--help} output. |
477 | 484 |
478 @item Condition(@var{cond}) | 485 @item Condition(@var{cond}) |