home *** CD-ROM | disk | FTP | other *** search
/ The CDPD Public Domain Collection for CDTV 3 / CDPDIII.bin / pd / programming / gnuc / unix / usr / share / man / cat1 / g++.0 < prev    next >
Encoding:
Text File  |  1992-12-28  |  27.3 KB  |  661 lines

  1.  
  2.  
  3.  
  4. G++(1)                      GNU Tools                      G++(1)
  5.  
  6.  
  7. NNAAMMEE
  8.        g++ - GNU project C++ Compiler (v2 preliminary)
  9.  
  10. SSYYNNOOPPSSIISS
  11.        g++ [[_o_p_t_i_o_n | _f_i_l_e_n_a_m_e ]...
  12.  
  13. DDEESSCCRRIIPPTTIIOONN
  14.        The C and C++ compilers are integrated; gg++++ is a script to
  15.        call ggcccc wwiitthh ooppttiioonnss ttoo  rreeccooggnniizzee  CC++++..   ggcccc  processes
  16.        input  files  through  one or more of four stages: prepro-
  17.        cessing, compilation, assembly,  and  linking.   This  man
  18.        page  contains  full  descriptions  for  _o_n_l_y C++ specific
  19.        aspects of the compiler, though it also contains summaries
  20.        of some general-purpose options.  For a fuller explanation
  21.        of the compiler, see ggcccc(11).
  22.  
  23.        C++ source files use one of the suffixes `..CC',  `..cccc',  or
  24.        `..ccxxxx'; preprocessed C++ files use the suffix `..iiii'.
  25.  
  26. OOPPTTIIOONNSS
  27.        There  are many command-line options, including options to
  28.        control details of optimization, warnings, and code gener-
  29.        ation,  which  are  common  to both ggcccc and gg++++.  For full
  30.        information on all options, see ggcccc(11).
  31.  
  32.        Options must be separate: `--ddrr' is  quite  different  from
  33.        `--dd --rr '.
  34.  
  35.        Most `--ff' and `--WW' options have two contrary forms: --ff_n_a_m_e
  36.        and --ffnnoo--_n_a_m_e (or --WW_n_a_m_e and  --WWnnoo--_n_a_m_e).  Only  the  non-
  37.        default forms are shown here.
  38.  
  39.  
  40.        --cc     Compile  or  assemble  the source files, but do not
  41.               link.  The compiler output is an object file corre-
  42.               sponding to each source file.
  43.  
  44.        --DD_m_a_c_r_o
  45.               Define macro _m_a_c_r_o with the string `11' as its defi-
  46.               nition.
  47.  
  48.        --DD_m_a_c_r_o==_d_e_f_n
  49.               Define macro _m_a_c_r_o as _d_e_f_n.
  50.  
  51.        --EE     Stop after the preprocessing stage; do not run  the
  52.               compiler proper.  The output is preprocessed source
  53.               code, which is sent to the standard output.
  54.  
  55.        ++ee_N    control whether  virtual  function  definitions  in
  56.               classes  are  used  to  generate  code,  or only to
  57.               define interfaces for their callers.  These options
  58.               are  provided  for  compatibility  with  cfront 1.x
  59.               usage; the recommended GNU  C++  usage  is  to  use
  60.               ##pprraaggmmaa   iinntteerrffaaccee   and  ##pprraaggmmaa  iimmpplleemmeennttaattiioonn,
  61.  
  62.  
  63.  
  64. GNU Tools                   27dec1991                           1
  65.  
  66.  
  67.  
  68.  
  69.  
  70. G++(1)                      GNU Tools                      G++(1)
  71.  
  72.  
  73.               instead.
  74.  
  75.               With `++ee00', virtual function definitions in classes
  76.               are  declared  extern; the declaration is used only
  77.               as an interface specification, not to generate code
  78.               for the virtual functions (in this compilation).
  79.  
  80.               With  `++ee11', gg++++ actually generates the code imple-
  81.               menting virtual functions defined in the code,  and
  82.               makes them publicly visible.
  83.  
  84.        --ffaallll--vviirrttuuaall
  85.               When  you use the `--ffaallll--vviirrttuuaall', all member func-
  86.               tions  (except  for   constructor   functions   and
  87.               new/delete  member  operators) declared in the same
  88.               class with a ``method-call''  operator  method  are
  89.               treated  as  virtual  functions of the given class.
  90.               In effect, all of these methods become ``implicitly
  91.               virtual.''
  92.  
  93.               This  does _n_o_t mean that all calls to these methods
  94.               will be made through the internal table of  virtual
  95.               functions.   There  are  some  circumstances  under
  96.               which it is obvious that a call to a given  virtual
  97.               function  can  be made directly, and in these cases
  98.               the calls still go direct.
  99.  
  100.               The effect of making all methods of a class with  a
  101.               declared  `ooppeerraattoorr-->>(())(())' implicitly virtual using
  102.               `--ffaallll--vviirrttuuaall' extends also to all non-constructor
  103.               methods of any class derived from such a class.
  104.  
  105.        --ffddoollllaarrss--iinn--iiddeennttiiffiieerrss
  106.               Permit  the use of `$$' in identifiers.  Traditional
  107.               C allowed the character `$$' to form part of identi-
  108.               fiers;  by  default,  GNU C also allows this.  How-
  109.               ever, ANSI C forbids `$$' in  identifiers,  and  GNU
  110.               C++  also  forbids  it by default on most platforms
  111.               (though on some platforms it's enabled  by  default
  112.               for GNU C++ as well).
  113.  
  114.        --ffeelliiddee--ccoonnssttrruuccttoorrss
  115.               Use  this  option  to  instruct  the compiler to be
  116.               smarter  about  when  it  can  elide  constructors.
  117.               Without this flag, GNU C++ and cfront both generate
  118.               effectively the same code for:
  119.  
  120.               A foo ();
  121.               A x (foo ());   // x initialized by `foo ()', no ctor called
  122.               A y = foo ();   // call to `foo ()' heads to tempo-
  123.               rary,
  124.                               // y is initialized from the tempo-
  125.               rary.
  126.  
  127.  
  128.  
  129.  
  130. GNU Tools                   27dec1991                           2
  131.  
  132.  
  133.  
  134.  
  135.  
  136. G++(1)                      GNU Tools                      G++(1)
  137.  
  138.  
  139.               Note  the difference!  With this flag, GNU C++ ini-
  140.               tializes `yy' directly from the call to ffoooo (()) with-
  141.               out going through a temporary.
  142.  
  143.        --ffeennuumm--iinntt--eeqquuiivv
  144.               Normally  GNU C++ allows conversion of eennuumm to iinntt,
  145.               but not the other way around.  Use this  option  if
  146.               you want GNU C++ to allow conversion of iinntt to eennuumm
  147.               as well.
  148.  
  149.        --ffggnnuu--bbiinnuuttiillss
  150.  
  151.        --ffnnoo--ggnnuu--bbiinnuuttiillss
  152.               `--ffggnnuu--bbiinnuuttiillss ' (the default for  most,  but  not
  153.               all,  platforms)  makes GNU C++ emit extra informa-
  154.               tion for static  initialization  and  finalization.
  155.               This  information  has to be passed from the assem-
  156.               bler to the GNU linker.  Some assemblers won't pass
  157.               this  information;  you  must  either use GNU aass or
  158.               specify the option `--ffnnoo--ggnnuu--bbiinnuuttiillss'.
  159.  
  160.               With `--ffnnoo--ggnnuu--bbiinnuuttiillss', you must use the  program
  161.               ccoolllleecctt (part of the GCC distribution) for linking.
  162.  
  163.        --ffmmeemmooiizzee--llooookkuuppss
  164.  
  165.        --ffssaavvee--mmeemmooiizzeedd
  166.               These flags are used to get the compiler to compile
  167.               programs  faster using heuristics.  They are not on
  168.               by default since they are only effective about half
  169.               the time.  The other half of the time programs com-
  170.               pile more slowly (and take more memory).
  171.  
  172.               The first time the compiler must build a call to  a
  173.               member function (or reference to a data member), it
  174.               must (1) determine  whether  the  class  implements
  175.               member  functions  of  that name; (2) resolve which
  176.               member function to call  (which  involves  figuring
  177.               out  what  sorts  of  type  conversions  need to be
  178.               made); and (3) check the visibility of  the  member
  179.               function  to  the  caller.   All of this adds up to
  180.               slower compilation.  Normally, the  second  time  a
  181.               call  is made to that member function (or reference
  182.               to that data member), it must go through  the  same
  183.               lengthy  process  again.  This means that code like
  184.               this
  185.  
  186.                 cout << "This " << p << " has " << n << " legs.\n";
  187.  
  188.               makes six passes through all three steps.  By using
  189.               a software cache, a ``hit''  significantly  reduces
  190.               this  cost.   Unfortunately, using the cache intro-
  191.               duces another layer of  mechanisms  which  must  be
  192.               implemented,   and  so  incurs  its  own  overhead.
  193.  
  194.  
  195.  
  196. GNU Tools                   27dec1991                           3
  197.  
  198.  
  199.  
  200.  
  201.  
  202. G++(1)                      GNU Tools                      G++(1)
  203.  
  204.  
  205.               `--ffmmeemmooiizzee--llooookkuuppss' enables the software cache.
  206.  
  207.               Because access privileges (visibility)  to  members
  208.               and  member  functions may differ from one function
  209.               context to the next, gg++++  may  need  to  flush  the
  210.               cache. With the `--ffmmeemmooiizzee--llooookkuuppss' flag, the cache
  211.               is flushed after every function that  is  compiled.
  212.               The  `-fsave-memoized'  flag enables the same soft-
  213.               ware cache, but when the compiler  determines  that
  214.               the  context  of  the  last function compiled would
  215.               yield the same access privileges of the next  func-
  216.               tion  to  compile, it preserves the cache.  This is
  217.               most helpful when defining  many  member  functions
  218.               for  the  same  class: with the exception of member
  219.               functions which are friends of other classes,  each
  220.               member  function has exactly the same access privi-
  221.               leges as every other, and the  cache  need  not  be
  222.               flushed.
  223.  
  224.        --ffnnoo--ddeeffaauulltt--iinnlliinnee
  225.               If  `--ffddeeffaauulltt--iinnlliinnee' is enabled then member func-
  226.               tions  defined  inside  class  scope  are  compiled
  227.               inline  by  default;  i.e.,  you  don't need to add
  228.               `iinnlliinnee' in front of the member function name.   By
  229.               popular demand, this option is now the default.  To
  230.               keep GNU C++ from inlining these member  functions,
  231.               specify `--ffnnoo--ddeeffaauulltt--iinnlliinnee'.
  232.  
  233.        --ffnnoo--ssttrriicctt--pprroottoottyyppee
  234.               Consider the declaration iinntt ffoooo (());;.  In C++, this
  235.               means that the function ffoooo takes no arguments.  In
  236.               ANSI  C, this is declared iinntt ffoooo((vvooiidd));;.  With the
  237.               flag `--ffnnoo--ssttrriicctt--pprroottoottyyppee',  declaring  functions
  238.               with  no  arguments  is equivalent to declaring its
  239.               argument list to be untyped, i.e., iinntt ffoooo  (());;  is
  240.               equivalent to saying iinntt ffoooo ((......));;.
  241.  
  242.        --ffnnoonnnnuullll--oobbjjeeccttss
  243.               Normally,  GNU  C++  makes conservative assumptions
  244.               about  objects  reached  through  references.   For
  245.               example,  the  compiler  must check that `aa' is not
  246.               null in code like the following:
  247.                   obj &a = g ();
  248.                   a.f (2);
  249.               Checking that references of this sort have non-null
  250.               values  requires  extra  code,  however,  and it is
  251.               unnecessary  for  many  programs.   You   can   use
  252.               `--ffnnoonnnnuullll--oobbjjeeccttss' to omit the checks for null, if
  253.               your program doesn't require the default  checking.
  254.  
  255.        --fftthhiiss--iiss--vvaarriiaabbllee
  256.               The  incorporation  of user-defined free store man-
  257.               agement into C++ has made  assignment  to  tthhiiss  an
  258.               anachronism.   Therefore, by default GNU C++ treats
  259.  
  260.  
  261.  
  262. GNU Tools                   27dec1991                           4
  263.  
  264.  
  265.  
  266.  
  267.  
  268. G++(1)                      GNU Tools                      G++(1)
  269.  
  270.  
  271.               the type of tthhiiss in a member function of ccllaassss XX to
  272.               be  XX  **ccoonnsstt.   In  other  words, it is illegal to
  273.               assign to tthhiiss  within  a  class  member  function.
  274.               However,   for  backwards  compatibility,  you  can
  275.               invoke    the     old     behavior     by     using
  276.               `--fftthhiiss--iiss--vvaarriiaabbllee'.
  277.  
  278.        --gg     Produce debugging information in the operating sys-
  279.               tem's native format (for DBX or SDB or DWARF).  GDB
  280.               also  can work with this debugging information.  On
  281.               most systems that use DBX format, `--gg' enables  use
  282.               of  extra  debugging  information that only GDB can
  283.               use.
  284.  
  285.               Unlike most other C compilers, GNU CC allows you to
  286.               use  `--gg'  with `--OO'.  The shortcuts taken by opti-
  287.               mized  code  may  occasionally  produce  surprising
  288.               results:  some variables you declared may not exist
  289.               at all; flow of control may briefly move where  you
  290.               did  not expect it; some statements may not be exe-
  291.               cuted because  they  compute  constant  results  or
  292.               their  values were already at hand; some statements
  293.               may execute in different places because  they  were
  294.               moved out of loops.
  295.  
  296.               Nevertheless  it proves possible to debug optimized
  297.               output.  This makes it reasonable to use the  opti-
  298.               mizer for programs that might have bugs.
  299.  
  300.        --II_d_i_r    Append  directory  _d_i_r to the list of directories
  301.               searched for include files.
  302.  
  303.        --LL_d_i_r   Add directory _d_i_r to the list of directories to be
  304.               searched for `--ll'.
  305.  
  306.        --ll_l_i_b_r_a_r_y
  307.                 Use the library named _l_i_b_r_a_r_y when linking.  (C++
  308.               programs often require `-lg++' for successful link-
  309.               ing.)
  310.  
  311.        --OO     Optimize.   Optimizing  compilation  takes somewhat
  312.               more time, and a lot more memory for a large  func-
  313.               tion.
  314.  
  315.               Without  `--OO', the compiler's goal is to reduce the
  316.               cost of compilation and to make  debugging  produce
  317.               the  expected results.  Statements are independent:
  318.               if you stop the program with a  breakpoint  between
  319.               statements,  you can then assign a new value to any
  320.               variable or change the program counter to any other
  321.               statement  in  the  function  and  get  exactly the
  322.               results you would expect from the source code.
  323.  
  324.               Without `--OO', only variables declared rreeggiisstteerr  are
  325.  
  326.  
  327.  
  328. GNU Tools                   27dec1991                           5
  329.  
  330.  
  331.  
  332.  
  333.  
  334. G++(1)                      GNU Tools                      G++(1)
  335.  
  336.  
  337.               allocated  in  registers.   The  resulting compiled
  338.               code is a little worse than produced by PCC without
  339.               `--OO'.
  340.  
  341.               With  `--OO',  the compiler tries to reduce code size
  342.               and execution time.
  343.  
  344.        --oo _f_i_l_e
  345.                Place output in file _f_i_l_e.
  346.  
  347.        --SS     Stop after the stage of compilation proper; do  not
  348.               assemble.  The output is an assembler code file for
  349.               each non-assembler input file specified.
  350.  
  351.        --ssttaattiicc
  352.               On systems that support dynamic linking, this  pre-
  353.               vents  linking with the shared libraries.  On other
  354.               systems, this option has no effect.
  355.  
  356.        --ttrraaddiittiioonnaall
  357.               Attempt to support some aspects  of  traditional  C
  358.               compilers.
  359.  
  360.               Specifically, for both C and C++ programs:
  361.  
  362.           o   In the preprocessor, comments convert to nothing at
  363.               all, rather than to a space.   This  allows  tradi-
  364.               tional token concatenation.
  365.  
  366.           o   In the preprocessor, macro arguments are recognized
  367.               within string constants in a macro definition  (and
  368.               their  values are stringified, though without addi-
  369.               tional quote marks, when they appear in such a con-
  370.               text).   The preprocessor always considers a string
  371.               constant to end at a newline.
  372.  
  373.           o   The  preprocessor  does  not  predefine  the  macro
  374.               ____SSTTDDCC____  when  you  use  `--ttrraaddiittiioonnaall', but still
  375.               predefines____GGNNUUCC____ (since the GNU extensions  indi-
  376.               cated    by    ____GGNNUUCC____   are   not   affected   by
  377.               `--ttrraaddiittiioonnaall').  If you need to write header files
  378.               that   work   differently   depending   on  whether
  379.               `--ttrraaddiittiioonnaall' is in use, by testing both of  these
  380.               predefined  macros  you can distinguish four situa-
  381.               tions: GNU C, traditional GNU C, other ANSI C  com-
  382.               pilers, and other old C compilers.
  383.  
  384.           o   In the preprocessor, comments convert to nothing at
  385.               all, rather than to a space.   This  allows  tradi-
  386.               tional token concatenation.
  387.  
  388.           o   In the preprocessor, macro arguments are recognized
  389.               within string constants in a macro definition  (and
  390.               their   values   are  stringified,  though  without
  391.  
  392.  
  393.  
  394. GNU Tools                   27dec1991                           6
  395.  
  396.  
  397.  
  398.  
  399.  
  400. G++(1)                      GNU Tools                      G++(1)
  401.  
  402.  
  403.               additional quote marks, when they appear in such  a
  404.               context).   The  preprocessor  always  considers  a
  405.               string constant to end at a newline.
  406.  
  407.           o   The  preprocessor  does  not  predefine  the  macro
  408.               ____SSTTDDCC____  when  you  use  `--ttrraaddiittiioonnaall', but still
  409.               predefines____GGNNUUCC____ (since the GNU extensions  indi-
  410.               cated    by    ____GGNNUUCC____   are   not   affected   by
  411.               `--ttrraaddiittiioonnaall').  If you need to write header files
  412.               that   work   differently   depending   on  whether
  413.               `--ttrraaddiittiioonnaall' is in use, by testing both of  these
  414.               predefined  macros  you can distinguish four situa-
  415.               tions: GNU C, traditional GNU C, other ANSI C  com-
  416.               pilers, and other old C compilers.
  417.  
  418.  
  419.           o   String  ``constants'' are not necessarily constant;
  420.               they are stored in writable  space,  and  identical
  421.               looking  constants are allocated separately.  (This
  422.               is the same as the effect of `--ffwwrriittaabbllee--ssttrriinnggss'.)
  423.  
  424.               For  C++  programs only (not C), `--ttrraaddiittiioonnaall' has
  425.               one additional effect: assignment to tthhiiss  is  per-
  426.               mitted.    This  is  the  same  as  the  effect  of
  427.               `--fftthhiiss--iiss--vvaarriiaabbllee'.
  428.  
  429.        --UU_m_a_c_r_o
  430.               Undefine macro _m_a_c_r_o.
  431.  
  432.        --WWaallll  Issue warnings  for  conditions  which  pertain  to
  433.               usage  that  we  recommend  avoiding  and  that  we
  434.               believe is easy to avoid, even in conjunction  with
  435.               macros.
  436.  
  437.        --WWeennuumm--ccllaasshh
  438.               Warn  when converting between different enumeration
  439.               types.
  440.  
  441.        --WWoovveerrllooaaddeedd--vviirrttuuaall
  442.               In a derived  class,  the  definitions  of  virtual
  443.               functions  must  match the type signature of a vir-
  444.               tual function declared in the base class.  Use this
  445.               option  to  request  warnings  when a derived class
  446.               declares  a  function  that  may  be  an  erroneous
  447.               attempt to define a virtual function: that is, warn
  448.               when a function with the same  name  as  a  virtual
  449.               function  in the base class, but with a type signa-
  450.               ture that doesn't match any virtual functions  from
  451.               the base class.
  452.  
  453.        --ww     Inhibit all warning messages.
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460. GNU Tools                   27dec1991                           7
  461.  
  462.  
  463.  
  464.  
  465.  
  466. G++(1)                      GNU Tools                      G++(1)
  467.  
  468.  
  469. PPRRAAGGMMAASS
  470.        Two  `##pprraaggmmaa'  directives  are  supported for GNU C++, to
  471.        permit using the same header file for two purposes:  as  a
  472.        definition  of  interfaces to a given object class, and as
  473.        the full definition of the contents of that object  class.
  474.  
  475.        ##pprraaggmmaa iinntteerrffaaccee
  476.               Use  this  directive  in  header  files that define
  477.               object classes, to save space in most of the object
  478.               files  that  use  those  classes.   Normally, local
  479.               copies of certain  information  (backup  copies  of
  480.               inline member functions, debugging information, and
  481.               the internal tables that  implement  virtual  func-
  482.               tions)  must  be  kept  in  each  object  file that
  483.               includes  class  definitions.   You  can  use  this
  484.               pragma  to  avoid  such duplication.  When a header
  485.               file containing `##pprraaggmmaa iinntteerrffaaccee' is included  in
  486.               a  compilation, this auxiliary information will not
  487.               be generated (unless the  main  input  source  file
  488.               itself  uses  `##pprraaggmmaa  iimmpplleemmeennttaattiioonn').  Instead,
  489.               the object files  will  contain  references  to  be
  490.               resolved at link time.
  491.  
  492.        ##pprraaggmmaa iimmpplleemmeennttaattiioonn
  493.  
  494.        ##pprraaggmmaa iimmpplleemmeennttaattiioonn ""_o_b_j_e_c_t_s..hh""
  495.               Use this pragma in a main input file, when you want
  496.               full output from included header files to be gener-
  497.               ated  (and  made  globally  visible).  The included
  498.               header  file,  in   turn,   should   use   `##pprraaggmmaa
  499.               iinntteerrffaaccee'.   Backup  copies of inline member func-
  500.               tions,  debugging  information,  and  the  internal
  501.               tables  used to implement virtual functions are all
  502.               generated in implementation files.
  503.  
  504.               If you use `##pprraaggmmaa iimmpplleemmeennttaattiioonn' with  no  argu-
  505.               ment,  it  applies to an include file with the same
  506.               basename as  your  source  file;  for  example,  in
  507.               `aallllccllaassss..cccc',  `##pprraaggmmaa  iimmpplleemmeennttaattiioonn' by itself
  508.               is   equivalent    to    `##pprraaggmmaa    iimmpplleemmeennttaattiioonn
  509.               ""aallllccllaassss..hh""'.  Use the string argument if you want
  510.               a single implementation file to include  code  from
  511.               multiple header files.
  512.  
  513.               There  is no way to split up the contents of a sin-
  514.               gle header file into multiple implementation files.
  515.  
  516. FFIILLEESS
  517.        file.h             C header (preprocessor) file
  518.        file.i             preprocessed C source file
  519.        file.C             C++ source file
  520.        file.cc            C++ source file
  521.        file.cxx           C++ source file
  522.        file.s             assembly language file
  523.  
  524.  
  525.  
  526. GNU Tools                   27dec1991                           8
  527.  
  528.  
  529.  
  530.  
  531.  
  532. G++(1)                      GNU Tools                      G++(1)
  533.  
  534.  
  535.        file.o             object file
  536.        a.out              link edited output
  537.        _T_M_P_D_I_R/cc*         temporary files
  538.        _L_I_B_D_I_R/cpp         preprocessor
  539.        _L_I_B_D_I_R/cc1plus     compiler
  540.        _L_I_B_D_I_R/collect     linker   front   end   needed  on  some
  541.        machines
  542.        _L_I_B_D_I_R/libgcc.a    GCC subroutine library
  543.        /lib/crt[01n].o    start-up routine
  544.        _L_I_B_D_I_R/ccrt0       additional start-up routine for C++
  545.        /lib/libc.a        standard C library, see _i_n_t_r_o(3)
  546.        /usr/include       standard directory for ##iinncclluuddee files
  547.        _L_I_B_D_I_R/include     standard  gcc  directory  for  ##iinncclluuddee
  548.        files
  549.        _L_I_B_D_I_R/g++-include additional g++ directory for ##iinncclluuddee
  550.  
  551.        _L_I_B_D_I_R is usually //uussrr//llooccaall//lliibb//_m_a_c_h_i_n_e/_v_e_r_s_i_o_n.
  552.        _T_M_P_D_I_R comes from the environment variable TTMMPPDDIIRR (default
  553.        //uussrr//ttmmpp if available, else //ttmmpp).
  554.  
  555. SSEEEE AALLSSOO
  556.        gcc(1), cpp(1),  as(1),  ld(1),  gdb(1),  adb(1),  dbx(1),
  557.        sdb(1).
  558.        `ggcccc', `ccpppp', `aass',``ld'',, and `ggddbb' entries in iinnffoo.
  559.        _U_s_i_n_g  _a_n_d  _P_o_r_t_i_n_g  _G_N_U  _C_C _(_f_o_r _v_e_r_s_i_o_n _2_._0_), Richard M.
  560.        Stallman, November 1990; _T_h_e _C  _P_r_e_p_r_o_c_e_s_s_o_r,  Richard  M.
  561.        Stallman, July 1990; _U_s_i_n_g _G_D_B_: _A _G_u_i_d_e _t_o _t_h_e _G_N_U _S_o_u_r_c_e_-
  562.        _L_e_v_e_l _D_e_b_u_g_g_e_r, Richard M. Stallman and Roland  H.  Pesch,
  563.        December  1991;  _U_s_i_n_g _a_s_: _t_h_e _G_N_U _A_s_s_e_m_b_l_e_r, Dean Elsner,
  564.        Jay Fenlason & friends, March 1991; _g_l_d_: _t_h_e  _G_N_U  _l_i_n_k_e_r,
  565.        Steve Chamberlain and Roland Pesch, April 1991.
  566.  
  567.  
  568. BBUUGGSS
  569.        Report  bugs  to bbuugg--gg++++@@pprreepp..aaii..mmiitt..eedduu.  Bugs tend actu-
  570.        ally to be fixed if they can be isolated, so it is in your
  571.        interest  to  report  them  in such a way that they can be
  572.        easily reproduced.
  573.  
  574. CCOOPPYYIINNGG
  575.        Copyright (c) 1991 Free Software Foundation, Inc.
  576.  
  577.        Permission is granted  to  make  and  distribute  verbatim
  578.        copies  of  this  manual provided the copyright notice and
  579.        this permission notice are preserved on all copies.
  580.  
  581.        Permission is granted to copy and distribute modified ver-
  582.        sions  of  this  manual  under the conditions for verbatim
  583.        copying, provided that the entire resulting  derived  work
  584.        is  distributed  under  the  terms  of a permission notice
  585.        identical to this one.
  586.  
  587.        Permission is granted to copy and distribute  translations
  588.        of  this  manual  into  another  language, under the above
  589.  
  590.  
  591.  
  592. GNU Tools                   27dec1991                           9
  593.  
  594.  
  595.  
  596.  
  597.  
  598. G++(1)                      GNU Tools                      G++(1)
  599.  
  600.  
  601.        conditions for modified versions, except that this permis-
  602.        sion  notice  may  be included in translations approved by
  603.        the Free Software Foundation instead of  in  the  original
  604.        English.
  605.  
  606. AAUUTTHHOORRSS
  607.        See the GNU CC Manual for the contributors to GNU CC.
  608.  
  609.  
  610.  
  611.  
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618.  
  619.  
  620.  
  621.  
  622.  
  623.  
  624.  
  625.  
  626.  
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658. GNU Tools                   27dec1991                          10
  659.  
  660.  
  661.