Process the inner statement of a case label, even if the case range is empty.
[cparser] / cparser.1
index 5f103d9..0eb7a6e 100644 (file)
--- a/cparser.1
+++ b/cparser.1
@@ -1,5 +1,5 @@
 .\" Please adjust this date whenever revising the manpage.
 .\" Please adjust this date whenever revising the manpage.
-.Dd December 21, 2008
+.Dd July 9, 2012
 .Dt CPARSER 1
 .Sh NAME
 .Nm cparser
 .Dt CPARSER 1
 .Sh NAME
 .Nm cparser
@@ -9,12 +9,13 @@
 .Op Fl c | S | E | -print-ast
 .Op Fl -print-implicit-cast
 .Op Fl -print-parenthesis
 .Op Fl c | S | E | -print-ast
 .Op Fl -print-implicit-cast
 .Op Fl -print-parenthesis
+.Op Fl ansi
 .Op Fl std= Ns Ar standard
 .Op Fl - Ns Oo Cm no- Oc Ns Cm gcc
 .Op Fl - Ns Oo Cm no- Oc Ns Cm ms
 .Op Fl g
 .Op Fl O Ns Ar level
 .Op Fl std= Ns Ar standard
 .Op Fl - Ns Oo Cm no- Oc Ns Cm gcc
 .Op Fl - Ns Oo Cm no- Oc Ns Cm ms
 .Op Fl g
 .Op Fl O Ns Ar level
-.Op Fl W Ns Oo Cm no- Oc Ns Ar warn
+.Op Fl W Ns Oo Cm no- Oc Ns Oo Cm error= Oc Ns Ar warning
 .Op Fl w
 .Op Fl I Ar dir
 .Op Fl L Ar dir
 .Op Fl w
 .Op Fl I Ar dir
 .Op Fl L Ar dir
@@ -56,11 +57,14 @@ show casts, which are inserted by the semantic checks.
 When using
 .Fl -print-ast ,
 show all expressions fully parenthesized.
 When using
 .Fl -print-ast ,
 show all expressions fully parenthesized.
+.It Fl ansi
+Same as -std=c90 (for C) or -std=c++98 (for C++).
 .It Fl std= Ns Ar standard
 Select the language standard.
 Supported values are:
 .Bl -tag -compact -width "iso9899:1990"
 .It Cm c89
 .It Fl std= Ns Ar standard
 Select the language standard.
 Supported values are:
 .Bl -tag -compact -width "iso9899:1990"
 .It Cm c89
+.It Cm c90
 .It Cm iso9899:1990
 ISO C90
 .It Cm gnu89
 .It Cm iso9899:1990
 ISO C90
 .It Cm gnu89
@@ -70,6 +74,11 @@ ISO C90 with GCC extensions
 ISO C99
 .It Cm gnu99
 ISO C99 with GCC extensions
 ISO C99
 .It Cm gnu99
 ISO C99 with GCC extensions
+.It Cm c11
+.It Cm iso9899:2011
+ISO C11
+.It Cm gnu11
+ISO C11 with GCC extensions
 .It Cm c++98
 ISO C++ 1998.
 Not supported yet.
 .It Cm c++98
 ISO C++ 1998.
 Not supported yet.
@@ -91,12 +100,17 @@ format.
 .\" TODO expand
 Select the optimization level.
 Sensible values are between 0 and 4, inclusive.
 .\" TODO expand
 Select the optimization level.
 Sensible values are between 0 and 4, inclusive.
-.It Fl W Ns Oo Cm no- Oc Ns Ar warn
 .\" TODO expand
 .\" TODO expand
-Disable/enable a specific warning.
-Every warning option has a corresponding
-.Cm no-
-switch to deactivate it.
+.It Fl W Ns Ar warning
+Enable the specified warning.
+.It Fl Wno- Ns Ar warning
+Disable the specified warning.
+.It Fl Werror= Ns Ar warning
+Enable the specified warning and turn it into an error.
+.It Fl Wno-error= Ns Ar warning
+Force the specified warning to only be a warning, even in the presence of
+.Fl Werror .
+This neither enables nor disables the warning itself.
 .It Fl Waddress
 Warn about suspicious use of addresses, like using the address of a function or variable as boolean condition or comparing with the address of a string literal.
 .It Fl Waggregate-return
 .It Fl Waddress
 Warn about suspicious use of addresses, like using the address of a function or variable as boolean condition or comparing with the address of a string literal.
 .It Fl Waggregate-return
@@ -119,7 +133,7 @@ In particular these are
 .Fl Wpointer-arith ,
 .Fl Wredundant-decls ,
 .Fl Wreturn-type ,
 .Fl Wpointer-arith ,
 .Fl Wredundant-decls ,
 .Fl Wreturn-type ,
-.Fl Wshadow ,
+.Fl Wshadow-local ,
 .Fl Wsign-compare ,
 .Fl Wstrict-prototypes ,
 .Fl Wswitch-enum ,
 .Fl Wsign-compare ,
 .Fl Wstrict-prototypes ,
 .Fl Wswitch-enum ,
@@ -144,12 +158,13 @@ Warn about empty statements, i.e. statements which only consist of a single
 Use {} as replacement to avoid this warning.
 .It Fl Werror
 Treat warnings as errors, i.e. do not continue after parsing when a warning is encountered.
 Use {} as replacement to avoid this warning.
 .It Fl Werror
 Treat warnings as errors, i.e. do not continue after parsing when a warning is encountered.
-.It Fl Werror-implicit-function-declaration
-Generate an error, when calling a function without a prior declaration.
 .It Fl Wextra
 .It Fl Wextra
+(Alias
+.Fl W Ns )
 Activate some more warnings.
 In particular these are
 .Fl Wempty-statement ,
 Activate some more warnings.
 In particular these are
 .Fl Wempty-statement ,
+.Fl Wshadow ,
 .Fl Wunused-parameter ,
 .Fl Wunused-value .
 .It Fl Wfatal-errors
 .Fl Wunused-parameter ,
 .Fl Wunused-value .
 .It Fl Wfatal-errors
@@ -205,6 +220,10 @@ Warn if + or - is used as operand of << or >>, e.g. x\ +\ y\ <<\ z.
 Warn about redundant declarations, i.e. multiple declarations of the same object or static forward declarations which have no use before their definition.
 .It Fl Wshadow
 Warn when a new declaration shadows another declaration with the same name in an outer scope.
 Warn about redundant declarations, i.e. multiple declarations of the same object or static forward declarations which have no use before their definition.
 .It Fl Wshadow
 Warn when a new declaration shadows another declaration with the same name in an outer scope.
+.It Fl Wshadow-local
+Like
+.Fl Wshadow ,
+but only warn if the shadowed declaration is not global, e.g. a local variable shadows a parameter or another local variable.
 .It Fl Wunreachable-code
 Warn when the compiler determines that a statement (or in some cases a part thereof) will never be executed.
 .It Fl Wunused
 .It Fl Wunreachable-code
 Warn when the compiler determines that a statement (or in some cases a part thereof) will never be executed.
 .It Fl Wunused
@@ -245,6 +264,9 @@ Set a frontend or optimizer option.
 Use
 .Fl fhelp
 to get a list of supported optimizer options.
 Use
 .Fl fhelp
 to get a list of supported optimizer options.
+.It Fl f Ns Oo Cm no- Oc Ns Cm diagnostics-show-option
+Show the switch, which controls a warning, after each warning.
+Default is on.
 .It Fl finput-charset= Ns Ar encoding
 Select the encoding of the input.
 Supported values are
 .It Fl finput-charset= Ns Ar encoding
 Select the encoding of the input.
 Supported values are
@@ -267,10 +289,16 @@ and
 .Cm ISO_8859-15
 and
 .Cm Latin-9 Ns
 .Cm ISO_8859-15
 and
 .Cm Latin-9 Ns
+),
+.Cm windows-1252
+(alias
+.Cm cp1252 Ns
 ) and
 .Cm UTF-8
 (default).
 Case is ignored.
 ) and
 .Cm UTF-8
 (default).
 Case is ignored.
+.It Fl f Ns Oo Cm no- Oc Ns Cm show-column
+Show the column number in diagnostic messages.
 .It Fl fsigned-char
 Define
 .Sq char
 .It Fl fsigned-char
 Define
 .Sq char