glenda.party
term% ls -F
term% cat index.txt
C++(1)                      General Commands Manual                     C++(1)



NAME
       c++/2c,  c++/kc,  c++/vc,  c++/8c, c++/2l, c++/kl, c++/vl, c++/8l - C++
       compilers and loaders

SYNOPSIS
       c++/2c [options] file ...
       c++/8c [options] file ...
       c++/kc [options] file ...
       c++/vc [options] file ...
       c++/2l [options] file ...
       c++/8l [options] file ...
       c++/kl [options] file ...
       c++/vl [options] file ...

DESCRIPTION
       The c++ compilers, c++/?c, compile the  named  C++  files  into  object
       files  for  the specified architecture (see 2c(1)).  They use cpp(1) as
       the preprocessor, cfront 3.0.1 as the C++ to C translator, and the  ap‐
       propriate  C compiler such as 2c.  The c++ loaders, C++/?l, load object
       files using appropriate object loaders (see 2l(1)) and patch,  the  C++
       static constructor initializer.

       The  compilers and loaders use C++ and APE (ANSI C/POSIX) include files
       and libraries.

       Let the first letter of the base name of the compiler or loader  be  O=
       2, 8, k, or v.

       The compiler options are:

       -d        Don't expand inline functions.

       -o obj    Place  output  in file obj (allowed only if there is just one
                 input file).  Default is to take the last element of the  in‐
                 put path name, strip any trailing .c, and append .O.

       -v        Print  the version number of the compiler and the commands as
                 they are executed.  A second  -v  causes  the  commands  that
                 would  be  executed  to be printed without actually executing
                 them.

       -w        Print warning messages.

       -xfile    Take cross compiling information from file.  By default, this
                 information is taken from /sys/lib/c++/O.sz.

       -A        Complain  about functions used without a new-style ANSI func‐
                 tion prototype.

       -B        Turn off the action of the -A flag.  This option is on by de‐
                 fault.

       -Dname=def
       -Dname    Define  the  name to the preprocessor, as if by If no defini‐
                 tion is given, the name is defined as

       -E        Print the preprocessed version of the file on  standard  out‐
                 put.

       -F        Print  the  preprocessed  and cfronted version of the file on
                 standard output.

       -Idir     files whose names do not begin with are always  sought  first
                 in  the  directory  of the file argument, then in directories
                 named in -I options, then in /$objtype/include/c++,  /sys/in‐
                 clude/c++, /$objtype/include/ape, and /sys/include/ape.

       -O        Perform  object  code optimization.  This option is on by de‐
                 fault.

       -N        Turn off the action of the -O flag.

       -S        Print an assembly language version  of  the  object  code  on
                 standard output.

       -Uname    Remove any initial definition of name.

       -a        Instead of compiling, print on standard output acid functions
                 (see acid(1)) for examining structures declared in the source
                 files.

       The loader options are:

       -o out    Place output in file out.  Default is O.out.

EXAMPLE
       To produce a MIPS executable prog from C++ files main.c, sub.c, and us‐
       ing the task library:

              c++/vc main.c sub.c
              c++/vl -o prog main.v sub.v m.v -ltask

FILES
       /sys/include/c++
              directory for machine-independent #include directives.

       /sys/include/ape
              directory for machine-independent #include directives.

       /$objtype/include/c++
              directory for machine-dependent #include directives.

       /$objtype/include/ape
              directory for machine-dependent #include directives.

       /$objtype/lib/c++
              C++ libraries.

       /$objtype/lib/ape/libap.a
              ANSI C/POSIX library.

       /sys/lib/c++/O.sz
              Cross-compilation information for cfront.

       /$cputype/bin/c++/cfront
              C++ to C translator.

       /$cputype/bin/c++/patch
              C++ static constructor initializer.

SOURCE
       /sys/src/c++

SEE ALSO
       2c(1), 2a(1), 2l(1), db(1), acid(1), cpp(1), mk(1), nm(1), pcc(1)

BUGS
       The task library works only for the MIPS and the SPARC.  The  Interrupt
       class  is  not  yet supported.  The source to the translator is not in‐
       cluded in the distribution.



                                                                        C++(1)