CPP(1) CPP(1) NAME cpp - C language preprocessor SYNOPSIS cpp [ option ... ] [ ifile [ ofile ] ] DESCRIPTION Cpp interprets ANSI C preprocessor directives and does macro substitution. The input ifile and output ofile default to standard input and standard output respectively. The options are: -Dname -Dname=def -Idir Same as in 2c(1): add dir to the search for directives. -M Generate no output except a list of include files in a form suitable for specifying dependencies to mk(1). Use twice to list files in angle brackets. -N Turn off default include directories. All must be specified with -I, or in the environment variable include. Without this option, /$objtype/include and /sys/include are used as the last two searched directo- ries for include directives, where $objtype is read from the environment. -V Print extra debugging information. -P Do not insert ``#line'' directives into the output. -+ Understand C++ comments. -i Print the list of directories searched when #include is found. Last listed are searched first. In the absence of the -P option, the processed text output is sprinkled with lines that show the original input line numbering: #line linenumber "ifile" The command reads the environment variable include and adds its (blank-separated) list of directories to the standard search path for directives. They are looked at before any directories specified with -I, which are looked at before the default directories. Page 1 Plan 9 (printed 12/26/24) CPP(1) CPP(1) The input language is as described in the ANSI C standard. The standard Plan 9 C compilers do not use cpp; they contain their own simple but adequate preprocessor, so cpp is usu- ally superfluous. FILES /sys/include directory for machine-independent include files /$objtype/include directory for machine-dependent include files SOURCE /sys/src/cmd/cpp SEE ALSO 2c(1) Page 2 Plan 9 (printed 12/26/24)