home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 7 / FreshFishVol7.bin / bbs / gnu / gcc-2.3.3-src.lha / GNU / src / amiga / gcc-2.3.3 / cp-decl.h < prev    next >
C/C++ Source or Header  |  1994-02-06  |  2KB  |  47 lines

  1. /* In grokdeclarator, distinguish syntactic contexts of declarators.  */
  2. enum decl_context
  3. { NORMAL,            /* Ordinary declaration */
  4.   FUNCDEF,            /* Function definition */
  5.   PARM,                /* Declaration of parm before function body */
  6.   FIELD,            /* Declaration inside struct or union */
  7.   BITFIELD,            /* Likewise but with specified width */
  8.   TYPENAME,            /* Typename (inside cast or sizeof)  */
  9.   MEMFUNCDEF            /* Member function definition */
  10. };
  11.  
  12. /* C++: Keep these around to reduce calls to `get_identifier'.
  13.    Identifiers for `this' in member functions and the auto-delete
  14.    parameter for destructors.  */
  15. extern tree this_identifier, in_charge_identifier;
  16.  
  17. /* Parsing a function declarator leaves a list of parameter names
  18.    or a chain or parameter decls here.  */
  19. extern tree last_function_parms;
  20.  
  21. /* A list of static class variables.  This is needed, because a
  22.    static class variable can be declared inside the class without
  23.    an initializer, and then initialized, staticly, outside the class.  */
  24. extern tree pending_statics;
  25.  
  26. /* A list of objects which have constructors or destructors
  27.    which reside in the global scope.  The decl is stored in
  28.    the TREE_VALUE slot and the initializer is stored
  29.    in the TREE_PURPOSE slot.  */
  30. extern tree static_aggregates;
  31.  
  32. /* A list of functions which were declared inline, but later had their
  33.    address taken.  Used only for non-virtual member functions, since we can
  34.    find other functions easily enough.  */
  35. extern tree pending_addressable_inlines;
  36.  
  37. #ifdef SOS
  38. /* SOS extensions.  */
  39. extern tree zlink_type, zret_type;
  40. extern tree zlink, zret;
  41. #endif
  42.  
  43. #ifdef DEBUG_CP_BINDING_LEVELS
  44. /* Purely for debugging purposes.  */
  45. extern int debug_bindings_indentation;
  46. #endif
  47.