cparser man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

CPARSER(1)		  BSD General Commands Manual		    CPARSER(1)

NAME
     cparser — C compiler

SYNOPSIS
     cparser [-c | -S | -E | --print-ast] [--print-implicit-cast]
	     [--print-parenthesis] [-ansi] [-std=standard] [--[no-]gcc]
	     [--[no-]ms] [-g] [-Olevel] [-W[no-][error=]warning] [-w] [-I dir]
	     [-L dir] [-Dmacro[=defn]] [-Umacro] [-f option]
	     [-finput-charset=encoding] [-b option] [-l library] [-o outfile]
	     [-x language] [-Wl,option] [-Wp,option] file ...

DESCRIPTION
     cparser is a C compiler, which can parse C90 and C99 as well as many GCC
     and some MSC extensions.  It also provides many useful analyses for warn‐
     ings and generates concise messages in case of error.  It uses libFIRM
     for optimization and code generation.  The compiler driver is largely
     compatible with GCC.

OPTIONS
     -c		 Compile the input files to object files.  The default output
		 filename is the input filename with the extension replaced by
		 .o.

     -S		 Compile the input files to assembler.	The default output
		 filename is the input filename with the extension replaced by
		 .s.

     -E		 Preprocess the input file only.  By default the result is
		 output to stdout.

     --print-ast
		 Output the abstract syntax tree of the parsed input file as C
		 again.

     --print-implicit-cast
		 When using --print-ast, show casts, which are inserted by the
		 semantic checks.

     --print-parenthesis
		 When using --print-ast, show all expressions fully parenthe‐
		 sized.

     -ansi	 Same as -std=c90 (for C) or -std=c++98 (for C++).

     -std=standard
		 Select the language standard.	Supported values are:
		 c89
		 c90
		 iso9899:1990  ISO C90
		 gnu89	       ISO C90 with GCC extensions
		 c99
		 iso9899:1999  ISO C99
		 gnu99	       ISO C99 with GCC extensions
		 c11
		 iso9899:2011  ISO C11
		 gnu11	       ISO C11 with GCC extensions
		 c++98	       ISO C++ 1998.  Not supported yet.
		 gnu++98       ISO C++ 1998 with GCC extensions.  Not sup‐
			       ported yet.

     --[no-]gcc	 Disable/enable GCC extensions.	 This switch supersedes -std.

     --[no-]ms	 Disable/enable MSC extensions.

     -g		 When compiling C files, add debug information in stabs for‐
		 mat.

     -Olevel	 Select the optimization level.	 Sensible values are between 0
		 and 4, inclusive.

     -Wwarning	 Enable the specified warning.

     -Wno-warning
		 Disable the specified warning.

     -Werror=warning
		 Enable the specified warning and turn it into an error.

     -Wno-error=warning
		 Force the specified warning to only be a warning, even in the
		 presence of -Werror.  This neither enables nor disables the
		 warning itself.

     -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.

     -Waggregate-return
		 Warn about defining or calling a function, which returns a
		 struct or union by value.

     -Wall	 Activate most warnings.  In particular these are -Waddress,
		 -Wattribute, -Wchar-subscripts, -Wcomment, -Wempty-statement,
		 -Wformat, -Wimplicit-function-declaration, -Wimplicit-int,
		 -Winit-self, -Wmain, -Wnonnull, -Wparentheses,
		 -Wpointer-arith, -Wredundant-decls, -Wreturn-type,
		 -Wshadow-local, -Wsign-compare, -Wstrict-prototypes,
		 -Wswitch-enum, -Wunknown-pragmas, -Wunreachable-code,
		 -Wunused-function, -Wunused-label, -Wunused-parameter,
		 -Wunused-value, -Wunused-variable.

     -Wcast-qual
		 Warn whenever a pointer cast removes qualifiers from the
		 pointed-to type, e.g. casting a const char* to char*.

     -Wchar-subscripts
		 Warn about using an expression of type char as array sub‐
		 script, e.g. char c; arr[c].

     -Wdeclaration-after-statement
		 Warn about mixing declarations and statements, which is not
		 allowed prior to C99.

     -Wdiv-by-zero
		 Warn about compile-time integer division by zero.

     -Wempty-statement
		 Warn about empty statements, i.e. statements which only con‐
		 sist of a single ‘;’.	Use {} as replacement to avoid this
		 warning.

     -Werror	 Treat warnings as errors, i.e. do not continue after parsing
		 when a warning is encountered.

     -Wextra	 (Alias -W) Activate some more warnings.  In particular these
		 are -Wempty-statement, -Wshadow, -Wunused-parameter,
		 -Wunused-value.

     -Wfatal-errors
		 Immediately abort compilation when encountering an error.

     -Wformat	 Check format strings of char and wchar_t functions.

     -Wimplicit	 Activate -Wimplicit-function-declaration, -Wimplicit-int.

     -Wimplicit-function-declaration
		 Warn about calling a function without a prior declaration.

     -Wimplicit-int
		 Warn about declarations whose declaration specifiers do not
		 include a type specifier.

     -Winit-self
		 Warn about uninitialized variables which are initialized with
		 themselves.

     -Wlong-long
		 Warn if the type ‘long long’ is used.

     -Wmain	 Warn if the type of ‘main’ is suspicious, i.e. if it is not a
		 non-static function declared as either int main(void),
		 int main(int, char**) or, as an extension,
		 int main(int, char**, char**).

     -Wmissing-declarations
		 Warn if a non-static function or a global variable without a
		 storage class is defined without a prior declaration.	This
		 is typically a sign of a missing #include or that the object
		 should be static.

     -Wmissing-noreturn
		 Warn about functions, which are candidates for the attribute
		 ‘noreturn’.

     -Wmissing-prototypes
		 Warn if a global function is defined without a previous pro‐
		 totype declaration.

     -Wmultichar
		 Warn if a multicharacter constant (‘FOOF’) is used.

     -Wnested-externs
		 Warn if an ‘extern’ declaration is encountered within a func‐
		 tion.

     -Wparentheses
		 Warn if parentheses are omitted in certain contexts.  Warn if
		 an assignment is used as condition, e.g. if (x = 23).	Warn
		 if && without parentheses is used within ||, e.g.
		 if (x || y && z).  Warn if it there may be confusion which
		 ‘if’-statement an ‘else’-branch belongs to, e.g.
		 if (x) if (y) {} else {}.  Warn if cascaded comparisons
		 appear which do not have their mathematical meaning, e.g.
		 if (23 <= x < 42).  Warn if + or - is used as operand of <<
		 or >>, e.g. x + y << z.

     -Wredundant-decls
		 Warn about redundant declarations, i.e. multiple declarations
		 of the same object or static forward declarations which have
		 no use before their definition.

     -Wshadow	 Warn when a new declaration shadows another declaration with
		 the same name in an outer scope.

     -Wshadow-local
		 Like -Wshadow, but only warn if the shadowed declaration is
		 not global, e.g. a local variable shadows a parameter or
		 another local variable.

     -Wunreachable-code
		 Warn when the compiler determines that a statement (or in
		 some cases a part thereof) will never be executed.

     -Wunused	 Activate -Wunused-function, -Wunused-label,
		 -Wunused-parameter, -Wunused-value, -Wunused-variable.

     -Wunused-parameter
		 Warn when a parameter is never used or only ever read to cal‐
		 culate its own new value, e.g. x = x + 1.

     -Wunused-variable
		 Warn when a variable is never used or only ever read to cal‐
		 culate its own new value, e.g. x = x + 1.

     -w		 Suppress all warnings.

     -I dir	 Add the directory dir to the paths to be searched for include
		 files.

     -L dir	 Add the directory dir to the paths to be searched for
		 libraries.

     -Dmacro	 Define the preprocessor macro macro which will expand to 1.

     -Dmacro=defn
		 Define the preprocessor macro macro and set its expanded
		 value to defn.

     -Umacro	 Undefine the preprocessor macro macro.

     -f option	 Set a frontend or optimizer option.  Use -fhelp to get a list
		 of supported optimizer options.

     -f[no-]diagnostics-show-option
		 Show the switch, which controls a warning, after each warn‐
		 ing.  Default is on.

     -finput-charset=encoding
		 Select the encoding of the input.  Supported values are
		 ISO_8859-1:1987 (aliases CP819, IBM819, ISO-8859-1,
		 ISO8859-1, ISO_8859-1, csISOLatin1, iso-ir-100, l1 and
		 latin1), ISO-8859-15 (aliases ISO8859-15, ISO_8859-15 and
		 Latin-9), windows-1252 (alias cp1252) and UTF-8 (default).
		 Case is ignored.

     -f[no-]show-column
		 Show the column number in diagnostic messages.

     -fsigned-char
		 Define ‘char’ to have the same range, representation and be‐
		 haviour as ‘signed char’.

     -funsigned-char
		 Define ‘char’ to have the same range, representation and be‐
		 haviour as ‘unsigned char’.

     -b option	 Set a backend option.	Use -bhelp to get a list of supported
		 options.

     -l library	 Link with the specified library.

     -o outfile	 Specify the output filename.  This is only valid when using a
		 single input filename.	 - as filename uses stdout for output.

     -x language
		 Overwrite the language auto-detection for the following file‐
		 names by the specified language.  Supported values are:
		 assembler	     Assembler file
		 assembler-with-cpp  Assembler file, which needs to be prepro‐
				     cessed
		 c
		 c-header	     C file
		 c++
		 c++-header	     C++ file
		 none		     Revert to auto-detection

     -Wl,option	 Pass option to the linker.

     -Wp,option	 Pass option to the preprocessor.

SEE ALSO
     gcc(1), http://www.libfirm.org/

BUGS
     Probably many - if you hit one, please report it.

     cparser needs to support more switches for better GCC compatibility.

     This manual page is incomplete.

AUTHORS
     cparser was written by Matthias Braun ⟨matze@braunis.de⟩, Christoph
     Mallon ⟨christoph.mallon@gmx.de⟩ and Michael Beck.

				 July 9, 2012
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net