#DJDSTOP
/*
 *  Russell Compiler parameter file
 */
/*  include <whoami.h> */
/* This refers to the machine used for compilation, not necessarily */
/* the target machine.                                              */
/* This is assumed in several places, e.g. streedefs.h */
/* and other files which mention DEFCHARSIGS nodes     */
/* The following functions were useful when we reference counted the */
/* syntax tree.  Now we let the garbage collector worry about it.    */
/* of substitution of constant name.          */
/* for a string                            */
/* be representable.                              */
/* loaded at once.                             */
/*
 *	Various global type definitions
 */
/* We assume that booleans are initialized to FALSE */
/*
 *	Tuneable constants
 */
/* debugging error messages are output using dbgmsg */
/* diagnostic debugging messages are output using diagmsg */
/* SHOULD DISAPPEAR */
/* specialized error output routines */
/* parameters can be augmented by err_node and err_msg */
/* turn off miscellaneous debugging      */
/* to turn on allocation debugging define BAD here */
/*
 * stplinks declaration macros for use with streedefs.h.
 *  Stplinks is an array of bit vectors defining the
 *  'primary links' in the syntax tree.  These are
 *  the links that need to tbe followed to traverse
 *  each part of the tree exactly once.
 */
/*
 * Syntax Tree Structure Definitions
 *
 * This file is a collection of macro invocations
 *
 * The calling environment must contain definitions for
 *
 * TOP          called at the beginning
 * START        called to start each structure declaration
 * INT, UNSIGNED, REFCNT, NODEKIND, NODESTAR, VLINENO, STTINDX,
 *      LISTPTR, BACKREF,CNSTAR(= pointer to Cons Node),STRPTR,
 *	BITVECTOR, NBPTR, HNODESTAR (identical to NODESTAR except hidden,
 *      i.e. not passed to mknode ), SIG, and HSIG.
 *      (The latter two are used for pointers from expression
 *      nodes to signature nodes.)
 *              called to define individual fields
 * FINISH       called to finish each structure
 * BOTTOM       called to finish everything
 */
/*
 *	Note that certain fields are not really part of the syntax tree,
 * but rather comprise the symbol table.  In particular each identifier
 * structure contains a field which eventually points to the last
 * declaration in the innermost enclosing scope of that identifier.
 * All constructs which can define a new identifier contain fields
 * used for chaining all definitions of a given identifier together.
 * If several of these constructs can occur in a given scope, i.e.
 * in the case of declarations and parameters, another field is
 * included to point back to some structure which uniquely identifies
 * that scope, so that illegal multiple declarations can subsequently
 * be detected.
 *  Identifier nodes contain an additional field identifying the
 * surrounding use list.  Use lists themselves are chained together
 * like identifier declarations.  Thus the list of types from which
 * selections can be inferred is easily identifiable.
 *  Also the first field of any structure which can possibly represent
 * a denotation is one for the signature of that denotation.  In general
 * this field is hidden and not used until the signature deduction phase.
 *  Any node which can declare an identifier (outside a signature)
 * contains displacement and level fields in the third and fourth positions
 * following the prefix.  The level number refers to function nesting
 * depth before the storage allocation pass of the code generator, and
 * is then changed to be activation record nesting depth.  (The two may
 * differ, since blocks occasionally require activation records.)
 *  Any signature field must be followed by a corresponding sig_done field.
 */
#ifndef STREEDEFS
#endif
/*
 * Notes:
 *
 */
#DJDSTART
stplinks := [ 
 0
,
 0
   +(1<<27)
   +(1<<26)
    +(1<<23)
,
 0
   +(1<<27)
   +(1<<26)
,
 0
   +(1<<27)
   +(1<<26)
,
 0
     +(1<<27)
   +(1<<25)
,
 0
     +(1<<27)
   +(1<<25)
,
 0
     +(1<<27)
    +(1<<21)
   +(1<<20)
,
 0
     +(1<<27)
   +(1<<24)
    +(1<<23)
,
 0
   +(1<<27)
   +(1<<26)
,
 0
    +(1<<23)
,
 0
     +(1<<27)
,
 0
     +(1<<27)
    +(1<<22)
    +(1<<21)
 0
     +(1<<27)
    +(1<<25)
    +(1<<24)
,
 0
     +(1<<27)
   +(1<<25)
    +(1<<24)
,
 0
     +(1<<27)
    +(1<<25)
,
 0
     +(1<<27)
   +(1<<25)
,
 0
     +(1<<27)
   +(1<<25)
    +(1<<24) 
,
 0
     +(1<<27)
    +(1<<25)
,
 0
     +(1<<27)
   +(1<<25)
    +(1<<24) 
,
 0
   +(1<<27)
    +(1<<26)
,
 0
     +(1<<27)
   +(1<<23)
   +(1<<22)  
,
 0
   +(1<<27)
    +(1<<26)
,
 0
   +(1<<27)
    +(1<<26)
,
 0
   +(1<<27)
   +(1<<26)
   +(1<<25)
,
 0
,
 0
     +(1<<27)
,
 0
,
 0
,
 0
     +(1<<27)
    +(1<<25)
,
 0
     +(1<<27)
    +(1<<25)
,
 0
   +(1<<27)
   +(1<<26)
,
 0
     +(1<<27)
    +(1<<25) 
,
 0
     +(1<<27)
    +(1<<25)
    +(1<<19)
,
 0
     +(1<<27)
    +(1<<25)
    +(1<<22)
,
 0
     +(1<<27)
    +(1<<25)
    +(1<<22)
,
 0
   +(1<<27) 
   +(1<<22)
,
 0
,
 0
,
 0
    +(1<<27)
,
 0
,
]

