// generated by gen-nodes from `vaul-chunk.t'.  Do not edit.

#ifndef VAUL_H
#define VAUL_H

#include <freehdl/fire.h>
#include <freehdl/vaul-types.h>
#include <freehdl/vaul-creator-base.h>
struct vaul_decl_set;

extern tree_chunk_info vaul_chunk_info;
extern tree_ctype_info vaul_id_set_ctype_info;
extern tree_ctype_info vaul_decl_set_ptr_ctype_info;
extern tree_ctype_info vaul_incomplete_type_use_ptr_ctype_info;
struct VAUL_DelayMechanism;
typedef VAUL_DelayMechanism *pVAUL_DelayMechanism;
extern tree_kind_info VAUL_DELAY_MECHANISM_kind_info;
#define VAUL_DELAY_MECHANISM (&VAUL_DELAY_MECHANISM_kind_info)
struct VAUL_DelayInertial;
typedef VAUL_DelayInertial *pVAUL_DelayInertial;
extern tree_kind_info VAUL_DELAY_INERTIAL_kind_info;
#define VAUL_DELAY_INERTIAL (&VAUL_DELAY_INERTIAL_kind_info)
struct VAUL_DelayTransport;
typedef VAUL_DelayTransport *pVAUL_DelayTransport;
extern tree_kind_info VAUL_DELAY_TRANSPORT_kind_info;
#define VAUL_DELAY_TRANSPORT (&VAUL_DELAY_TRANSPORT_kind_info)
struct VAUL_CondalWaveform;
typedef VAUL_CondalWaveform *pVAUL_CondalWaveform;
extern tree_kind_info VAUL_CONDAL_WAVEFORM_kind_info;
#define VAUL_CONDAL_WAVEFORM (&VAUL_CONDAL_WAVEFORM_kind_info)
pVAUL_CondalWaveform reverse (pVAUL_CondalWaveform);
struct VAUL_CondalSignalAssign;
typedef VAUL_CondalSignalAssign *pVAUL_CondalSignalAssign;
extern tree_kind_info VAUL_CONDAL_SIGNAL_ASSIGN_kind_info;
#define VAUL_CONDAL_SIGNAL_ASSIGN (&VAUL_CONDAL_SIGNAL_ASSIGN_kind_info)
struct VAUL_SelWaveform;
typedef VAUL_SelWaveform *pVAUL_SelWaveform;
extern tree_kind_info VAUL_SEL_WAVEFORM_kind_info;
#define VAUL_SEL_WAVEFORM (&VAUL_SEL_WAVEFORM_kind_info)
pVAUL_SelWaveform reverse (pVAUL_SelWaveform);
struct VAUL_SelSignalAssign;
typedef VAUL_SelSignalAssign *pVAUL_SelSignalAssign;
extern tree_kind_info VAUL_SEL_SIGNAL_ASSIGN_kind_info;
#define VAUL_SEL_SIGNAL_ASSIGN (&VAUL_SEL_SIGNAL_ASSIGN_kind_info)
struct VAUL_DesigList;
typedef VAUL_DesigList *pVAUL_DesigList;
extern tree_kind_info VAUL_DESIG_LIST_kind_info;
#define VAUL_DESIG_LIST (&VAUL_DESIG_LIST_kind_info)
pVAUL_DesigList reverse (pVAUL_DesigList);
struct VAUL_Name;
typedef VAUL_Name *pVAUL_Name;
extern tree_kind_info VAUL_NAME_kind_info;
#define VAUL_NAME (&VAUL_NAME_kind_info)
struct VAUL_SimpleName;
typedef VAUL_SimpleName *pVAUL_SimpleName;
extern tree_kind_info VAUL_SIMPLE_NAME_kind_info;
#define VAUL_SIMPLE_NAME (&VAUL_SIMPLE_NAME_kind_info)
struct VAUL_SelName;
typedef VAUL_SelName *pVAUL_SelName;
extern tree_kind_info VAUL_SEL_NAME_kind_info;
#define VAUL_SEL_NAME (&VAUL_SEL_NAME_kind_info)
struct VAUL_IftsName;
typedef VAUL_IftsName *pVAUL_IftsName;
extern tree_kind_info VAUL_IFTS_NAME_kind_info;
#define VAUL_IFTS_NAME (&VAUL_IFTS_NAME_kind_info)
struct VAUL_AttributeName;
typedef VAUL_AttributeName *pVAUL_AttributeName;
extern tree_kind_info VAUL_ATTRIBUTE_NAME_kind_info;
#define VAUL_ATTRIBUTE_NAME (&VAUL_ATTRIBUTE_NAME_kind_info)
struct VAUL_SelNameList;
typedef VAUL_SelNameList *pVAUL_SelNameList;
extern tree_kind_info VAUL_SEL_NAME_LIST_kind_info;
#define VAUL_SEL_NAME_LIST (&VAUL_SEL_NAME_LIST_kind_info)
pVAUL_SelNameList reverse (pVAUL_SelNameList);
struct VAUL_NameList;
typedef VAUL_NameList *pVAUL_NameList;
extern tree_kind_info VAUL_NAME_LIST_kind_info;
#define VAUL_NAME_LIST (&VAUL_NAME_LIST_kind_info)
pVAUL_NameList reverse (pVAUL_NameList);
struct VAUL_TopScope;
typedef VAUL_TopScope *pVAUL_TopScope;
extern tree_kind_info VAUL_TOP_SCOPE_kind_info;
#define VAUL_TOP_SCOPE (&VAUL_TOP_SCOPE_kind_info)
struct VAUL_StandardPackage;
typedef VAUL_StandardPackage *pVAUL_StandardPackage;
extern tree_kind_info VAUL_STANDARD_PACKAGE_kind_info;
#define VAUL_STANDARD_PACKAGE (&VAUL_STANDARD_PACKAGE_kind_info)
struct VAUL_IncompleteType;
typedef VAUL_IncompleteType *pVAUL_IncompleteType;
extern tree_kind_info VAUL_INCOMPLETE_TYPE_kind_info;
#define VAUL_INCOMPLETE_TYPE (&VAUL_INCOMPLETE_TYPE_kind_info)
struct VAUL_VoidType;
typedef VAUL_VoidType *pVAUL_VoidType;
extern tree_kind_info VAUL_VOID_TYPE_kind_info;
#define VAUL_VOID_TYPE (&VAUL_VOID_TYPE_kind_info)
struct VAUL_SubarrayType;
typedef VAUL_SubarrayType *pVAUL_SubarrayType;
extern tree_kind_info VAUL_SUBARRAY_TYPE_kind_info;
#define VAUL_SUBARRAY_TYPE (&VAUL_SUBARRAY_TYPE_kind_info)
struct VAUL_PreIndexConstraint;
typedef VAUL_PreIndexConstraint *pVAUL_PreIndexConstraint;
extern tree_kind_info VAUL_PRE_INDEX_CONSTRAINT_kind_info;
#define VAUL_PRE_INDEX_CONSTRAINT (&VAUL_PRE_INDEX_CONSTRAINT_kind_info)
struct VAUL_PreIndexRangeConstraint;
typedef VAUL_PreIndexRangeConstraint *pVAUL_PreIndexRangeConstraint;
extern tree_kind_info VAUL_PRE_INDEX_RANGE_CONSTRAINT_kind_info;
#define VAUL_PRE_INDEX_RANGE_CONSTRAINT (&VAUL_PRE_INDEX_RANGE_CONSTRAINT_kind_info)
struct VAUL_PreIndexSubtypeConstraint;
typedef VAUL_PreIndexSubtypeConstraint *pVAUL_PreIndexSubtypeConstraint;
extern tree_kind_info VAUL_PRE_INDEX_SUBTYPE_CONSTRAINT_kind_info;
#define VAUL_PRE_INDEX_SUBTYPE_CONSTRAINT (&VAUL_PRE_INDEX_SUBTYPE_CONSTRAINT_kind_info)
struct VAUL_GuardSignal;
typedef VAUL_GuardSignal *pVAUL_GuardSignal;
extern tree_kind_info VAUL_GUARD_SIGNAL_kind_info;
#define VAUL_GUARD_SIGNAL (&VAUL_GUARD_SIGNAL_kind_info)
struct VAUL_UnresolvedName;
typedef VAUL_UnresolvedName *pVAUL_UnresolvedName;
extern tree_kind_info VAUL_UNRESOLVED_NAME_kind_info;
#define VAUL_UNRESOLVED_NAME (&VAUL_UNRESOLVED_NAME_kind_info)
struct VAUL_ProcedureCall;
typedef VAUL_ProcedureCall *pVAUL_ProcedureCall;
extern tree_kind_info VAUL_PROCEDURE_CALL_kind_info;
#define VAUL_PROCEDURE_CALL (&VAUL_PROCEDURE_CALL_kind_info)
struct VAUL_AmbgCall;
typedef VAUL_AmbgCall *pVAUL_AmbgCall;
extern tree_kind_info VAUL_AMBG_CALL_kind_info;
#define VAUL_AMBG_CALL (&VAUL_AMBG_CALL_kind_info)
struct VAUL_GenAssocElem;
typedef VAUL_GenAssocElem *pVAUL_GenAssocElem;
extern tree_kind_info VAUL_GEN_ASSOC_ELEM_kind_info;
#define VAUL_GEN_ASSOC_ELEM (&VAUL_GEN_ASSOC_ELEM_kind_info)
pVAUL_GenAssocElem reverse (pVAUL_GenAssocElem);
struct VAUL_NamedAssocElem;
typedef VAUL_NamedAssocElem *pVAUL_NamedAssocElem;
extern tree_kind_info VAUL_NAMED_ASSOC_ELEM_kind_info;
#define VAUL_NAMED_ASSOC_ELEM (&VAUL_NAMED_ASSOC_ELEM_kind_info)
struct VAUL_SubtypeAssocElem;
typedef VAUL_SubtypeAssocElem *pVAUL_SubtypeAssocElem;
extern tree_kind_info VAUL_SUBTYPE_ASSOC_ELEM_kind_info;
#define VAUL_SUBTYPE_ASSOC_ELEM (&VAUL_SUBTYPE_ASSOC_ELEM_kind_info)
struct VAUL_RangeAssocElem;
typedef VAUL_RangeAssocElem *pVAUL_RangeAssocElem;
extern tree_kind_info VAUL_RANGE_ASSOC_ELEM_kind_info;
#define VAUL_RANGE_ASSOC_ELEM (&VAUL_RANGE_ASSOC_ELEM_kind_info)
struct VAUL_AmbgArrayLitRef;
typedef VAUL_AmbgArrayLitRef *pVAUL_AmbgArrayLitRef;
extern tree_kind_info VAUL_AMBG_ARRAY_LIT_REF_kind_info;
#define VAUL_AMBG_ARRAY_LIT_REF (&VAUL_AMBG_ARRAY_LIT_REF_kind_info)
struct VAUL_AmbgNullExpr;
typedef VAUL_AmbgNullExpr *pVAUL_AmbgNullExpr;
extern tree_kind_info VAUL_AMBG_NULL_EXPR_kind_info;
#define VAUL_AMBG_NULL_EXPR (&VAUL_AMBG_NULL_EXPR_kind_info)
struct VAUL_AmbgEnumLitRef;
typedef VAUL_AmbgEnumLitRef *pVAUL_AmbgEnumLitRef;
extern tree_kind_info VAUL_AMBG_ENUM_LIT_REF_kind_info;
#define VAUL_AMBG_ENUM_LIT_REF (&VAUL_AMBG_ENUM_LIT_REF_kind_info)
struct VAUL_AttributeSpec;
typedef VAUL_AttributeSpec *pVAUL_AttributeSpec;
extern tree_kind_info VAUL_ATTRIBUTE_SPEC_kind_info;
#define VAUL_ATTRIBUTE_SPEC (&VAUL_ATTRIBUTE_SPEC_kind_info)
struct VAUL_EntitySpec;
typedef VAUL_EntitySpec *pVAUL_EntitySpec;
extern tree_kind_info VAUL_ENTITY_SPEC_kind_info;
#define VAUL_ENTITY_SPEC (&VAUL_ENTITY_SPEC_kind_info)
struct VAUL_EntityNameList;
typedef VAUL_EntityNameList *pVAUL_EntityNameList;
extern tree_kind_info VAUL_ENTITY_NAME_LIST_kind_info;
#define VAUL_ENTITY_NAME_LIST (&VAUL_ENTITY_NAME_LIST_kind_info)
struct VAUL_EntityNameList_Ids;
typedef VAUL_EntityNameList_Ids *pVAUL_EntityNameList_Ids;
extern tree_kind_info VAUL_ENTITY_NAME_LIST_IDS_kind_info;
#define VAUL_ENTITY_NAME_LIST_IDS (&VAUL_ENTITY_NAME_LIST_IDS_kind_info)
struct VAUL_EntityNameList_ALL;
typedef VAUL_EntityNameList_ALL *pVAUL_EntityNameList_ALL;
extern tree_kind_info VAUL_ENTITY_NAME_LIST_ALL_kind_info;
#define VAUL_ENTITY_NAME_LIST_ALL (&VAUL_ENTITY_NAME_LIST_ALL_kind_info)
struct VAUL_EntityNameList_OTHERS;
typedef VAUL_EntityNameList_OTHERS *pVAUL_EntityNameList_OTHERS;
extern tree_kind_info VAUL_ENTITY_NAME_LIST_OTHERS_kind_info;
#define VAUL_ENTITY_NAME_LIST_OTHERS (&VAUL_ENTITY_NAME_LIST_OTHERS_kind_info)
struct VAUL_AmbgAggregate;
typedef VAUL_AmbgAggregate *pVAUL_AmbgAggregate;
extern tree_kind_info VAUL_AMBG_AGGREGATE_kind_info;
#define VAUL_AMBG_AGGREGATE (&VAUL_AMBG_AGGREGATE_kind_info)
struct VAUL_ArtificialAmbgAggregate;
typedef VAUL_ArtificialAmbgAggregate *pVAUL_ArtificialAmbgAggregate;
extern tree_kind_info VAUL_ARTIFICIAL_AMBG_AGGREGATE_kind_info;
#define VAUL_ARTIFICIAL_AMBG_AGGREGATE (&VAUL_ARTIFICIAL_AMBG_AGGREGATE_kind_info)
struct VAUL_ElemAssoc;
typedef VAUL_ElemAssoc *pVAUL_ElemAssoc;
extern tree_kind_info VAUL_ELEM_ASSOC_kind_info;
#define VAUL_ELEM_ASSOC (&VAUL_ELEM_ASSOC_kind_info)
pVAUL_ElemAssoc reverse (pVAUL_ElemAssoc);
struct VAUL_ChoiceByName;
typedef VAUL_ChoiceByName *pVAUL_ChoiceByName;
extern tree_kind_info VAUL_CHOICE_BY_NAME_kind_info;
#define VAUL_CHOICE_BY_NAME (&VAUL_CHOICE_BY_NAME_kind_info)
struct VAUL_IterationScheme;
typedef VAUL_IterationScheme *pVAUL_IterationScheme;
extern tree_kind_info VAUL_ITERATION_SCHEME_kind_info;
#define VAUL_ITERATION_SCHEME (&VAUL_ITERATION_SCHEME_kind_info)
struct VAUL_IfScheme;
typedef VAUL_IfScheme *pVAUL_IfScheme;
extern tree_kind_info VAUL_IF_SCHEME_kind_info;
#define VAUL_IF_SCHEME (&VAUL_IF_SCHEME_kind_info)
struct VAUL_WhileScheme;
typedef VAUL_WhileScheme *pVAUL_WhileScheme;
extern tree_kind_info VAUL_WHILE_SCHEME_kind_info;
#define VAUL_WHILE_SCHEME (&VAUL_WHILE_SCHEME_kind_info)
struct VAUL_ForScheme;
typedef VAUL_ForScheme *pVAUL_ForScheme;
extern tree_kind_info VAUL_FOR_SCHEME_kind_info;
#define VAUL_FOR_SCHEME (&VAUL_FOR_SCHEME_kind_info)
struct VAUL_ConfigSpec;
typedef VAUL_ConfigSpec *pVAUL_ConfigSpec;
extern tree_kind_info VAUL_CONFIG_SPEC_kind_info;
#define VAUL_CONFIG_SPEC (&VAUL_CONFIG_SPEC_kind_info)
pVAUL_ConfigSpec reverse (pVAUL_ConfigSpec);
struct VAUL_ComponentSpec;
typedef VAUL_ComponentSpec *pVAUL_ComponentSpec;
extern tree_kind_info VAUL_COMPONENT_SPEC_kind_info;
#define VAUL_COMPONENT_SPEC (&VAUL_COMPONENT_SPEC_kind_info)
struct VAUL_InstList;
typedef VAUL_InstList *pVAUL_InstList;
extern tree_kind_info VAUL_INST_LIST_kind_info;
#define VAUL_INST_LIST (&VAUL_INST_LIST_kind_info)
struct VAUL_InstList_Ids;
typedef VAUL_InstList_Ids *pVAUL_InstList_Ids;
extern tree_kind_info VAUL_INST_LIST_IDS_kind_info;
#define VAUL_INST_LIST_IDS (&VAUL_INST_LIST_IDS_kind_info)
struct VAUL_InstList_ALL;
typedef VAUL_InstList_ALL *pVAUL_InstList_ALL;
extern tree_kind_info VAUL_INST_LIST_ALL_kind_info;
#define VAUL_INST_LIST_ALL (&VAUL_INST_LIST_ALL_kind_info)
struct VAUL_InstList_OTHERS;
typedef VAUL_InstList_OTHERS *pVAUL_InstList_OTHERS;
extern tree_kind_info VAUL_INST_LIST_OTHERS_kind_info;
#define VAUL_INST_LIST_OTHERS (&VAUL_INST_LIST_OTHERS_kind_info)
struct VAUL_IncrementalBindingIndic;
typedef VAUL_IncrementalBindingIndic *pVAUL_IncrementalBindingIndic;
extern tree_kind_info VAUL_INCREMENTAL_BINDING_INDIC_kind_info;
#define VAUL_INCREMENTAL_BINDING_INDIC (&VAUL_INCREMENTAL_BINDING_INDIC_kind_info)
struct VAUL_DeclCache;
typedef VAUL_DeclCache *pVAUL_DeclCache;
extern tree_kind_info VAUL_DECL_CACHE_kind_info;
#define VAUL_DECL_CACHE (&VAUL_DECL_CACHE_kind_info)
struct VAUL_FilenameAndMode;
typedef VAUL_FilenameAndMode *pVAUL_FilenameAndMode;
extern tree_kind_info VAUL_FILENAME_AND_MODE_kind_info;
#define VAUL_FILENAME_AND_MODE (&VAUL_FILENAME_AND_MODE_kind_info)

struct VAUL_DelayMechanism : IIR_Root {

  VAUL_DelayMechanism (pIIR_PosInfo pos) 
  : IIR_Root (pos)
    { }

  tree_kind kind ();
};

struct VAUL_DelayInertial : VAUL_DelayMechanism {
  pIIR_Expression rejection_time;

  VAUL_DelayInertial (pIIR_PosInfo pos, pIIR_Expression rejection_time) 
  : VAUL_DelayMechanism (pos),
    rejection_time (rejection_time)
    { }

  tree_kind kind ();
};

struct VAUL_DelayTransport : VAUL_DelayMechanism {

  VAUL_DelayTransport (pIIR_PosInfo pos) 
  : VAUL_DelayMechanism (pos)
    { }

  tree_kind kind ();
};

struct VAUL_CondalWaveform : IIR_Root {
  pIIR_WaveformList wave;
  pIIR_Expression condition;
  pVAUL_CondalWaveform else_wave;

  VAUL_CondalWaveform (pIIR_PosInfo pos, pIIR_WaveformList wave, pIIR_Expression condition, pVAUL_CondalWaveform else_wave) 
  : IIR_Root (pos),
    wave (wave),
    condition (condition),
    else_wave (else_wave)
    { }

  tree_kind kind ();
};

struct VAUL_CondalSignalAssign : IIR_Root {
  pIIR_Expression target;
  bool guarded;
  pVAUL_DelayMechanism delay;
  pVAUL_CondalWaveform wave;

  VAUL_CondalSignalAssign (pIIR_PosInfo pos, pIIR_Expression target, bool guarded, pVAUL_DelayMechanism delay, pVAUL_CondalWaveform wave) 
  : IIR_Root (pos),
    target (target),
    guarded (guarded),
    delay (delay),
    wave (wave)
    { }

  tree_kind kind ();
};

struct VAUL_SelWaveform : IIR_Root {
  pIIR_WaveformList wave;
  pIIR_ChoiceList choice;
  pVAUL_SelWaveform next_wave;

  VAUL_SelWaveform (pIIR_PosInfo pos, pIIR_WaveformList wave, pIIR_ChoiceList choice, pVAUL_SelWaveform next_wave) 
  : IIR_Root (pos),
    wave (wave),
    choice (choice),
    next_wave (next_wave)
    { }

  tree_kind kind ();
};

struct VAUL_SelSignalAssign : IIR_Root {
  pIIR_Expression value;
  pIIR_Expression target;
  bool guarded;
  pVAUL_DelayMechanism delay;
  pVAUL_SelWaveform wave;

  VAUL_SelSignalAssign (pIIR_PosInfo pos, pIIR_Expression value, pIIR_Expression target, bool guarded, pVAUL_DelayMechanism delay, pVAUL_SelWaveform wave) 
  : IIR_Root (pos),
    value (value),
    target (target),
    guarded (guarded),
    delay (delay),
    wave (wave)
    { }

  tree_kind kind ();
};

struct VAUL_DesigList : IIR_Root {
  pIIR_TextLiteral desig;
  pVAUL_DesigList link;

  VAUL_DesigList (pIIR_PosInfo pos, pIIR_TextLiteral desig, pVAUL_DesigList link) 
  : IIR_Root (pos),
    desig (desig),
    link (link)
    { }

  tree_kind kind ();
};

struct VAUL_Name : IIR_Root {

  VAUL_Name (pIIR_PosInfo pos) 
  : IIR_Root (pos)
    { }

  tree_kind kind ();
};

struct VAUL_SimpleName : VAUL_Name {
  pIIR_TextLiteral id;

  VAUL_SimpleName (pIIR_PosInfo pos, pIIR_TextLiteral id) 
  : VAUL_Name (pos),
    id (id)
    { }

  tree_kind kind ();
};

struct VAUL_SelName : VAUL_Name {
  pVAUL_Name prefix;
  pIIR_TextLiteral suffix;

  VAUL_SelName (pIIR_PosInfo pos, pVAUL_Name prefix, pIIR_TextLiteral suffix) 
  : VAUL_Name (pos),
    prefix (prefix),
    suffix (suffix)
    { }

  tree_kind kind ();
};

struct VAUL_IftsName : VAUL_Name {
  pVAUL_Name prefix;
  pVAUL_GenAssocElem assoc;

  VAUL_IftsName (pIIR_PosInfo pos, pVAUL_Name prefix, pVAUL_GenAssocElem assoc) 
  : VAUL_Name (pos),
    prefix (prefix),
    assoc (assoc)
    { }

  tree_kind kind ();
};

struct VAUL_AttributeName : VAUL_Name {
  pVAUL_Name prefix;
  pIIR_Identifier attribute;
  pVAUL_NamedAssocElem first_actual;

  VAUL_AttributeName (pIIR_PosInfo pos, pVAUL_Name prefix, pIIR_Identifier attribute, pVAUL_NamedAssocElem first_actual) 
  : VAUL_Name (pos),
    prefix (prefix),
    attribute (attribute),
    first_actual (first_actual)
    { }

  tree_kind kind ();
};

struct VAUL_SelNameList : IIR_Root {
  pVAUL_SelName name;
  pVAUL_SelNameList link;

  VAUL_SelNameList (pIIR_PosInfo pos, pVAUL_SelName name, pVAUL_SelNameList link) 
  : IIR_Root (pos),
    name (name),
    link (link)
    { }

  tree_kind kind ();
};

struct VAUL_NameList : IIR_Root {
  pVAUL_Name name;
  pVAUL_NameList link;

  VAUL_NameList (pIIR_PosInfo pos, pVAUL_Name name, pVAUL_NameList link) 
  : IIR_Root (pos),
    name (name),
    link (link)
    { }

  tree_kind kind ();
};

struct VAUL_TopScope : IIR_DeclarativeRegion {

  VAUL_TopScope (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_DeclarativeRegion declarative_region, pIIR_AttributeValueList attributes, int seqno, pIIR_DeclarativeRegion continued, pIIR_DeclarationList declarations) 
  : IIR_DeclarativeRegion (pos, declarator, declarative_region, attributes, seqno, continued, declarations)
    { }

  tree_kind kind ();
};

struct VAUL_StandardPackage : IIR_PackageDeclaration {
  pIIR_Type predef_BIT;
  pIIR_Type predef_BOOLEAN;
  pIIR_Type predef_INTEGER;
  pIIR_Type predef_REAL;
  pIIR_Type predef_TIME;
  pIIR_Type predef_CHARACTER;
  pIIR_Type predef_STRING;
  pIIR_Type predef_BIT_VECTOR;
  pIIR_Type predef_SEVERITY_LEVEL;
  pIIR_Type predef_FILE_OPEN_KIND;
  pIIR_Type predef_FILE_OPEN_STATUS;
  pIIR_Type universal_integer;
  pIIR_Type universal_real;

  VAUL_StandardPackage (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_DeclarativeRegion declarative_region, pIIR_AttributeValueList attributes, int seqno, pIIR_DeclarativeRegion continued, pIIR_DeclarationList declarations, pIIR_DeclarationList context_items, pIIR_DeclarationList external_decls, pIIR_TextLiteral library_name, pIIR_LibraryUnitList used_units, pIIR_Type predef_BIT, pIIR_Type predef_BOOLEAN, pIIR_Type predef_INTEGER, pIIR_Type predef_REAL, pIIR_Type predef_TIME, pIIR_Type predef_CHARACTER, pIIR_Type predef_STRING, pIIR_Type predef_BIT_VECTOR, pIIR_Type predef_SEVERITY_LEVEL, pIIR_Type predef_FILE_OPEN_KIND, pIIR_Type predef_FILE_OPEN_STATUS, pIIR_Type universal_integer, pIIR_Type universal_real) 
  : IIR_PackageDeclaration (pos, declarator, declarative_region, attributes, seqno, continued, declarations, context_items, external_decls, library_name, used_units),
    predef_BIT (predef_BIT),
    predef_BOOLEAN (predef_BOOLEAN),
    predef_INTEGER (predef_INTEGER),
    predef_REAL (predef_REAL),
    predef_TIME (predef_TIME),
    predef_CHARACTER (predef_CHARACTER),
    predef_STRING (predef_STRING),
    predef_BIT_VECTOR (predef_BIT_VECTOR),
    predef_SEVERITY_LEVEL (predef_SEVERITY_LEVEL),
    predef_FILE_OPEN_KIND (predef_FILE_OPEN_KIND),
    predef_FILE_OPEN_STATUS (predef_FILE_OPEN_STATUS),
    universal_integer (universal_integer),
    universal_real (universal_real)
    { }

  tree_kind kind ();
};

struct VAUL_IncompleteType : IIR_Type {
  vaul_incomplete_type_use* uses;

  VAUL_IncompleteType (pIIR_PosInfo pos, pIIR_TypeDeclaration declaration, pIIR_Type base, IR_StaticLevel static_level, vaul_incomplete_type_use* uses) 
  : IIR_Type (pos, declaration, base, static_level),
    uses (uses)
    { }

  tree_kind kind ();
};

struct VAUL_VoidType : IIR_Type {

  VAUL_VoidType (pIIR_PosInfo pos, pIIR_TypeDeclaration declaration, pIIR_Type base, IR_StaticLevel static_level) 
  : IIR_Type (pos, declaration, base, static_level)
    { }

  tree_kind kind ();
};

struct VAUL_SubarrayType : IIR_ArrayType {
  pIIR_ArrayType complete_type;

  VAUL_SubarrayType (pIIR_PosInfo pos, pIIR_TypeDeclaration declaration, pIIR_Type base, IR_StaticLevel static_level, pIIR_TypeList index_types, pIIR_Type element_type, pIIR_ArrayType complete_type) 
  : IIR_ArrayType (pos, declaration, base, static_level, index_types, element_type),
    complete_type (complete_type)
    { }

  tree_kind kind ();
};

struct VAUL_PreIndexConstraint : IIR_Type {

  VAUL_PreIndexConstraint (pIIR_PosInfo pos, pIIR_TypeDeclaration declaration, pIIR_Type base, IR_StaticLevel static_level) 
  : IIR_Type (pos, declaration, base, static_level)
    { }

  tree_kind kind ();
};

struct VAUL_PreIndexRangeConstraint : VAUL_PreIndexConstraint {
  pIIR_Range range;

  VAUL_PreIndexRangeConstraint (pIIR_PosInfo pos, pIIR_TypeDeclaration declaration, pIIR_Type base, IR_StaticLevel static_level, pIIR_Range range) 
  : VAUL_PreIndexConstraint (pos, declaration, base, static_level),
    range (range)
    { }

  tree_kind kind ();
};

struct VAUL_PreIndexSubtypeConstraint : VAUL_PreIndexConstraint {
  pIIR_Type type;

  VAUL_PreIndexSubtypeConstraint (pIIR_PosInfo pos, pIIR_TypeDeclaration declaration, pIIR_Type base, IR_StaticLevel static_level, pIIR_Type type) 
  : VAUL_PreIndexConstraint (pos, declaration, base, static_level),
    type (type)
    { }

  tree_kind kind ();
};

struct VAUL_GuardSignal : IIR_SignalDeclaration {

  VAUL_GuardSignal (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_DeclarativeRegion declarative_region, pIIR_AttributeValueList attributes, int seqno, pIIR_Type subtype, pIIR_Expression initial_value, pIIR_ObjectReference alias_base, IR_SignalKind signal_kind) 
  : IIR_SignalDeclaration (pos, declarator, declarative_region, attributes, seqno, subtype, initial_value, alias_base, signal_kind)
    { }

  tree_kind kind ();
};

struct VAUL_UnresolvedName : IIR_Expression {
  pVAUL_Name name;

  VAUL_UnresolvedName (pIIR_PosInfo pos, pIIR_Type subtype, IR_StaticLevel static_level, pVAUL_Name name) 
  : IIR_Expression (pos, subtype, static_level),
    name (name)
    { }

  tree_kind kind ();
};

struct VAUL_ProcedureCall : IIR_Expression {
  pIIR_ProcedureDeclaration proc;
  pIIR_AssociationList actuals;

  VAUL_ProcedureCall (pIIR_PosInfo pos, pIIR_Type subtype, IR_StaticLevel static_level, pIIR_ProcedureDeclaration proc, pIIR_AssociationList actuals) 
  : IIR_Expression (pos, subtype, static_level),
    proc (proc),
    actuals (actuals)
    { }

  tree_kind kind ();
};

struct VAUL_AmbgCall : IIR_Expression {
  pVAUL_NamedAssocElem first_actual;
  vaul_decl_set* set;

  VAUL_AmbgCall (pIIR_PosInfo pos, pIIR_Type subtype, IR_StaticLevel static_level, pVAUL_NamedAssocElem first_actual, vaul_decl_set* set) 
  : IIR_Expression (pos, subtype, static_level),
    first_actual (first_actual),
    set (set)
    { }

  tree_kind kind ();
};

struct VAUL_GenAssocElem : IIR_Root {
  pVAUL_GenAssocElem next;

  VAUL_GenAssocElem (pIIR_PosInfo pos, pVAUL_GenAssocElem next) 
  : IIR_Root (pos),
    next (next)
    { }

  tree_kind kind ();
};

struct VAUL_NamedAssocElem : VAUL_GenAssocElem {
  pVAUL_Name formal;
  pIIR_Expression actual;
  vaul_decl_set* ifts_decls;
  IR_Kind ifts_kind;
  pVAUL_SimpleName ifts_arg_name;

  VAUL_NamedAssocElem (pIIR_PosInfo pos, pVAUL_GenAssocElem next, pVAUL_Name formal, pIIR_Expression actual, vaul_decl_set* ifts_decls, IR_Kind ifts_kind, pVAUL_SimpleName ifts_arg_name) 
  : VAUL_GenAssocElem (pos, next),
    formal (formal),
    actual (actual),
    ifts_decls (ifts_decls),
    ifts_kind (ifts_kind),
    ifts_arg_name (ifts_arg_name)
    { }

  tree_kind kind ();
};

struct VAUL_SubtypeAssocElem : VAUL_GenAssocElem {
  pIIR_Type type;

  VAUL_SubtypeAssocElem (pIIR_PosInfo pos, pVAUL_GenAssocElem next, pIIR_Type type) 
  : VAUL_GenAssocElem (pos, next),
    type (type)
    { }

  tree_kind kind ();
};

struct VAUL_RangeAssocElem : VAUL_GenAssocElem {
  pIIR_Range range;

  VAUL_RangeAssocElem (pIIR_PosInfo pos, pVAUL_GenAssocElem next, pIIR_Range range) 
  : VAUL_GenAssocElem (pos, next),
    range (range)
    { }

  tree_kind kind ();
};

struct VAUL_AmbgArrayLitRef : IIR_Expression {
  pIIR_StringLiteral value;

  VAUL_AmbgArrayLitRef (pIIR_PosInfo pos, pIIR_Type subtype, IR_StaticLevel static_level, pIIR_StringLiteral value) 
  : IIR_Expression (pos, subtype, static_level),
    value (value)
    { }

  tree_kind kind ();
};

struct VAUL_AmbgNullExpr : IIR_Expression {

  VAUL_AmbgNullExpr (pIIR_PosInfo pos, pIIR_Type subtype, IR_StaticLevel static_level) 
  : IIR_Expression (pos, subtype, static_level)
    { }

  tree_kind kind ();
};

struct VAUL_AmbgEnumLitRef : IIR_Expression {
  vaul_decl_set* set;

  VAUL_AmbgEnumLitRef (pIIR_PosInfo pos, pIIR_Type subtype, IR_StaticLevel static_level, vaul_decl_set* set) 
  : IIR_Expression (pos, subtype, static_level),
    set (set)
    { }

  tree_kind kind ();
};

struct VAUL_AttributeSpec : IIR_Root {
  pIIR_Identifier attr_desig;
  pVAUL_EntitySpec entities;
  pIIR_Expression value;

  VAUL_AttributeSpec (pIIR_PosInfo pos, pIIR_Identifier attr_desig, pVAUL_EntitySpec entities, pIIR_Expression value) 
  : IIR_Root (pos),
    attr_desig (attr_desig),
    entities (entities),
    value (value)
    { }

  tree_kind kind ();
};

struct VAUL_EntitySpec : IIR_Root {
  pVAUL_EntityNameList names;
  IR_Kind entity_class;

  VAUL_EntitySpec (pIIR_PosInfo pos, pVAUL_EntityNameList names, IR_Kind entity_class) 
  : IIR_Root (pos),
    names (names),
    entity_class (entity_class)
    { }

  tree_kind kind ();
};

struct VAUL_EntityNameList : IIR_Root {

  VAUL_EntityNameList (pIIR_PosInfo pos) 
  : IIR_Root (pos)
    { }

  tree_kind kind ();
};

struct VAUL_EntityNameList_Ids : VAUL_EntityNameList {
  pVAUL_DesigList ids;

  VAUL_EntityNameList_Ids (pIIR_PosInfo pos, pVAUL_DesigList ids) 
  : VAUL_EntityNameList (pos),
    ids (ids)
    { }

  tree_kind kind ();
};

struct VAUL_EntityNameList_ALL : VAUL_EntityNameList {

  VAUL_EntityNameList_ALL (pIIR_PosInfo pos) 
  : VAUL_EntityNameList (pos)
    { }

  tree_kind kind ();
};

struct VAUL_EntityNameList_OTHERS : VAUL_EntityNameList {

  VAUL_EntityNameList_OTHERS (pIIR_PosInfo pos) 
  : VAUL_EntityNameList (pos)
    { }

  tree_kind kind ();
};

struct VAUL_AmbgAggregate : IIR_Expression {
  pVAUL_ElemAssoc first_assoc;

  VAUL_AmbgAggregate (pIIR_PosInfo pos, pIIR_Type subtype, IR_StaticLevel static_level, pVAUL_ElemAssoc first_assoc) 
  : IIR_Expression (pos, subtype, static_level),
    first_assoc (first_assoc)
    { }

  tree_kind kind ();
};

struct VAUL_ArtificialAmbgAggregate : VAUL_AmbgAggregate {

  VAUL_ArtificialAmbgAggregate (pIIR_PosInfo pos, pIIR_Type subtype, IR_StaticLevel static_level, pVAUL_ElemAssoc first_assoc) 
  : VAUL_AmbgAggregate (pos, subtype, static_level, first_assoc)
    { }

  tree_kind kind ();
};

struct VAUL_ElemAssoc : IIR_Root {
  pVAUL_ElemAssoc next;
  pIIR_ChoiceList choices;
  pIIR_Expression actual;

  VAUL_ElemAssoc (pIIR_PosInfo pos, pVAUL_ElemAssoc next, pIIR_ChoiceList choices, pIIR_Expression actual) 
  : IIR_Root (pos),
    next (next),
    choices (choices),
    actual (actual)
    { }

  tree_kind kind ();
};

struct VAUL_ChoiceByName : IIR_Choice {
  pVAUL_Name name;

  VAUL_ChoiceByName (pIIR_PosInfo pos, pVAUL_Name name) 
  : IIR_Choice (pos),
    name (name)
    { }

  tree_kind kind ();
};

struct VAUL_IterationScheme : IIR_Root {

  VAUL_IterationScheme (pIIR_PosInfo pos) 
  : IIR_Root (pos)
    { }

  tree_kind kind ();
};

struct VAUL_IfScheme : VAUL_IterationScheme {
  pIIR_Expression condition;

  VAUL_IfScheme (pIIR_PosInfo pos, pIIR_Expression condition) 
  : VAUL_IterationScheme (pos),
    condition (condition)
    { }

  tree_kind kind ();
};

struct VAUL_WhileScheme : VAUL_IterationScheme {
  pIIR_Expression condition;

  VAUL_WhileScheme (pIIR_PosInfo pos, pIIR_Expression condition) 
  : VAUL_IterationScheme (pos),
    condition (condition)
    { }

  tree_kind kind ();
};

struct VAUL_ForScheme : VAUL_IterationScheme {
  pIIR_Identifier var;
  pIIR_Type range;

  VAUL_ForScheme (pIIR_PosInfo pos, pIIR_Identifier var, pIIR_Type range) 
  : VAUL_IterationScheme (pos),
    var (var),
    range (range)
    { }

  tree_kind kind ();
};

struct VAUL_ConfigSpec : IIR_Root {
  pVAUL_ComponentSpec comps;
  pIIR_BindingIndication binding;
  pVAUL_ConfigSpec next;

  VAUL_ConfigSpec (pIIR_PosInfo pos, pVAUL_ComponentSpec comps, pIIR_BindingIndication binding, pVAUL_ConfigSpec next) 
  : IIR_Root (pos),
    comps (comps),
    binding (binding),
    next (next)
    { }

  tree_kind kind ();
};

struct VAUL_ComponentSpec : IIR_Root {
  pVAUL_InstList ids;
  pIIR_ComponentDeclaration comp;

  VAUL_ComponentSpec (pIIR_PosInfo pos, pVAUL_InstList ids, pIIR_ComponentDeclaration comp) 
  : IIR_Root (pos),
    ids (ids),
    comp (comp)
    { }

  tree_kind kind ();
};

struct VAUL_InstList : IIR_Root {

  VAUL_InstList (pIIR_PosInfo pos) 
  : IIR_Root (pos)
    { }

  tree_kind kind ();
};

struct VAUL_InstList_Ids : VAUL_InstList {
  pIIR_IdentifierList ids;

  VAUL_InstList_Ids (pIIR_PosInfo pos, pIIR_IdentifierList ids) 
  : VAUL_InstList (pos),
    ids (ids)
    { }

  tree_kind kind ();
};

struct VAUL_InstList_ALL : VAUL_InstList {

  VAUL_InstList_ALL (pIIR_PosInfo pos) 
  : VAUL_InstList (pos)
    { }

  tree_kind kind ();
};

struct VAUL_InstList_OTHERS : VAUL_InstList {

  VAUL_InstList_OTHERS (pIIR_PosInfo pos) 
  : VAUL_InstList (pos)
    { }

  tree_kind kind ();
};

struct VAUL_IncrementalBindingIndic : IIR_Root {
  pIIR_DeclarativeRegion unit;
  pVAUL_NamedAssocElem generic_assoc;
  pVAUL_NamedAssocElem port_assoc;

  VAUL_IncrementalBindingIndic (pIIR_PosInfo pos, pIIR_DeclarativeRegion unit, pVAUL_NamedAssocElem generic_assoc, pVAUL_NamedAssocElem port_assoc) 
  : IIR_Root (pos),
    unit (unit),
    generic_assoc (generic_assoc),
    port_assoc (port_assoc)
    { }

  tree_kind kind ();
};

struct VAUL_DeclCache : tree_base_node {
  pVAUL_DeclCache next;
  vaul_decl_set* set;
  pIIR_TextLiteral id;
  pIIR_Declaration scope;
  bool by_sel;

  VAUL_DeclCache (pVAUL_DeclCache next, vaul_decl_set* set, pIIR_TextLiteral id, pIIR_Declaration scope, bool by_sel) 
  : next (next),
    set (set),
    id (id),
    scope (scope),
    by_sel (by_sel)
    { }

  tree_kind kind ();
};

struct VAUL_FilenameAndMode : tree_base_node {
  pIIR_Expression name;
  IR_Mode mode;

  VAUL_FilenameAndMode (pIIR_Expression name, IR_Mode mode) 
  : name (name),
    mode (mode)
    { }

  tree_kind kind ();
};

struct vaul_IIR_DeclarativeRegion_ext : tree_prop {
  vaul_IIR_DeclarativeRegion_ext ();
  tree_prop_info *get_info ();
  pIIR_DeclarationList tail;
  vaul_id_set decls_in_flight;
};

struct vaul_IIR_DeclarativeRegion_ext *get_vaul_ext (pIIR_DeclarativeRegion n);
static inline pIIR_DeclarationList& tail (pIIR_DeclarativeRegion n) { return get_vaul_ext (n)->tail; }
static inline vaul_id_set& decls_in_flight (pIIR_DeclarativeRegion n) { return get_vaul_ext (n)->decls_in_flight; }

struct vaul_IIR_SimpleReference_ext : tree_prop {
  vaul_IIR_SimpleReference_ext ();
  tree_prop_info *get_info ();
  pVAUL_Name simple_reference_name;
};

struct vaul_IIR_SimpleReference_ext *get_vaul_ext (pIIR_SimpleReference n);
static inline pVAUL_Name& simple_reference_name (pIIR_SimpleReference n) { return get_vaul_ext (n)->simple_reference_name; }

struct vaul_IIR_ChoiceByRange_ext : tree_prop {
  vaul_IIR_ChoiceByRange_ext ();
  tree_prop_info *get_info ();
  bool actual_is_slice;
};

struct vaul_IIR_ChoiceByRange_ext *get_vaul_ext (pIIR_ChoiceByRange n);
static inline bool& actual_is_slice (pIIR_ChoiceByRange n) { return get_vaul_ext (n)->actual_is_slice; }

struct vaul_IIR_BlockStatement_ext : tree_prop {
  vaul_IIR_BlockStatement_ext ();
  tree_prop_info *get_info ();
  pVAUL_ConfigSpec config_specs;
};

struct vaul_IIR_BlockStatement_ext *get_vaul_ext (pIIR_BlockStatement n);
static inline pVAUL_ConfigSpec& config_specs (pIIR_BlockStatement n) { return get_vaul_ext (n)->config_specs; }

struct vaul_IIR_ConfigurationSpecification_ext : tree_prop {
  vaul_IIR_ConfigurationSpecification_ext ();
  tree_prop_info *get_info ();
  bool bound_by_name;
};

struct vaul_IIR_ConfigurationSpecification_ext *get_vaul_ext (pIIR_ConfigurationSpecification n);
static inline bool& bound_by_name (pIIR_ConfigurationSpecification n) { return get_vaul_ext (n)->bound_by_name; }

struct vaul_IIR_ComponentConfiguration_ext : tree_prop {
  vaul_IIR_ComponentConfiguration_ext ();
  tree_prop_info *get_info ();
  bool bound_by_name;
};

struct vaul_IIR_ComponentConfiguration_ext *get_vaul_ext (pIIR_ComponentConfiguration n);
static inline bool& bound_by_name (pIIR_ComponentConfiguration n) { return get_vaul_ext (n)->bound_by_name; }

struct vaul_node_creator : vaul_node_creator_base {
  pIIR_ConcurrentGenerateIfStatement mIIR_ConcurrentGenerateIfStatement (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_ConcurrentStatementList concurrent_statement_part, pIIR_Expression condition);
  pIIR_ConcurrentGenerateIfStatement mIIR_ConcurrentGenerateIfStatement (int lineno, pIIR_TextLiteral declarator, pIIR_ConcurrentStatementList concurrent_statement_part, pIIR_Expression condition);
  pIIR_ConcurrentGenerateForStatement mIIR_ConcurrentGenerateForStatement (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_ConcurrentStatementList concurrent_statement_part, pIIR_ConstantDeclaration generate_parameter_specification);
  pIIR_ConcurrentGenerateForStatement mIIR_ConcurrentGenerateForStatement (int lineno, pIIR_TextLiteral declarator, pIIR_ConcurrentStatementList concurrent_statement_part, pIIR_ConstantDeclaration generate_parameter_specification);
  pIIR_ConcurrentGenerateStatement mIIR_ConcurrentGenerateStatement (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_ConcurrentStatementList concurrent_statement_part);
  pIIR_ConcurrentGenerateStatement mIIR_ConcurrentGenerateStatement (int lineno, pIIR_TextLiteral declarator, pIIR_ConcurrentStatementList concurrent_statement_part);
  pIIR_ComponentInstantiationStatement mIIR_ComponentInstantiationStatement (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_BindingIndication binding, pIIR_BindingIndication configuration);
  pIIR_ComponentInstantiationStatement mIIR_ComponentInstantiationStatement (int lineno, pIIR_TextLiteral declarator, pIIR_BindingIndication binding, pIIR_BindingIndication configuration);
  pIIR_SensitizedProcessStatement mIIR_SensitizedProcessStatement (pIIR_PosInfo pos, pIIR_TextLiteral declarator, bool postponed, pIIR_SequentialStatementList process_statement_part, pIIR_ExpressionList sensitivity_list);
  pIIR_SensitizedProcessStatement mIIR_SensitizedProcessStatement (int lineno, pIIR_TextLiteral declarator, bool postponed, pIIR_SequentialStatementList process_statement_part, pIIR_ExpressionList sensitivity_list);
  pIIR_ImplicitProcessStatement mIIR_ImplicitProcessStatement (pIIR_PosInfo pos, pIIR_TextLiteral declarator, bool postponed, pIIR_SequentialStatementList process_statement_part);
  pIIR_ImplicitProcessStatement mIIR_ImplicitProcessStatement (int lineno, pIIR_TextLiteral declarator, bool postponed, pIIR_SequentialStatementList process_statement_part);
  pIIR_ProcessStatement mIIR_ProcessStatement (pIIR_PosInfo pos, pIIR_TextLiteral declarator, bool postponed, pIIR_SequentialStatementList process_statement_part);
  pIIR_ProcessStatement mIIR_ProcessStatement (int lineno, pIIR_TextLiteral declarator, bool postponed, pIIR_SequentialStatementList process_statement_part);
  pIIR_BlockStatement mIIR_BlockStatement (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Expression guard_expression, pIIR_ConfigurationSpecificationList configuration_specifications);
  pIIR_BlockStatement mIIR_BlockStatement (int lineno, pIIR_TextLiteral declarator, pIIR_Expression guard_expression, pIIR_ConfigurationSpecificationList configuration_specifications);
  pIIR_ConcurrentStatement mIIR_ConcurrentStatement (pIIR_PosInfo pos, pIIR_TextLiteral declarator);
  pIIR_ConcurrentStatement mIIR_ConcurrentStatement (int lineno, pIIR_TextLiteral declarator);
  pIIR_NullStatement mIIR_NullStatement (pIIR_PosInfo pos);
  pIIR_NullStatement mIIR_NullStatement (int lineno);
  pIIR_ReturnStatement mIIR_ReturnStatement (pIIR_PosInfo pos, pIIR_SubprogramDeclaration enclosing_subprogram, pIIR_Expression return_expression);
  pIIR_ReturnStatement mIIR_ReturnStatement (int lineno, pIIR_SubprogramDeclaration enclosing_subprogram, pIIR_Expression return_expression);
  pIIR_ExitStatement mIIR_ExitStatement (pIIR_PosInfo pos, pIIR_LoopStatement loop, pIIR_Expression condition);
  pIIR_ExitStatement mIIR_ExitStatement (int lineno, pIIR_LoopStatement loop, pIIR_Expression condition);
  pIIR_NextStatement mIIR_NextStatement (pIIR_PosInfo pos, pIIR_LoopStatement loop, pIIR_Expression condition);
  pIIR_NextStatement mIIR_NextStatement (int lineno, pIIR_LoopStatement loop, pIIR_Expression condition);
  pIIR_LoopControlStatement mIIR_LoopControlStatement (pIIR_PosInfo pos, pIIR_LoopStatement loop, pIIR_Expression condition);
  pIIR_LoopControlStatement mIIR_LoopControlStatement (int lineno, pIIR_LoopStatement loop, pIIR_Expression condition);
  pIIR_WhileLoopStatement mIIR_WhileLoopStatement (pIIR_PosInfo pos, pIIR_SequentialStatementList sequence_of_statements, pIIR_LoopDeclarativeRegion declarative_region, pIIR_Expression condition);
  pIIR_WhileLoopStatement mIIR_WhileLoopStatement (int lineno, pIIR_SequentialStatementList sequence_of_statements, pIIR_LoopDeclarativeRegion declarative_region, pIIR_Expression condition);
  pIIR_ForLoopStatement mIIR_ForLoopStatement (pIIR_PosInfo pos, pIIR_SequentialStatementList sequence_of_statements, pIIR_LoopDeclarativeRegion declarative_region, pIIR_ConstantDeclaration iterator);
  pIIR_ForLoopStatement mIIR_ForLoopStatement (int lineno, pIIR_SequentialStatementList sequence_of_statements, pIIR_LoopDeclarativeRegion declarative_region, pIIR_ConstantDeclaration iterator);
  pIIR_LoopStatement mIIR_LoopStatement (pIIR_PosInfo pos, pIIR_SequentialStatementList sequence_of_statements, pIIR_LoopDeclarativeRegion declarative_region);
  pIIR_LoopStatement mIIR_LoopStatement (int lineno, pIIR_SequentialStatementList sequence_of_statements, pIIR_LoopDeclarativeRegion declarative_region);
  pIIR_CaseStatement mIIR_CaseStatement (pIIR_PosInfo pos, pIIR_Expression expression, pIIR_CaseStatementAlternativeList case_statement_alternatives);
  pIIR_CaseStatement mIIR_CaseStatement (int lineno, pIIR_Expression expression, pIIR_CaseStatementAlternativeList case_statement_alternatives);
  pIIR_IfStatement mIIR_IfStatement (pIIR_PosInfo pos, pIIR_Expression condition, pIIR_SequentialStatementList then_sequence, pIIR_SequentialStatementList else_sequence);
  pIIR_IfStatement mIIR_IfStatement (int lineno, pIIR_Expression condition, pIIR_SequentialStatementList then_sequence, pIIR_SequentialStatementList else_sequence);
  pIIR_ProcedureCallStatement mIIR_ProcedureCallStatement (pIIR_PosInfo pos, pIIR_ProcedureDeclaration procedure, pIIR_AssociationList actual_parameter_part);
  pIIR_ProcedureCallStatement mIIR_ProcedureCallStatement (int lineno, pIIR_ProcedureDeclaration procedure, pIIR_AssociationList actual_parameter_part);
  pIIR_VariableAssignmentStatement mIIR_VariableAssignmentStatement (pIIR_PosInfo pos, pIIR_Expression target, pIIR_Expression expression);
  pIIR_VariableAssignmentStatement mIIR_VariableAssignmentStatement (int lineno, pIIR_Expression target, pIIR_Expression expression);
  pIIR_SignalAssignmentStatement mIIR_SignalAssignmentStatement (pIIR_PosInfo pos, pIIR_Expression target, IR_DelayMechanism delay_mechanism, pIIR_Expression reject_time_expression, pIIR_WaveformList waveform);
  pIIR_SignalAssignmentStatement mIIR_SignalAssignmentStatement (int lineno, pIIR_Expression target, IR_DelayMechanism delay_mechanism, pIIR_Expression reject_time_expression, pIIR_WaveformList waveform);
  pIIR_ReportStatement mIIR_ReportStatement (pIIR_PosInfo pos, pIIR_Expression report_expression, pIIR_Expression severity_expression);
  pIIR_ReportStatement mIIR_ReportStatement (int lineno, pIIR_Expression report_expression, pIIR_Expression severity_expression);
  pIIR_AssertionStatement mIIR_AssertionStatement (pIIR_PosInfo pos, pIIR_Expression assertion_condition, pIIR_Expression report_expression, pIIR_Expression severity_expression);
  pIIR_AssertionStatement mIIR_AssertionStatement (int lineno, pIIR_Expression assertion_condition, pIIR_Expression report_expression, pIIR_Expression severity_expression);
  pIIR_WaitStatement mIIR_WaitStatement (pIIR_PosInfo pos, pIIR_Expression condition_clause, pIIR_Expression timeout_clause, pIIR_ExpressionList sensitivity_list);
  pIIR_WaitStatement mIIR_WaitStatement (int lineno, pIIR_Expression condition_clause, pIIR_Expression timeout_clause, pIIR_ExpressionList sensitivity_list);
  pIIR_SequentialStatement mIIR_SequentialStatement (pIIR_PosInfo pos);
  pIIR_SequentialStatement mIIR_SequentialStatement (int lineno);
  pIIR_Attr_ArrayLENGTH mIIR_Attr_ArrayLENGTH (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_ArrayLENGTH mIIR_Attr_ArrayLENGTH (int lineno, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_ArrayASCENDING mIIR_Attr_ArrayASCENDING (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_ArrayASCENDING mIIR_Attr_ArrayASCENDING (int lineno, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_ArrayLOW mIIR_Attr_ArrayLOW (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_ArrayLOW mIIR_Attr_ArrayLOW (int lineno, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_ArrayHIGH mIIR_Attr_ArrayHIGH (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_ArrayHIGH mIIR_Attr_ArrayHIGH (int lineno, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_ArrayRIGHT mIIR_Attr_ArrayRIGHT (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_ArrayRIGHT mIIR_Attr_ArrayRIGHT (int lineno, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_ArrayLEFT mIIR_Attr_ArrayLEFT (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_ArrayLEFT mIIR_Attr_ArrayLEFT (int lineno, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_AttrArrayFunc mIIR_AttrArrayFunc (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_AttrArrayFunc mIIR_AttrArrayFunc (int lineno, pIIR_Type subtype, pIIR_Expression array, pIIR_Type array_type, int index);
  pIIR_Attr_RIGHTOF mIIR_Attr_RIGHTOF (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_RIGHTOF mIIR_Attr_RIGHTOF (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_LEFTOF mIIR_Attr_LEFTOF (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_LEFTOF mIIR_Attr_LEFTOF (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_PRED mIIR_Attr_PRED (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_PRED mIIR_Attr_PRED (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_SUCC mIIR_Attr_SUCC (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_SUCC mIIR_Attr_SUCC (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_VAL mIIR_Attr_VAL (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_VAL mIIR_Attr_VAL (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_POS mIIR_Attr_POS (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_POS mIIR_Attr_POS (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_VALUE mIIR_Attr_VALUE (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_VALUE mIIR_Attr_VALUE (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_IMAGE mIIR_Attr_IMAGE (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_IMAGE mIIR_Attr_IMAGE (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_AttrTypeFunc mIIR_AttrTypeFunc (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_AttrTypeFunc mIIR_AttrTypeFunc (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_LENGTH mIIR_Attr_LENGTH (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_LENGTH mIIR_Attr_LENGTH (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_ASCENDING mIIR_Attr_ASCENDING (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_ASCENDING mIIR_Attr_ASCENDING (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_HIGH mIIR_Attr_HIGH (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_HIGH mIIR_Attr_HIGH (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_LOW mIIR_Attr_LOW (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_LOW mIIR_Attr_LOW (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_RIGHT mIIR_Attr_RIGHT (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_RIGHT mIIR_Attr_RIGHT (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_LEFT mIIR_Attr_LEFT (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_Attr_LEFT mIIR_Attr_LEFT (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_AttrTypeValue mIIR_AttrTypeValue (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_AttrTypeValue mIIR_AttrTypeValue (int lineno, pIIR_Type subtype, pIIR_Type prefix, pIIR_Expression argument);
  pIIR_ValueAttr mIIR_ValueAttr (pIIR_PosInfo pos, pIIR_Type subtype);
  pIIR_ValueAttr mIIR_ValueAttr (int lineno, pIIR_Type subtype);
  pIIR_Attr_DRIVING_VALUE mIIR_Attr_DRIVING_VALUE (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_DRIVING_VALUE mIIR_Attr_DRIVING_VALUE (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_DRIVING mIIR_Attr_DRIVING (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_DRIVING mIIR_Attr_DRIVING (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_LAST_VALUE mIIR_Attr_LAST_VALUE (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_LAST_VALUE mIIR_Attr_LAST_VALUE (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_LAST_ACTIVE mIIR_Attr_LAST_ACTIVE (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_LAST_ACTIVE mIIR_Attr_LAST_ACTIVE (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_LAST_EVENT mIIR_Attr_LAST_EVENT (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_LAST_EVENT mIIR_Attr_LAST_EVENT (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_ACTIVE mIIR_Attr_ACTIVE (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_ACTIVE mIIR_Attr_ACTIVE (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_EVENT mIIR_Attr_EVENT (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_EVENT mIIR_Attr_EVENT (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_AttrSigFunc mIIR_AttrSigFunc (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_AttrSigFunc mIIR_AttrSigFunc (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_FunctionAttr mIIR_FunctionAttr (pIIR_PosInfo pos, pIIR_Type subtype);
  pIIR_FunctionAttr mIIR_FunctionAttr (int lineno, pIIR_Type subtype);
  pIIR_Attr_TRANSACTION mIIR_Attr_TRANSACTION (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_TRANSACTION mIIR_Attr_TRANSACTION (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_Attr_QUIET mIIR_Attr_QUIET (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal, pIIR_Expression duration);
  pIIR_Attr_QUIET mIIR_Attr_QUIET (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal, pIIR_Expression duration);
  pIIR_Attr_STABLE mIIR_Attr_STABLE (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal, pIIR_Expression duration);
  pIIR_Attr_STABLE mIIR_Attr_STABLE (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal, pIIR_Expression duration);
  pIIR_Attr_DELAYED mIIR_Attr_DELAYED (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal, pIIR_Expression delay);
  pIIR_Attr_DELAYED mIIR_Attr_DELAYED (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal, pIIR_Expression delay);
  pIIR_SignalAttr mIIR_SignalAttr (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_SignalAttr mIIR_SignalAttr (int lineno, pIIR_Type subtype, pIIR_ObjectReference signal);
  pIIR_SliceReference mIIR_SliceReference (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression array, pIIR_Range range);
  pIIR_SliceReference mIIR_SliceReference (int lineno, pIIR_Type subtype, pIIR_Expression array, pIIR_Range range);
  pIIR_ArrayReference mIIR_ArrayReference (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression array, pIIR_ExpressionList indices);
  pIIR_ArrayReference mIIR_ArrayReference (int lineno, pIIR_Type subtype, pIIR_Expression array, pIIR_ExpressionList indices);
  pIIR_GenericArrayReference mIIR_GenericArrayReference (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression array);
  pIIR_GenericArrayReference mIIR_GenericArrayReference (int lineno, pIIR_Type subtype, pIIR_Expression array);
  pIIR_RecordReference mIIR_RecordReference (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression record, pIIR_ElementDeclaration element);
  pIIR_RecordReference mIIR_RecordReference (int lineno, pIIR_Type subtype, pIIR_Expression record, pIIR_ElementDeclaration element);
  pIIR_AccessReference mIIR_AccessReference (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Expression access);
  pIIR_AccessReference mIIR_AccessReference (int lineno, pIIR_Type subtype, pIIR_Expression access);
  pIIR_SimpleReference mIIR_SimpleReference (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ObjectDeclaration object);
  pIIR_SimpleReference mIIR_SimpleReference (int lineno, pIIR_Type subtype, pIIR_ObjectDeclaration object);
  pIIR_ObjectReference mIIR_ObjectReference (pIIR_PosInfo pos, pIIR_Type subtype);
  pIIR_ObjectReference mIIR_ObjectReference (int lineno, pIIR_Type subtype);
  pIIR_OpenExpression mIIR_OpenExpression (pIIR_PosInfo pos, pIIR_Type subtype);
  pIIR_OpenExpression mIIR_OpenExpression (int lineno, pIIR_Type subtype);
  pIIR_Allocator mIIR_Allocator (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type type_mark, pIIR_Expression value);
  pIIR_Allocator mIIR_Allocator (int lineno, pIIR_Type subtype, pIIR_Type type_mark, pIIR_Expression value);
  pIIR_TypeConversion mIIR_TypeConversion (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type type_mark, pIIR_Expression expression);
  pIIR_TypeConversion mIIR_TypeConversion (int lineno, pIIR_Type subtype, pIIR_Type type_mark, pIIR_Expression expression);
  pIIR_QualifiedExpression mIIR_QualifiedExpression (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_Type type_mark, pIIR_Expression expression);
  pIIR_QualifiedExpression mIIR_QualifiedExpression (int lineno, pIIR_Type subtype, pIIR_Type type_mark, pIIR_Expression expression);
  pIIR_FunctionCall mIIR_FunctionCall (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_FunctionDeclaration function, pIIR_AssociationList parameter_association_list);
  pIIR_FunctionCall mIIR_FunctionCall (int lineno, pIIR_Type subtype, pIIR_FunctionDeclaration function, pIIR_AssociationList parameter_association_list);
  pIIR_ArtificialArrayAggregate mIIR_ArtificialArrayAggregate (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_IndexedAssociationList indexed_association_list);
  pIIR_ArtificialArrayAggregate mIIR_ArtificialArrayAggregate (int lineno, pIIR_Type subtype, pIIR_IndexedAssociationList indexed_association_list);
  pIIR_ArrayAggregate mIIR_ArrayAggregate (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_IndexedAssociationList indexed_association_list);
  pIIR_ArrayAggregate mIIR_ArrayAggregate (int lineno, pIIR_Type subtype, pIIR_IndexedAssociationList indexed_association_list);
  pIIR_ArtificialRecordAggregate mIIR_ArtificialRecordAggregate (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ElementAssociationList element_association_list);
  pIIR_ArtificialRecordAggregate mIIR_ArtificialRecordAggregate (int lineno, pIIR_Type subtype, pIIR_ElementAssociationList element_association_list);
  pIIR_RecordAggregate mIIR_RecordAggregate (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ElementAssociationList element_association_list);
  pIIR_RecordAggregate mIIR_RecordAggregate (int lineno, pIIR_Type subtype, pIIR_ElementAssociationList element_association_list);
  pIIR_Aggregate mIIR_Aggregate (pIIR_PosInfo pos, pIIR_Type subtype);
  pIIR_Aggregate mIIR_Aggregate (int lineno, pIIR_Type subtype);
  pIIR_NullExpression mIIR_NullExpression (pIIR_PosInfo pos, pIIR_Type subtype);
  pIIR_NullExpression mIIR_NullExpression (int lineno, pIIR_Type subtype);
  pIIR_EnumLiteralReference mIIR_EnumLiteralReference (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_EnumerationLiteral value);
  pIIR_EnumLiteralReference mIIR_EnumLiteralReference (int lineno, pIIR_Type subtype, pIIR_EnumerationLiteral value);
  pIIR_ArrayLiteralExpression mIIR_ArrayLiteralExpression (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_StringLiteral value);
  pIIR_ArrayLiteralExpression mIIR_ArrayLiteralExpression (int lineno, pIIR_Type subtype, pIIR_StringLiteral value);
  pIIR_PhysicalLiteral mIIR_PhysicalLiteral (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_AbstractLiteral value, pIIR_PhysicalUnit unit);
  pIIR_PhysicalLiteral mIIR_PhysicalLiteral (int lineno, pIIR_Type subtype, pIIR_AbstractLiteral value, pIIR_PhysicalUnit unit);
  pIIR_AbstractLiteralExpression mIIR_AbstractLiteralExpression (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_AbstractLiteral value);
  pIIR_AbstractLiteralExpression mIIR_AbstractLiteralExpression (int lineno, pIIR_Type subtype, pIIR_AbstractLiteral value);
  pIIR_Expression mIIR_Expression (pIIR_PosInfo pos, pIIR_Type subtype);
  pIIR_Expression mIIR_Expression (int lineno, pIIR_Type subtype);
  pIIR_UseClause mIIR_UseClause (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Declaration used_unit);
  pIIR_UseClause mIIR_UseClause (int lineno, pIIR_TextLiteral declarator, pIIR_Declaration used_unit);
  pIIR_LibraryClause mIIR_LibraryClause (pIIR_PosInfo pos, pIIR_TextLiteral declarator);
  pIIR_LibraryClause mIIR_LibraryClause (int lineno, pIIR_TextLiteral declarator);
  pIIR_Label mIIR_Label (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_SequentialStatement statement);
  pIIR_Label mIIR_Label (int lineno, pIIR_TextLiteral declarator, pIIR_SequentialStatement statement);
  pIIR_DisconnectSpecification mIIR_DisconnectSpecification (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type type_mark, pIIR_Expression time_expression, pIIR_ObjectReference guarded_signal);
  pIIR_DisconnectSpecification mIIR_DisconnectSpecification (int lineno, pIIR_TextLiteral declarator, pIIR_Type type_mark, pIIR_Expression time_expression, pIIR_ObjectReference guarded_signal);
  pIIR_ConfigurationSpecification mIIR_ConfigurationSpecification (pIIR_PosInfo pos, pIIR_Identifier label, pIIR_ComponentDeclaration component, pIIR_BindingIndication binding);
  pIIR_ConfigurationSpecification mIIR_ConfigurationSpecification (int lineno, pIIR_Identifier label, pIIR_ComponentDeclaration component, pIIR_BindingIndication binding);
  pIIR_BindingIndication mIIR_BindingIndication (pIIR_PosInfo pos, pIIR_DeclarativeRegion unit, pIIR_AssociationList generic_map_list, pIIR_AssociationList port_map_list);
  pIIR_BindingIndication mIIR_BindingIndication (int lineno, pIIR_DeclarativeRegion unit, pIIR_AssociationList generic_map_list, pIIR_AssociationList port_map_list);
  pIIR_PhysicalUnit mIIR_PhysicalUnit (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Expression multiplier, pIIR_PhysicalUnit unit_name, pIIR_PhysicalType type, int unit_pos);
  pIIR_PhysicalUnit mIIR_PhysicalUnit (int lineno, pIIR_TextLiteral declarator, pIIR_Expression multiplier, pIIR_PhysicalUnit unit_name, pIIR_PhysicalType type, int unit_pos);
  pIIR_ComponentConfiguration mIIR_ComponentConfiguration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_LibraryUnit entity_aspect, pIIR_ComponentInstantiationList instantiation_list, pIIR_AssociationList generic_map_aspect, pIIR_AssociationList port_map_aspect, pIIR_BlockConfiguration block_config);
  pIIR_ComponentConfiguration mIIR_ComponentConfiguration (int lineno, pIIR_TextLiteral declarator, pIIR_LibraryUnit entity_aspect, pIIR_ComponentInstantiationList instantiation_list, pIIR_AssociationList generic_map_aspect, pIIR_AssociationList port_map_aspect, pIIR_BlockConfiguration block_config);
  pIIR_BlockConfiguration mIIR_BlockConfiguration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_DeclarativeRegion block_specification, pIIR_DeclarationList use_clause_list, pIIR_ConfigurationItemList configuration_item_list);
  pIIR_BlockConfiguration mIIR_BlockConfiguration (int lineno, pIIR_TextLiteral declarator, pIIR_DeclarativeRegion block_specification, pIIR_DeclarationList use_clause_list, pIIR_ConfigurationItemList configuration_item_list);
  pIIR_ConfigurationItem mIIR_ConfigurationItem (pIIR_PosInfo pos, pIIR_TextLiteral declarator);
  pIIR_ConfigurationItem mIIR_ConfigurationItem (int lineno, pIIR_TextLiteral declarator);
  pIIR_ConfigurationDeclaration mIIR_ConfigurationDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_EntityDeclaration entity);
  pIIR_ConfigurationDeclaration mIIR_ConfigurationDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_EntityDeclaration entity);
  pIIR_ConfigurationDeclaration mIIR_ConfigurationDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_BlockConfiguration block_configuration, pIIR_EntityDeclaration entity);
  pIIR_ConfigurationDeclaration mIIR_ConfigurationDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_BlockConfiguration block_configuration, pIIR_EntityDeclaration entity);
  pIIR_PackageBodyDeclaration mIIR_PackageBodyDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_PackageDeclaration package);
  pIIR_PackageBodyDeclaration mIIR_PackageBodyDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_PackageDeclaration package);
  pIIR_PackageDeclaration mIIR_PackageDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator);
  pIIR_PackageDeclaration mIIR_PackageDeclaration (int lineno, pIIR_TextLiteral declarator);
  pIIR_ArchitectureRef mIIR_ArchitectureRef (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_EntityDeclaration entity, pIIR_TextLiteral architecture_name);
  pIIR_ArchitectureRef mIIR_ArchitectureRef (int lineno, pIIR_TextLiteral declarator, pIIR_EntityDeclaration entity, pIIR_TextLiteral architecture_name);
  pIIR_ArchitectureDeclaration mIIR_ArchitectureDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_EntityDeclaration entity);
  pIIR_ArchitectureDeclaration mIIR_ArchitectureDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_EntityDeclaration entity);
  pIIR_EntityDeclaration mIIR_EntityDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator);
  pIIR_EntityDeclaration mIIR_EntityDeclaration (int lineno, pIIR_TextLiteral declarator);
  pIIR_LibraryUnit mIIR_LibraryUnit (pIIR_PosInfo pos, pIIR_TextLiteral declarator);
  pIIR_LibraryUnit mIIR_LibraryUnit (int lineno, pIIR_TextLiteral declarator);
  pIIR_LibraryDeclaration mIIR_LibraryDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_LibraryUnitList primary_units);
  pIIR_LibraryDeclaration mIIR_LibraryDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_LibraryUnitList primary_units);
  pIIR_ComponentDeclaration mIIR_ComponentDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator);
  pIIR_ComponentDeclaration mIIR_ComponentDeclaration (int lineno, pIIR_TextLiteral declarator);
  pIIR_AttributeDeclaration mIIR_AttributeDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype);
  pIIR_AttributeDeclaration mIIR_AttributeDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype);
  pIIR_FileInterfaceDeclaration mIIR_FileInterfaceDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_Mode mode, bool bus);
  pIIR_FileInterfaceDeclaration mIIR_FileInterfaceDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_Mode mode, bool bus);
  pIIR_SignalInterfaceDeclaration mIIR_SignalInterfaceDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_Mode mode, bool bus, IR_SignalKind signal_kind);
  pIIR_SignalInterfaceDeclaration mIIR_SignalInterfaceDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_Mode mode, bool bus, IR_SignalKind signal_kind);
  pIIR_VariableInterfaceDeclaration mIIR_VariableInterfaceDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_Mode mode, bool bus);
  pIIR_VariableInterfaceDeclaration mIIR_VariableInterfaceDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_Mode mode, bool bus);
  pIIR_ConstantInterfaceDeclaration mIIR_ConstantInterfaceDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_Mode mode, bool bus);
  pIIR_ConstantInterfaceDeclaration mIIR_ConstantInterfaceDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_Mode mode, bool bus);
  pIIR_InterfaceDeclaration mIIR_InterfaceDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_Mode mode, bool bus);
  pIIR_InterfaceDeclaration mIIR_InterfaceDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_Mode mode, bool bus);
  pIIR_FileDeclaration mIIR_FileDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, pIIR_Expression file_open_expression, pIIR_Expression file_logical_name);
  pIIR_FileDeclaration mIIR_FileDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, pIIR_Expression file_open_expression, pIIR_Expression file_logical_name);
  pIIR_SignalDeclaration mIIR_SignalDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_SignalKind signal_kind);
  pIIR_SignalDeclaration mIIR_SignalDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_SignalKind signal_kind);
  pIIR_SharedVariableDeclaration mIIR_SharedVariableDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value);
  pIIR_SharedVariableDeclaration mIIR_SharedVariableDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value);
  pIIR_VariableDeclaration mIIR_VariableDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value);
  pIIR_VariableDeclaration mIIR_VariableDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value);
  pIIR_ConstantDeclaration mIIR_ConstantDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value);
  pIIR_ConstantDeclaration mIIR_ConstantDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value);
  pIIR_ObjectDeclaration mIIR_ObjectDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value);
  pIIR_ObjectDeclaration mIIR_ObjectDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value);
  pIIR_SubtypeDeclaration mIIR_SubtypeDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type type);
  pIIR_SubtypeDeclaration mIIR_SubtypeDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type type);
  pIIR_TypeDeclaration mIIR_TypeDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type type);
  pIIR_TypeDeclaration mIIR_TypeDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type type);
  pIIR_ElementDeclaration mIIR_ElementDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, int declaration_pos);
  pIIR_ElementDeclaration mIIR_ElementDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, int declaration_pos);
  pIIR_EnumerationLiteral mIIR_EnumerationLiteral (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_EnumerationType subtype, int enum_pos);
  pIIR_EnumerationLiteral mIIR_EnumerationLiteral (int lineno, pIIR_TextLiteral declarator, pIIR_EnumerationType subtype, int enum_pos);
  pIIR_PredefinedFunctionDeclaration mIIR_PredefinedFunctionDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_InterfaceList interface_declarations, bool pure, pIIR_Type return_type);
  pIIR_PredefinedFunctionDeclaration mIIR_PredefinedFunctionDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_InterfaceList interface_declarations, bool pure, pIIR_Type return_type);
  pIIR_FunctionDeclaration mIIR_FunctionDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_InterfaceList interface_declarations, bool pure, pIIR_Type return_type);
  pIIR_FunctionDeclaration mIIR_FunctionDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_InterfaceList interface_declarations, bool pure, pIIR_Type return_type);
  pIIR_PredefinedProcedureDeclaration mIIR_PredefinedProcedureDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_InterfaceList interface_declarations);
  pIIR_PredefinedProcedureDeclaration mIIR_PredefinedProcedureDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_InterfaceList interface_declarations);
  pIIR_ProcedureDeclaration mIIR_ProcedureDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_InterfaceList interface_declarations);
  pIIR_ProcedureDeclaration mIIR_ProcedureDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_InterfaceList interface_declarations);
  pIIR_SubprogramDeclaration mIIR_SubprogramDeclaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_InterfaceList interface_declarations);
  pIIR_SubprogramDeclaration mIIR_SubprogramDeclaration (int lineno, pIIR_TextLiteral declarator, pIIR_InterfaceList interface_declarations);
  pIIR_LoopDeclarativeRegion mIIR_LoopDeclarativeRegion (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_LoopStatement loop_statement);
  pIIR_LoopDeclarativeRegion mIIR_LoopDeclarativeRegion (int lineno, pIIR_TextLiteral declarator, pIIR_LoopStatement loop_statement);
  pIIR_DeclarativeRegion mIIR_DeclarativeRegion (pIIR_PosInfo pos, pIIR_TextLiteral declarator);
  pIIR_DeclarativeRegion mIIR_DeclarativeRegion (int lineno, pIIR_TextLiteral declarator);
  pIIR_Declaration mIIR_Declaration (pIIR_PosInfo pos, pIIR_TextLiteral declarator);
  pIIR_Declaration mIIR_Declaration (int lineno, pIIR_TextLiteral declarator);
  pIIR_ArraySubtype mIIR_ArraySubtype (pIIR_PosInfo pos, pIIR_Type base, pIIR_Type immediate_base, pIIR_FunctionDeclaration resolution_function, pIIR_TypeList constraint);
  pIIR_ArraySubtype mIIR_ArraySubtype (int lineno, pIIR_Type base, pIIR_Type immediate_base, pIIR_FunctionDeclaration resolution_function, pIIR_TypeList constraint);
  pIIR_ArrayType mIIR_ArrayType (pIIR_PosInfo pos, pIIR_TypeList index_types, pIIR_Type element_type);
  pIIR_ArrayType mIIR_ArrayType (int lineno, pIIR_TypeList index_types, pIIR_Type element_type);
  pIIR_FileType mIIR_FileType (pIIR_PosInfo pos, pIIR_Type type_mark);
  pIIR_FileType mIIR_FileType (int lineno, pIIR_Type type_mark);
  pIIR_AccessType mIIR_AccessType (pIIR_PosInfo pos, pIIR_Type designated_type);
  pIIR_AccessType mIIR_AccessType (int lineno, pIIR_Type designated_type);
  pIIR_RecordSubtype mIIR_RecordSubtype (pIIR_PosInfo pos, pIIR_Type base, pIIR_Type immediate_base, pIIR_FunctionDeclaration resolution_function);
  pIIR_RecordSubtype mIIR_RecordSubtype (int lineno, pIIR_Type base, pIIR_Type immediate_base, pIIR_FunctionDeclaration resolution_function);
  pIIR_RecordType mIIR_RecordType (pIIR_PosInfo pos, pIIR_ElementDeclarationList element_declarations);
  pIIR_RecordType mIIR_RecordType (int lineno, pIIR_ElementDeclarationList element_declarations);
  pIIR_CompositeType mIIR_CompositeType (pIIR_PosInfo pos);
  pIIR_CompositeType mIIR_CompositeType (int lineno);
  pIIR_PhysicalType mIIR_PhysicalType (pIIR_PosInfo pos, pIIR_PhysicalUnit primary_unit, pIIR_UnitList units);
  pIIR_PhysicalType mIIR_PhysicalType (int lineno, pIIR_PhysicalUnit primary_unit, pIIR_UnitList units);
  pIIR_FloatingType mIIR_FloatingType (pIIR_PosInfo pos);
  pIIR_FloatingType mIIR_FloatingType (int lineno);
  pIIR_IntegerType mIIR_IntegerType (pIIR_PosInfo pos);
  pIIR_IntegerType mIIR_IntegerType (int lineno);
  pIIR_EnumerationType mIIR_EnumerationType (pIIR_PosInfo pos, pIIR_EnumerationLiteralList enumeration_literals);
  pIIR_EnumerationType mIIR_EnumerationType (int lineno, pIIR_EnumerationLiteralList enumeration_literals);
  pIIR_ScalarSubtype mIIR_ScalarSubtype (pIIR_PosInfo pos, pIIR_Type base, pIIR_Type immediate_base, pIIR_FunctionDeclaration resolution_function, pIIR_Range range);
  pIIR_ScalarSubtype mIIR_ScalarSubtype (int lineno, pIIR_Type base, pIIR_Type immediate_base, pIIR_FunctionDeclaration resolution_function, pIIR_Range range);
  pIIR_ScalarType mIIR_ScalarType (pIIR_PosInfo pos);
  pIIR_ScalarType mIIR_ScalarType (int lineno);
  pIIR_Subtype mIIR_Subtype (pIIR_PosInfo pos, pIIR_Type base, pIIR_Type immediate_base, pIIR_FunctionDeclaration resolution_function);
  pIIR_Subtype mIIR_Subtype (int lineno, pIIR_Type base, pIIR_Type immediate_base, pIIR_FunctionDeclaration resolution_function);
  pIIR_Type mIIR_Type (pIIR_PosInfo pos);
  pIIR_Type mIIR_Type (int lineno);
  pIIR_Attr_ArrayREVERSE_RANGE mIIR_Attr_ArrayREVERSE_RANGE (pIIR_PosInfo pos, pIIR_Type type, pIIR_Expression array, pIIR_Type array_type, pIIR_Expression index);
  pIIR_Attr_ArrayREVERSE_RANGE mIIR_Attr_ArrayREVERSE_RANGE (int lineno, pIIR_Type type, pIIR_Expression array, pIIR_Type array_type, pIIR_Expression index);
  pIIR_Attr_ArrayRANGE mIIR_Attr_ArrayRANGE (pIIR_PosInfo pos, pIIR_Type type, pIIR_Expression array, pIIR_Type array_type, pIIR_Expression index);
  pIIR_Attr_ArrayRANGE mIIR_Attr_ArrayRANGE (int lineno, pIIR_Type type, pIIR_Expression array, pIIR_Type array_type, pIIR_Expression index);
  pIIR_ArrayRange mIIR_ArrayRange (pIIR_PosInfo pos, pIIR_Type type, pIIR_Expression array, pIIR_Type array_type, pIIR_Expression index);
  pIIR_ArrayRange mIIR_ArrayRange (int lineno, pIIR_Type type, pIIR_Expression array, pIIR_Type array_type, pIIR_Expression index);
  pIIR_ExplicitRange mIIR_ExplicitRange (pIIR_PosInfo pos, pIIR_Expression left, pIIR_Expression right, IR_Direction direction);
  pIIR_ExplicitRange mIIR_ExplicitRange (int lineno, pIIR_Expression left, pIIR_Expression right, IR_Direction direction);
  pIIR_Range mIIR_Range (pIIR_PosInfo pos);
  pIIR_Range mIIR_Range (int lineno);
  pIIR_IdentifierList mIIR_IdentifierList (pIIR_PosInfo pos, pIIR_Identifier first, pIIR_IdentifierList rest);
  pIIR_IdentifierList mIIR_IdentifierList (int lineno, pIIR_Identifier first, pIIR_IdentifierList rest);
  pIIR_ConfigurationSpecificationList mIIR_ConfigurationSpecificationList (pIIR_PosInfo pos, pIIR_ConfigurationSpecification first, pIIR_ConfigurationSpecificationList rest);
  pIIR_ConfigurationSpecificationList mIIR_ConfigurationSpecificationList (int lineno, pIIR_ConfigurationSpecification first, pIIR_ConfigurationSpecificationList rest);
  pIIR_ComponentInstantiationList mIIR_ComponentInstantiationList (pIIR_PosInfo pos, pIIR_ComponentInstantiationStatement first, pIIR_ComponentInstantiationList rest);
  pIIR_ComponentInstantiationList mIIR_ComponentInstantiationList (int lineno, pIIR_ComponentInstantiationStatement first, pIIR_ComponentInstantiationList rest);
  pIIR_ElementAssociationList mIIR_ElementAssociationList (pIIR_PosInfo pos, pIIR_ElementAssociation first, pIIR_ElementAssociationList rest);
  pIIR_ElementAssociationList mIIR_ElementAssociationList (int lineno, pIIR_ElementAssociation first, pIIR_ElementAssociationList rest);
  pIIR_IndexedAssociationList mIIR_IndexedAssociationList (pIIR_PosInfo pos, pIIR_IndexedAssociation first, pIIR_IndexedAssociationList rest);
  pIIR_IndexedAssociationList mIIR_IndexedAssociationList (int lineno, pIIR_IndexedAssociation first, pIIR_IndexedAssociationList rest);
  pIIR_ExpressionList mIIR_ExpressionList (pIIR_PosInfo pos, pIIR_Expression first, pIIR_ExpressionList rest);
  pIIR_ExpressionList mIIR_ExpressionList (int lineno, pIIR_Expression first, pIIR_ExpressionList rest);
  pIIR_TypeList mIIR_TypeList (pIIR_PosInfo pos, pIIR_Type first, pIIR_TypeList rest);
  pIIR_TypeList mIIR_TypeList (int lineno, pIIR_Type first, pIIR_TypeList rest);
  pIIR_WaveformList mIIR_WaveformList (pIIR_PosInfo pos, pIIR_WaveformElement first, pIIR_WaveformList rest);
  pIIR_WaveformList mIIR_WaveformList (int lineno, pIIR_WaveformElement first, pIIR_WaveformList rest);
  pIIR_UnitList mIIR_UnitList (pIIR_PosInfo pos, pIIR_PhysicalUnit first, pIIR_UnitList rest);
  pIIR_UnitList mIIR_UnitList (int lineno, pIIR_PhysicalUnit first, pIIR_UnitList rest);
  pIIR_SequentialStatementList mIIR_SequentialStatementList (pIIR_PosInfo pos, pIIR_SequentialStatement first, pIIR_SequentialStatementList rest);
  pIIR_SequentialStatementList mIIR_SequentialStatementList (int lineno, pIIR_SequentialStatement first, pIIR_SequentialStatementList rest);
  pIIR_LibraryUnitList mIIR_LibraryUnitList (pIIR_PosInfo pos, pIIR_LibraryUnit first, pIIR_LibraryUnitList rest);
  pIIR_LibraryUnitList mIIR_LibraryUnitList (int lineno, pIIR_LibraryUnit first, pIIR_LibraryUnitList rest);
  pIIR_InterfaceList mIIR_InterfaceList (pIIR_PosInfo pos, pIIR_InterfaceDeclaration first, pIIR_InterfaceList rest);
  pIIR_InterfaceList mIIR_InterfaceList (int lineno, pIIR_InterfaceDeclaration first, pIIR_InterfaceList rest);
  pIIR_EnumerationLiteralList mIIR_EnumerationLiteralList (pIIR_PosInfo pos, pIIR_EnumerationLiteral first, pIIR_EnumerationLiteralList rest);
  pIIR_EnumerationLiteralList mIIR_EnumerationLiteralList (int lineno, pIIR_EnumerationLiteral first, pIIR_EnumerationLiteralList rest);
  pIIR_EntityClassEntryList mIIR_EntityClassEntryList (pIIR_PosInfo pos, pIIR_EntityClassEntry first, pIIR_EntityClassEntryList rest);
  pIIR_EntityClassEntryList mIIR_EntityClassEntryList (int lineno, pIIR_EntityClassEntry first, pIIR_EntityClassEntryList rest);
  pIIR_ElementDeclarationList mIIR_ElementDeclarationList (pIIR_PosInfo pos, pIIR_ElementDeclaration first, pIIR_ElementDeclarationList rest);
  pIIR_ElementDeclarationList mIIR_ElementDeclarationList (int lineno, pIIR_ElementDeclaration first, pIIR_ElementDeclarationList rest);
  pIIR_DeclarationList mIIR_DeclarationList (pIIR_PosInfo pos, pIIR_Declaration first, pIIR_DeclarationList rest);
  pIIR_DeclarationList mIIR_DeclarationList (int lineno, pIIR_Declaration first, pIIR_DeclarationList rest);
  pIIR_ConfigurationItemList mIIR_ConfigurationItemList (pIIR_PosInfo pos, pIIR_ConfigurationItem first, pIIR_ConfigurationItemList rest);
  pIIR_ConfigurationItemList mIIR_ConfigurationItemList (int lineno, pIIR_ConfigurationItem first, pIIR_ConfigurationItemList rest);
  pIIR_ConcurrentStatementList mIIR_ConcurrentStatementList (pIIR_PosInfo pos, pIIR_ConcurrentStatement first, pIIR_ConcurrentStatementList rest);
  pIIR_ConcurrentStatementList mIIR_ConcurrentStatementList (int lineno, pIIR_ConcurrentStatement first, pIIR_ConcurrentStatementList rest);
  pIIR_ChoiceList mIIR_ChoiceList (pIIR_PosInfo pos, pIIR_Choice first, pIIR_ChoiceList rest);
  pIIR_ChoiceList mIIR_ChoiceList (int lineno, pIIR_Choice first, pIIR_ChoiceList rest);
  pIIR_CaseStatementAlternativeList mIIR_CaseStatementAlternativeList (pIIR_PosInfo pos, pIIR_CaseStatementAlternative first, pIIR_CaseStatementAlternativeList rest);
  pIIR_CaseStatementAlternativeList mIIR_CaseStatementAlternativeList (int lineno, pIIR_CaseStatementAlternative first, pIIR_CaseStatementAlternativeList rest);
  pIIR_AttributeValueList mIIR_AttributeValueList (pIIR_PosInfo pos, pIIR_AttributeValue first, pIIR_AttributeValueList rest);
  pIIR_AttributeValueList mIIR_AttributeValueList (int lineno, pIIR_AttributeValue first, pIIR_AttributeValueList rest);
  pIIR_AssociationList mIIR_AssociationList (pIIR_PosInfo pos, pIIR_AssociationElement first, pIIR_AssociationList rest);
  pIIR_AssociationList mIIR_AssociationList (int lineno, pIIR_AssociationElement first, pIIR_AssociationList rest);
  pIIR_List mIIR_List (pIIR_PosInfo pos);
  pIIR_List mIIR_List (int lineno);
  pIIR_AttributeValue mIIR_AttributeValue (pIIR_PosInfo pos, pIIR_Expression value, pIIR_AttributeDeclaration attribute);
  pIIR_AttributeValue mIIR_AttributeValue (int lineno, pIIR_Expression value, pIIR_AttributeDeclaration attribute);
  pIIR_OthersIndexedAssociation mIIR_OthersIndexedAssociation (pIIR_PosInfo pos, pIIR_Expression value);
  pIIR_OthersIndexedAssociation mIIR_OthersIndexedAssociation (int lineno, pIIR_Expression value);
  pIIR_SliceIndexedAssociation mIIR_SliceIndexedAssociation (pIIR_PosInfo pos, pIIR_Expression value, pIIR_Range index_range);
  pIIR_SliceIndexedAssociation mIIR_SliceIndexedAssociation (int lineno, pIIR_Expression value, pIIR_Range index_range);
  pIIR_RangeIndexedAssociation mIIR_RangeIndexedAssociation (pIIR_PosInfo pos, pIIR_Expression value, pIIR_Range index_range);
  pIIR_RangeIndexedAssociation mIIR_RangeIndexedAssociation (int lineno, pIIR_Expression value, pIIR_Range index_range);
  pIIR_SingleIndexedAssociation mIIR_SingleIndexedAssociation (pIIR_PosInfo pos, pIIR_Expression value, pIIR_Expression index);
  pIIR_SingleIndexedAssociation mIIR_SingleIndexedAssociation (int lineno, pIIR_Expression value, pIIR_Expression index);
  pIIR_IndexedAssociation mIIR_IndexedAssociation (pIIR_PosInfo pos, pIIR_Expression value);
  pIIR_IndexedAssociation mIIR_IndexedAssociation (int lineno, pIIR_Expression value);
  pIIR_ElementAssociation mIIR_ElementAssociation (pIIR_PosInfo pos, pIIR_ElementDeclaration element, pIIR_Expression value);
  pIIR_ElementAssociation mIIR_ElementAssociation (int lineno, pIIR_ElementDeclaration element, pIIR_Expression value);
  pIIR_WaveformElement mIIR_WaveformElement (pIIR_PosInfo pos, pIIR_Expression value, pIIR_Expression time);
  pIIR_WaveformElement mIIR_WaveformElement (int lineno, pIIR_Expression value, pIIR_Expression time);
  pIIR_EntityClassEntry mIIR_EntityClassEntry (pIIR_PosInfo pos, IR_Kind entity_kind, bool is_boxed);
  pIIR_EntityClassEntry mIIR_EntityClassEntry (int lineno, IR_Kind entity_kind, bool is_boxed);
  pIIR_ChoiceByOthers mIIR_ChoiceByOthers (pIIR_PosInfo pos);
  pIIR_ChoiceByOthers mIIR_ChoiceByOthers (int lineno);
  pIIR_ChoiceByRange mIIR_ChoiceByRange (pIIR_PosInfo pos, pIIR_Range range);
  pIIR_ChoiceByRange mIIR_ChoiceByRange (int lineno, pIIR_Range range);
  pIIR_ChoiceByExpression mIIR_ChoiceByExpression (pIIR_PosInfo pos, pIIR_Expression value);
  pIIR_ChoiceByExpression mIIR_ChoiceByExpression (int lineno, pIIR_Expression value);
  pIIR_Choice mIIR_Choice (pIIR_PosInfo pos);
  pIIR_Choice mIIR_Choice (int lineno);
  pIIR_CaseStatementAlternative mIIR_CaseStatementAlternative (pIIR_PosInfo pos, pIIR_SequentialStatementList sequence_of_statements, pIIR_ChoiceList choices);
  pIIR_CaseStatementAlternative mIIR_CaseStatementAlternative (int lineno, pIIR_SequentialStatementList sequence_of_statements, pIIR_ChoiceList choices);
  pIIR_AssociationElementOpen mIIR_AssociationElementOpen (pIIR_PosInfo pos, pIIR_ObjectReference formal, pIIR_InterfaceDeclaration formal_declaration, pIIR_Declaration formal_conversion, pIIR_Expression actual, pIIR_Declaration actual_conversion);
  pIIR_AssociationElementOpen mIIR_AssociationElementOpen (int lineno, pIIR_ObjectReference formal, pIIR_InterfaceDeclaration formal_declaration, pIIR_Declaration formal_conversion, pIIR_Expression actual, pIIR_Declaration actual_conversion);
  pIIR_AssociationElementByExpression mIIR_AssociationElementByExpression (pIIR_PosInfo pos, pIIR_ObjectReference formal, pIIR_InterfaceDeclaration formal_declaration, pIIR_Declaration formal_conversion, pIIR_Expression actual, pIIR_Declaration actual_conversion);
  pIIR_AssociationElementByExpression mIIR_AssociationElementByExpression (int lineno, pIIR_ObjectReference formal, pIIR_InterfaceDeclaration formal_declaration, pIIR_Declaration formal_conversion, pIIR_Expression actual, pIIR_Declaration actual_conversion);
  pIIR_AssociationElement mIIR_AssociationElement (pIIR_PosInfo pos, pIIR_ObjectReference formal, pIIR_InterfaceDeclaration formal_declaration, pIIR_Declaration formal_conversion, pIIR_Expression actual, pIIR_Declaration actual_conversion);
  pIIR_AssociationElement mIIR_AssociationElement (int lineno, pIIR_ObjectReference formal, pIIR_InterfaceDeclaration formal_declaration, pIIR_Declaration formal_conversion, pIIR_Expression actual, pIIR_Declaration actual_conversion);
  pIIR_Tuple mIIR_Tuple (pIIR_PosInfo pos);
  pIIR_Tuple mIIR_Tuple (int lineno);
  pIIR_FloatingPointLiteral mIIR_FloatingPointLiteral (pIIR_PosInfo pos, IR_String text);
  pIIR_FloatingPointLiteral mIIR_FloatingPointLiteral (int lineno, IR_String text);
  pIIR_FloatingPointLiteral mIIR_FloatingPointLiteral (pIIR_PosInfo pos, IR_Character *str, int len);
  pIIR_FloatingPointLiteral mIIR_FloatingPointLiteral (int lineno, IR_Character *str, int len);
  pIIR_IntegerLiteral mIIR_IntegerLiteral (pIIR_PosInfo pos, IR_String text);
  pIIR_IntegerLiteral mIIR_IntegerLiteral (int lineno, IR_String text);
  pIIR_IntegerLiteral mIIR_IntegerLiteral (pIIR_PosInfo pos, IR_Character *str, int len);
  pIIR_IntegerLiteral mIIR_IntegerLiteral (int lineno, IR_Character *str, int len);
  pIIR_AbstractLiteral mIIR_AbstractLiteral (pIIR_PosInfo pos);
  pIIR_AbstractLiteral mIIR_AbstractLiteral (int lineno);
  pIIR_StringLiteral mIIR_StringLiteral (pIIR_PosInfo pos, IR_String text);
  pIIR_StringLiteral mIIR_StringLiteral (int lineno, IR_String text);
  pIIR_StringLiteral mIIR_StringLiteral (pIIR_PosInfo pos, IR_Character *str, int len);
  pIIR_StringLiteral mIIR_StringLiteral (int lineno, IR_Character *str, int len);
  pIIR_CharacterLiteral mIIR_CharacterLiteral (pIIR_PosInfo pos, IR_String text);
  pIIR_CharacterLiteral mIIR_CharacterLiteral (int lineno, IR_String text);
  pIIR_CharacterLiteral mIIR_CharacterLiteral (pIIR_PosInfo pos, IR_Character *str, int len);
  pIIR_CharacterLiteral mIIR_CharacterLiteral (int lineno, IR_Character *str, int len);
  pIIR_Identifier mIIR_Identifier (pIIR_PosInfo pos, IR_String text);
  pIIR_Identifier mIIR_Identifier (int lineno, IR_String text);
  pIIR_Identifier mIIR_Identifier (pIIR_PosInfo pos, IR_Character *str, int len);
  pIIR_Identifier mIIR_Identifier (int lineno, IR_Character *str, int len);
  pIIR_TextLiteral mIIR_TextLiteral (pIIR_PosInfo pos, IR_String text);
  pIIR_TextLiteral mIIR_TextLiteral (int lineno, IR_String text);
  pIIR_TextLiteral mIIR_TextLiteral (pIIR_PosInfo pos, IR_Character *str, int len);
  pIIR_TextLiteral mIIR_TextLiteral (int lineno, IR_Character *str, int len);
  pIIR_Literal mIIR_Literal (pIIR_PosInfo pos);
  pIIR_Literal mIIR_Literal (int lineno);
  pIIR_Signature mIIR_Signature (pIIR_PosInfo pos);
  pIIR_Signature mIIR_Signature (int lineno);
  pIIR_Dummy mIIR_Dummy (pIIR_PosInfo pos);
  pIIR_Dummy mIIR_Dummy (int lineno);
  pIIR_Root mIIR_Root (pIIR_PosInfo pos);
  pIIR_Root mIIR_Root (int lineno);
  pIIR_PosInfo_Sheet mIIR_PosInfo_Sheet (const char* sheet_name, int x_coordinate, int y_coordinate);
  pIIR_PosInfo_TextFile mIIR_PosInfo_TextFile (const char* file_name, int line_number);
  pIIR_PosInfo mIIR_PosInfo ();
  pVAUL_FilenameAndMode mVAUL_FilenameAndMode (pIIR_Expression name, IR_Mode mode);
  pVAUL_DeclCache mVAUL_DeclCache (vaul_decl_set* set, pIIR_TextLiteral id, pIIR_Declaration scope, bool by_sel);
  pVAUL_IncrementalBindingIndic mVAUL_IncrementalBindingIndic (pIIR_PosInfo pos, pIIR_DeclarativeRegion unit, pVAUL_NamedAssocElem generic_assoc, pVAUL_NamedAssocElem port_assoc);
  pVAUL_IncrementalBindingIndic mVAUL_IncrementalBindingIndic (int lineno, pIIR_DeclarativeRegion unit, pVAUL_NamedAssocElem generic_assoc, pVAUL_NamedAssocElem port_assoc);
  pVAUL_InstList_OTHERS mVAUL_InstList_OTHERS (pIIR_PosInfo pos);
  pVAUL_InstList_OTHERS mVAUL_InstList_OTHERS (int lineno);
  pVAUL_InstList_ALL mVAUL_InstList_ALL (pIIR_PosInfo pos);
  pVAUL_InstList_ALL mVAUL_InstList_ALL (int lineno);
  pVAUL_InstList_Ids mVAUL_InstList_Ids (pIIR_PosInfo pos, pIIR_IdentifierList ids);
  pVAUL_InstList_Ids mVAUL_InstList_Ids (int lineno, pIIR_IdentifierList ids);
  pVAUL_InstList mVAUL_InstList (pIIR_PosInfo pos);
  pVAUL_InstList mVAUL_InstList (int lineno);
  pVAUL_ComponentSpec mVAUL_ComponentSpec (pIIR_PosInfo pos, pVAUL_InstList ids, pIIR_ComponentDeclaration comp);
  pVAUL_ComponentSpec mVAUL_ComponentSpec (int lineno, pVAUL_InstList ids, pIIR_ComponentDeclaration comp);
  pVAUL_ConfigSpec mVAUL_ConfigSpec (pIIR_PosInfo pos, pVAUL_ComponentSpec comps, pIIR_BindingIndication binding);
  pVAUL_ConfigSpec mVAUL_ConfigSpec (int lineno, pVAUL_ComponentSpec comps, pIIR_BindingIndication binding);
  pVAUL_ForScheme mVAUL_ForScheme (pIIR_PosInfo pos, pIIR_Identifier var, pIIR_Type range);
  pVAUL_ForScheme mVAUL_ForScheme (int lineno, pIIR_Identifier var, pIIR_Type range);
  pVAUL_WhileScheme mVAUL_WhileScheme (pIIR_PosInfo pos, pIIR_Expression condition);
  pVAUL_WhileScheme mVAUL_WhileScheme (int lineno, pIIR_Expression condition);
  pVAUL_IfScheme mVAUL_IfScheme (pIIR_PosInfo pos, pIIR_Expression condition);
  pVAUL_IfScheme mVAUL_IfScheme (int lineno, pIIR_Expression condition);
  pVAUL_IterationScheme mVAUL_IterationScheme (pIIR_PosInfo pos);
  pVAUL_IterationScheme mVAUL_IterationScheme (int lineno);
  pVAUL_ChoiceByName mVAUL_ChoiceByName (pIIR_PosInfo pos, pVAUL_Name name);
  pVAUL_ChoiceByName mVAUL_ChoiceByName (int lineno, pVAUL_Name name);
  pVAUL_ElemAssoc mVAUL_ElemAssoc (pIIR_PosInfo pos, pVAUL_ElemAssoc next, pIIR_ChoiceList choices, pIIR_Expression actual);
  pVAUL_ElemAssoc mVAUL_ElemAssoc (int lineno, pVAUL_ElemAssoc next, pIIR_ChoiceList choices, pIIR_Expression actual);
  pVAUL_ArtificialAmbgAggregate mVAUL_ArtificialAmbgAggregate (pIIR_PosInfo pos, pIIR_Type subtype, pVAUL_ElemAssoc first_assoc);
  pVAUL_ArtificialAmbgAggregate mVAUL_ArtificialAmbgAggregate (int lineno, pIIR_Type subtype, pVAUL_ElemAssoc first_assoc);
  pVAUL_AmbgAggregate mVAUL_AmbgAggregate (pIIR_PosInfo pos, pIIR_Type subtype, pVAUL_ElemAssoc first_assoc);
  pVAUL_AmbgAggregate mVAUL_AmbgAggregate (int lineno, pIIR_Type subtype, pVAUL_ElemAssoc first_assoc);
  pVAUL_EntityNameList_OTHERS mVAUL_EntityNameList_OTHERS (pIIR_PosInfo pos);
  pVAUL_EntityNameList_OTHERS mVAUL_EntityNameList_OTHERS (int lineno);
  pVAUL_EntityNameList_ALL mVAUL_EntityNameList_ALL (pIIR_PosInfo pos);
  pVAUL_EntityNameList_ALL mVAUL_EntityNameList_ALL (int lineno);
  pVAUL_EntityNameList_Ids mVAUL_EntityNameList_Ids (pIIR_PosInfo pos, pVAUL_DesigList ids);
  pVAUL_EntityNameList_Ids mVAUL_EntityNameList_Ids (int lineno, pVAUL_DesigList ids);
  pVAUL_EntityNameList mVAUL_EntityNameList (pIIR_PosInfo pos);
  pVAUL_EntityNameList mVAUL_EntityNameList (int lineno);
  pVAUL_EntitySpec mVAUL_EntitySpec (pIIR_PosInfo pos, pVAUL_EntityNameList names, IR_Kind entity_class);
  pVAUL_EntitySpec mVAUL_EntitySpec (int lineno, pVAUL_EntityNameList names, IR_Kind entity_class);
  pVAUL_AttributeSpec mVAUL_AttributeSpec (pIIR_PosInfo pos, pIIR_Identifier attr_desig, pVAUL_EntitySpec entities, pIIR_Expression value);
  pVAUL_AttributeSpec mVAUL_AttributeSpec (int lineno, pIIR_Identifier attr_desig, pVAUL_EntitySpec entities, pIIR_Expression value);
  pVAUL_AmbgEnumLitRef mVAUL_AmbgEnumLitRef (pIIR_PosInfo pos, pIIR_Type subtype);
  pVAUL_AmbgEnumLitRef mVAUL_AmbgEnumLitRef (int lineno, pIIR_Type subtype);
  pVAUL_AmbgNullExpr mVAUL_AmbgNullExpr (pIIR_PosInfo pos, pIIR_Type subtype);
  pVAUL_AmbgNullExpr mVAUL_AmbgNullExpr (int lineno, pIIR_Type subtype);
  pVAUL_AmbgArrayLitRef mVAUL_AmbgArrayLitRef (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_StringLiteral value);
  pVAUL_AmbgArrayLitRef mVAUL_AmbgArrayLitRef (int lineno, pIIR_Type subtype, pIIR_StringLiteral value);
  pVAUL_RangeAssocElem mVAUL_RangeAssocElem (pIIR_PosInfo pos, pVAUL_GenAssocElem next, pIIR_Range range);
  pVAUL_RangeAssocElem mVAUL_RangeAssocElem (int lineno, pVAUL_GenAssocElem next, pIIR_Range range);
  pVAUL_SubtypeAssocElem mVAUL_SubtypeAssocElem (pIIR_PosInfo pos, pVAUL_GenAssocElem next, pIIR_Type type);
  pVAUL_SubtypeAssocElem mVAUL_SubtypeAssocElem (int lineno, pVAUL_GenAssocElem next, pIIR_Type type);
  pVAUL_NamedAssocElem mVAUL_NamedAssocElem (pIIR_PosInfo pos, pVAUL_GenAssocElem next, pVAUL_Name formal, pIIR_Expression actual);
  pVAUL_NamedAssocElem mVAUL_NamedAssocElem (int lineno, pVAUL_GenAssocElem next, pVAUL_Name formal, pIIR_Expression actual);
  pVAUL_GenAssocElem mVAUL_GenAssocElem (pIIR_PosInfo pos, pVAUL_GenAssocElem next);
  pVAUL_GenAssocElem mVAUL_GenAssocElem (int lineno, pVAUL_GenAssocElem next);
  pVAUL_AmbgCall mVAUL_AmbgCall (pIIR_PosInfo pos, pIIR_Type subtype, pVAUL_NamedAssocElem first_actual);
  pVAUL_AmbgCall mVAUL_AmbgCall (int lineno, pIIR_Type subtype, pVAUL_NamedAssocElem first_actual);
  pVAUL_ProcedureCall mVAUL_ProcedureCall (pIIR_PosInfo pos, pIIR_Type subtype, pIIR_ProcedureDeclaration proc, pIIR_AssociationList actuals);
  pVAUL_ProcedureCall mVAUL_ProcedureCall (int lineno, pIIR_Type subtype, pIIR_ProcedureDeclaration proc, pIIR_AssociationList actuals);
  pVAUL_UnresolvedName mVAUL_UnresolvedName (pIIR_PosInfo pos, pIIR_Type subtype, pVAUL_Name name);
  pVAUL_UnresolvedName mVAUL_UnresolvedName (int lineno, pIIR_Type subtype, pVAUL_Name name);
  pVAUL_GuardSignal mVAUL_GuardSignal (pIIR_PosInfo pos, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_SignalKind signal_kind);
  pVAUL_GuardSignal mVAUL_GuardSignal (int lineno, pIIR_TextLiteral declarator, pIIR_Type subtype, pIIR_Expression initial_value, IR_SignalKind signal_kind);
  pVAUL_PreIndexSubtypeConstraint mVAUL_PreIndexSubtypeConstraint (pIIR_PosInfo pos, pIIR_Type type);
  pVAUL_PreIndexSubtypeConstraint mVAUL_PreIndexSubtypeConstraint (int lineno, pIIR_Type type);
  pVAUL_PreIndexRangeConstraint mVAUL_PreIndexRangeConstraint (pIIR_PosInfo pos, pIIR_Range range);
  pVAUL_PreIndexRangeConstraint mVAUL_PreIndexRangeConstraint (int lineno, pIIR_Range range);
  pVAUL_PreIndexConstraint mVAUL_PreIndexConstraint (pIIR_PosInfo pos);
  pVAUL_PreIndexConstraint mVAUL_PreIndexConstraint (int lineno);
  pVAUL_SubarrayType mVAUL_SubarrayType (pIIR_PosInfo pos, pIIR_TypeList index_types, pIIR_Type element_type, pIIR_ArrayType complete_type);
  pVAUL_SubarrayType mVAUL_SubarrayType (int lineno, pIIR_TypeList index_types, pIIR_Type element_type, pIIR_ArrayType complete_type);
  pVAUL_VoidType mVAUL_VoidType (pIIR_PosInfo pos);
  pVAUL_VoidType mVAUL_VoidType (int lineno);
  pVAUL_IncompleteType mVAUL_IncompleteType (pIIR_PosInfo pos);
  pVAUL_IncompleteType mVAUL_IncompleteType (int lineno);
  pVAUL_StandardPackage mVAUL_StandardPackage (pIIR_PosInfo pos, pIIR_TextLiteral declarator);
  pVAUL_StandardPackage mVAUL_StandardPackage (int lineno, pIIR_TextLiteral declarator);
  pVAUL_TopScope mVAUL_TopScope (pIIR_PosInfo pos, pIIR_TextLiteral declarator);
  pVAUL_TopScope mVAUL_TopScope (int lineno, pIIR_TextLiteral declarator);
  pVAUL_NameList mVAUL_NameList (pIIR_PosInfo pos, pVAUL_Name name, pVAUL_NameList link);
  pVAUL_NameList mVAUL_NameList (int lineno, pVAUL_Name name, pVAUL_NameList link);
  pVAUL_SelNameList mVAUL_SelNameList (pIIR_PosInfo pos, pVAUL_SelName name, pVAUL_SelNameList link);
  pVAUL_SelNameList mVAUL_SelNameList (int lineno, pVAUL_SelName name, pVAUL_SelNameList link);
  pVAUL_AttributeName mVAUL_AttributeName (pIIR_PosInfo pos, pVAUL_Name prefix, pIIR_Identifier attribute, pVAUL_NamedAssocElem first_actual);
  pVAUL_AttributeName mVAUL_AttributeName (int lineno, pVAUL_Name prefix, pIIR_Identifier attribute, pVAUL_NamedAssocElem first_actual);
  pVAUL_IftsName mVAUL_IftsName (pIIR_PosInfo pos, pVAUL_Name prefix, pVAUL_GenAssocElem assoc);
  pVAUL_IftsName mVAUL_IftsName (int lineno, pVAUL_Name prefix, pVAUL_GenAssocElem assoc);
  pVAUL_SelName mVAUL_SelName (pIIR_PosInfo pos, pVAUL_Name prefix, pIIR_TextLiteral suffix);
  pVAUL_SelName mVAUL_SelName (int lineno, pVAUL_Name prefix, pIIR_TextLiteral suffix);
  pVAUL_SimpleName mVAUL_SimpleName (pIIR_PosInfo pos, pIIR_TextLiteral id);
  pVAUL_SimpleName mVAUL_SimpleName (int lineno, pIIR_TextLiteral id);
  pVAUL_Name mVAUL_Name (pIIR_PosInfo pos);
  pVAUL_Name mVAUL_Name (int lineno);
  pVAUL_DesigList mVAUL_DesigList (pIIR_PosInfo pos, pIIR_TextLiteral desig, pVAUL_DesigList link);
  pVAUL_DesigList mVAUL_DesigList (int lineno, pIIR_TextLiteral desig, pVAUL_DesigList link);
  pVAUL_SelSignalAssign mVAUL_SelSignalAssign (pIIR_PosInfo pos, pIIR_Expression value, pIIR_Expression target, bool guarded, pVAUL_DelayMechanism delay, pVAUL_SelWaveform wave);
  pVAUL_SelSignalAssign mVAUL_SelSignalAssign (int lineno, pIIR_Expression value, pIIR_Expression target, bool guarded, pVAUL_DelayMechanism delay, pVAUL_SelWaveform wave);
  pVAUL_SelWaveform mVAUL_SelWaveform (pIIR_PosInfo pos, pIIR_WaveformList wave, pIIR_ChoiceList choice, pVAUL_SelWaveform next_wave);
  pVAUL_SelWaveform mVAUL_SelWaveform (int lineno, pIIR_WaveformList wave, pIIR_ChoiceList choice, pVAUL_SelWaveform next_wave);
  pVAUL_CondalSignalAssign mVAUL_CondalSignalAssign (pIIR_PosInfo pos, pIIR_Expression target, bool guarded, pVAUL_DelayMechanism delay, pVAUL_CondalWaveform wave);
  pVAUL_CondalSignalAssign mVAUL_CondalSignalAssign (int lineno, pIIR_Expression target, bool guarded, pVAUL_DelayMechanism delay, pVAUL_CondalWaveform wave);
  pVAUL_CondalWaveform mVAUL_CondalWaveform (pIIR_PosInfo pos, pIIR_WaveformList wave, pIIR_Expression condition);
  pVAUL_CondalWaveform mVAUL_CondalWaveform (int lineno, pIIR_WaveformList wave, pIIR_Expression condition);
  pVAUL_DelayTransport mVAUL_DelayTransport (pIIR_PosInfo pos);
  pVAUL_DelayTransport mVAUL_DelayTransport (int lineno);
  pVAUL_DelayInertial mVAUL_DelayInertial (pIIR_PosInfo pos, pIIR_Expression rejection_time);
  pVAUL_DelayInertial mVAUL_DelayInertial (int lineno, pIIR_Expression rejection_time);
  pVAUL_DelayMechanism mVAUL_DelayMechanism (pIIR_PosInfo pos);
  pVAUL_DelayMechanism mVAUL_DelayMechanism (int lineno);
};

union VAUL_Tree {
  pIIR_ConcurrentGenerateIfStatement IIR_ConcurrentGenerateIfStatement;
  pIIR_ConcurrentGenerateForStatement IIR_ConcurrentGenerateForStatement;
  pIIR_ConcurrentGenerateStatement IIR_ConcurrentGenerateStatement;
  pIIR_ComponentInstantiationStatement IIR_ComponentInstantiationStatement;
  pIIR_SensitizedProcessStatement IIR_SensitizedProcessStatement;
  pIIR_ImplicitProcessStatement IIR_ImplicitProcessStatement;
  pIIR_ProcessStatement IIR_ProcessStatement;
  pIIR_BlockStatement IIR_BlockStatement;
  pIIR_ConcurrentStatement IIR_ConcurrentStatement;
  pIIR_NullStatement IIR_NullStatement;
  pIIR_ReturnStatement IIR_ReturnStatement;
  pIIR_ExitStatement IIR_ExitStatement;
  pIIR_NextStatement IIR_NextStatement;
  pIIR_LoopControlStatement IIR_LoopControlStatement;
  pIIR_WhileLoopStatement IIR_WhileLoopStatement;
  pIIR_ForLoopStatement IIR_ForLoopStatement;
  pIIR_LoopStatement IIR_LoopStatement;
  pIIR_CaseStatement IIR_CaseStatement;
  pIIR_IfStatement IIR_IfStatement;
  pIIR_ProcedureCallStatement IIR_ProcedureCallStatement;
  pIIR_VariableAssignmentStatement IIR_VariableAssignmentStatement;
  pIIR_SignalAssignmentStatement IIR_SignalAssignmentStatement;
  pIIR_ReportStatement IIR_ReportStatement;
  pIIR_AssertionStatement IIR_AssertionStatement;
  pIIR_WaitStatement IIR_WaitStatement;
  pIIR_SequentialStatement IIR_SequentialStatement;
  pIIR_Attr_ArrayLENGTH IIR_Attr_ArrayLENGTH;
  pIIR_Attr_ArrayASCENDING IIR_Attr_ArrayASCENDING;
  pIIR_Attr_ArrayLOW IIR_Attr_ArrayLOW;
  pIIR_Attr_ArrayHIGH IIR_Attr_ArrayHIGH;
  pIIR_Attr_ArrayRIGHT IIR_Attr_ArrayRIGHT;
  pIIR_Attr_ArrayLEFT IIR_Attr_ArrayLEFT;
  pIIR_AttrArrayFunc IIR_AttrArrayFunc;
  pIIR_Attr_RIGHTOF IIR_Attr_RIGHTOF;
  pIIR_Attr_LEFTOF IIR_Attr_LEFTOF;
  pIIR_Attr_PRED IIR_Attr_PRED;
  pIIR_Attr_SUCC IIR_Attr_SUCC;
  pIIR_Attr_VAL IIR_Attr_VAL;
  pIIR_Attr_POS IIR_Attr_POS;
  pIIR_Attr_VALUE IIR_Attr_VALUE;
  pIIR_Attr_IMAGE IIR_Attr_IMAGE;
  pIIR_AttrTypeFunc IIR_AttrTypeFunc;
  pIIR_Attr_LENGTH IIR_Attr_LENGTH;
  pIIR_Attr_ASCENDING IIR_Attr_ASCENDING;
  pIIR_Attr_HIGH IIR_Attr_HIGH;
  pIIR_Attr_LOW IIR_Attr_LOW;
  pIIR_Attr_RIGHT IIR_Attr_RIGHT;
  pIIR_Attr_LEFT IIR_Attr_LEFT;
  pIIR_AttrTypeValue IIR_AttrTypeValue;
  pIIR_ValueAttr IIR_ValueAttr;
  pIIR_Attr_DRIVING_VALUE IIR_Attr_DRIVING_VALUE;
  pIIR_Attr_DRIVING IIR_Attr_DRIVING;
  pIIR_Attr_LAST_VALUE IIR_Attr_LAST_VALUE;
  pIIR_Attr_LAST_ACTIVE IIR_Attr_LAST_ACTIVE;
  pIIR_Attr_LAST_EVENT IIR_Attr_LAST_EVENT;
  pIIR_Attr_ACTIVE IIR_Attr_ACTIVE;
  pIIR_Attr_EVENT IIR_Attr_EVENT;
  pIIR_AttrSigFunc IIR_AttrSigFunc;
  pIIR_FunctionAttr IIR_FunctionAttr;
  pIIR_Attr_TRANSACTION IIR_Attr_TRANSACTION;
  pIIR_Attr_QUIET IIR_Attr_QUIET;
  pIIR_Attr_STABLE IIR_Attr_STABLE;
  pIIR_Attr_DELAYED IIR_Attr_DELAYED;
  pIIR_SignalAttr IIR_SignalAttr;
  pIIR_SliceReference IIR_SliceReference;
  pIIR_ArrayReference IIR_ArrayReference;
  pIIR_GenericArrayReference IIR_GenericArrayReference;
  pIIR_RecordReference IIR_RecordReference;
  pIIR_AccessReference IIR_AccessReference;
  pIIR_SimpleReference IIR_SimpleReference;
  pIIR_ObjectReference IIR_ObjectReference;
  pIIR_OpenExpression IIR_OpenExpression;
  pIIR_Allocator IIR_Allocator;
  pIIR_TypeConversion IIR_TypeConversion;
  pIIR_QualifiedExpression IIR_QualifiedExpression;
  pIIR_FunctionCall IIR_FunctionCall;
  pIIR_ArtificialArrayAggregate IIR_ArtificialArrayAggregate;
  pIIR_ArrayAggregate IIR_ArrayAggregate;
  pIIR_ArtificialRecordAggregate IIR_ArtificialRecordAggregate;
  pIIR_RecordAggregate IIR_RecordAggregate;
  pIIR_Aggregate IIR_Aggregate;
  pIIR_NullExpression IIR_NullExpression;
  pIIR_EnumLiteralReference IIR_EnumLiteralReference;
  pIIR_ArrayLiteralExpression IIR_ArrayLiteralExpression;
  pIIR_PhysicalLiteral IIR_PhysicalLiteral;
  pIIR_AbstractLiteralExpression IIR_AbstractLiteralExpression;
  pIIR_Expression IIR_Expression;
  pIIR_UseClause IIR_UseClause;
  pIIR_LibraryClause IIR_LibraryClause;
  pIIR_Label IIR_Label;
  pIIR_DisconnectSpecification IIR_DisconnectSpecification;
  pIIR_ConfigurationSpecification IIR_ConfigurationSpecification;
  pIIR_BindingIndication IIR_BindingIndication;
  pIIR_PhysicalUnit IIR_PhysicalUnit;
  pIIR_ComponentConfiguration IIR_ComponentConfiguration;
  pIIR_BlockConfiguration IIR_BlockConfiguration;
  pIIR_ConfigurationItem IIR_ConfigurationItem;
  pIIR_ConfigurationDeclaration IIR_ConfigurationDeclaration;
  pIIR_PackageBodyDeclaration IIR_PackageBodyDeclaration;
  pIIR_PackageDeclaration IIR_PackageDeclaration;
  pIIR_ArchitectureRef IIR_ArchitectureRef;
  pIIR_ArchitectureDeclaration IIR_ArchitectureDeclaration;
  pIIR_EntityDeclaration IIR_EntityDeclaration;
  pIIR_LibraryUnit IIR_LibraryUnit;
  pIIR_LibraryDeclaration IIR_LibraryDeclaration;
  pIIR_ComponentDeclaration IIR_ComponentDeclaration;
  pIIR_AttributeDeclaration IIR_AttributeDeclaration;
  pIIR_FileInterfaceDeclaration IIR_FileInterfaceDeclaration;
  pIIR_SignalInterfaceDeclaration IIR_SignalInterfaceDeclaration;
  pIIR_VariableInterfaceDeclaration IIR_VariableInterfaceDeclaration;
  pIIR_ConstantInterfaceDeclaration IIR_ConstantInterfaceDeclaration;
  pIIR_InterfaceDeclaration IIR_InterfaceDeclaration;
  pIIR_FileDeclaration IIR_FileDeclaration;
  pIIR_SignalDeclaration IIR_SignalDeclaration;
  pIIR_SharedVariableDeclaration IIR_SharedVariableDeclaration;
  pIIR_VariableDeclaration IIR_VariableDeclaration;
  pIIR_ConstantDeclaration IIR_ConstantDeclaration;
  pIIR_ObjectDeclaration IIR_ObjectDeclaration;
  pIIR_SubtypeDeclaration IIR_SubtypeDeclaration;
  pIIR_TypeDeclaration IIR_TypeDeclaration;
  pIIR_ElementDeclaration IIR_ElementDeclaration;
  pIIR_EnumerationLiteral IIR_EnumerationLiteral;
  pIIR_PredefinedFunctionDeclaration IIR_PredefinedFunctionDeclaration;
  pIIR_FunctionDeclaration IIR_FunctionDeclaration;
  pIIR_PredefinedProcedureDeclaration IIR_PredefinedProcedureDeclaration;
  pIIR_ProcedureDeclaration IIR_ProcedureDeclaration;
  pIIR_SubprogramDeclaration IIR_SubprogramDeclaration;
  pIIR_LoopDeclarativeRegion IIR_LoopDeclarativeRegion;
  pIIR_DeclarativeRegion IIR_DeclarativeRegion;
  pIIR_Declaration IIR_Declaration;
  pIIR_ArraySubtype IIR_ArraySubtype;
  pIIR_ArrayType IIR_ArrayType;
  pIIR_FileType IIR_FileType;
  pIIR_AccessType IIR_AccessType;
  pIIR_RecordSubtype IIR_RecordSubtype;
  pIIR_RecordType IIR_RecordType;
  pIIR_CompositeType IIR_CompositeType;
  pIIR_PhysicalType IIR_PhysicalType;
  pIIR_FloatingType IIR_FloatingType;
  pIIR_IntegerType IIR_IntegerType;
  pIIR_EnumerationType IIR_EnumerationType;
  pIIR_ScalarSubtype IIR_ScalarSubtype;
  pIIR_ScalarType IIR_ScalarType;
  pIIR_Subtype IIR_Subtype;
  pIIR_Type IIR_Type;
  pIIR_Attr_ArrayREVERSE_RANGE IIR_Attr_ArrayREVERSE_RANGE;
  pIIR_Attr_ArrayRANGE IIR_Attr_ArrayRANGE;
  pIIR_ArrayRange IIR_ArrayRange;
  pIIR_ExplicitRange IIR_ExplicitRange;
  pIIR_Range IIR_Range;
  pIIR_IdentifierList IIR_IdentifierList;
  pIIR_ConfigurationSpecificationList IIR_ConfigurationSpecificationList;
  pIIR_ComponentInstantiationList IIR_ComponentInstantiationList;
  pIIR_ElementAssociationList IIR_ElementAssociationList;
  pIIR_IndexedAssociationList IIR_IndexedAssociationList;
  pIIR_ExpressionList IIR_ExpressionList;
  pIIR_TypeList IIR_TypeList;
  pIIR_WaveformList IIR_WaveformList;
  pIIR_UnitList IIR_UnitList;
  pIIR_SequentialStatementList IIR_SequentialStatementList;
  pIIR_LibraryUnitList IIR_LibraryUnitList;
  pIIR_InterfaceList IIR_InterfaceList;
  pIIR_EnumerationLiteralList IIR_EnumerationLiteralList;
  pIIR_EntityClassEntryList IIR_EntityClassEntryList;
  pIIR_ElementDeclarationList IIR_ElementDeclarationList;
  pIIR_DeclarationList IIR_DeclarationList;
  pIIR_ConfigurationItemList IIR_ConfigurationItemList;
  pIIR_ConcurrentStatementList IIR_ConcurrentStatementList;
  pIIR_ChoiceList IIR_ChoiceList;
  pIIR_CaseStatementAlternativeList IIR_CaseStatementAlternativeList;
  pIIR_AttributeValueList IIR_AttributeValueList;
  pIIR_AssociationList IIR_AssociationList;
  pIIR_List IIR_List;
  pIIR_AttributeValue IIR_AttributeValue;
  pIIR_OthersIndexedAssociation IIR_OthersIndexedAssociation;
  pIIR_SliceIndexedAssociation IIR_SliceIndexedAssociation;
  pIIR_RangeIndexedAssociation IIR_RangeIndexedAssociation;
  pIIR_SingleIndexedAssociation IIR_SingleIndexedAssociation;
  pIIR_IndexedAssociation IIR_IndexedAssociation;
  pIIR_ElementAssociation IIR_ElementAssociation;
  pIIR_WaveformElement IIR_WaveformElement;
  pIIR_EntityClassEntry IIR_EntityClassEntry;
  pIIR_ChoiceByOthers IIR_ChoiceByOthers;
  pIIR_ChoiceByRange IIR_ChoiceByRange;
  pIIR_ChoiceByExpression IIR_ChoiceByExpression;
  pIIR_Choice IIR_Choice;
  pIIR_CaseStatementAlternative IIR_CaseStatementAlternative;
  pIIR_AssociationElementOpen IIR_AssociationElementOpen;
  pIIR_AssociationElementByExpression IIR_AssociationElementByExpression;
  pIIR_AssociationElement IIR_AssociationElement;
  pIIR_Tuple IIR_Tuple;
  pIIR_FloatingPointLiteral IIR_FloatingPointLiteral;
  pIIR_IntegerLiteral IIR_IntegerLiteral;
  pIIR_AbstractLiteral IIR_AbstractLiteral;
  pIIR_StringLiteral IIR_StringLiteral;
  pIIR_CharacterLiteral IIR_CharacterLiteral;
  pIIR_Identifier IIR_Identifier;
  pIIR_TextLiteral IIR_TextLiteral;
  pIIR_Literal IIR_Literal;
  pIIR_Signature IIR_Signature;
  pIIR_Dummy IIR_Dummy;
  pIIR_Root IIR_Root;
  pIIR_PosInfo_Sheet IIR_PosInfo_Sheet;
  pIIR_PosInfo_TextFile IIR_PosInfo_TextFile;
  pIIR_PosInfo IIR_PosInfo;
  pVAUL_FilenameAndMode VAUL_FilenameAndMode;
  pVAUL_DeclCache VAUL_DeclCache;
  pVAUL_IncrementalBindingIndic VAUL_IncrementalBindingIndic;
  pVAUL_InstList_OTHERS VAUL_InstList_OTHERS;
  pVAUL_InstList_ALL VAUL_InstList_ALL;
  pVAUL_InstList_Ids VAUL_InstList_Ids;
  pVAUL_InstList VAUL_InstList;
  pVAUL_ComponentSpec VAUL_ComponentSpec;
  pVAUL_ConfigSpec VAUL_ConfigSpec;
  pVAUL_ForScheme VAUL_ForScheme;
  pVAUL_WhileScheme VAUL_WhileScheme;
  pVAUL_IfScheme VAUL_IfScheme;
  pVAUL_IterationScheme VAUL_IterationScheme;
  pVAUL_ChoiceByName VAUL_ChoiceByName;
  pVAUL_ElemAssoc VAUL_ElemAssoc;
  pVAUL_ArtificialAmbgAggregate VAUL_ArtificialAmbgAggregate;
  pVAUL_AmbgAggregate VAUL_AmbgAggregate;
  pVAUL_EntityNameList_OTHERS VAUL_EntityNameList_OTHERS;
  pVAUL_EntityNameList_ALL VAUL_EntityNameList_ALL;
  pVAUL_EntityNameList_Ids VAUL_EntityNameList_Ids;
  pVAUL_EntityNameList VAUL_EntityNameList;
  pVAUL_EntitySpec VAUL_EntitySpec;
  pVAUL_AttributeSpec VAUL_AttributeSpec;
  pVAUL_AmbgEnumLitRef VAUL_AmbgEnumLitRef;
  pVAUL_AmbgNullExpr VAUL_AmbgNullExpr;
  pVAUL_AmbgArrayLitRef VAUL_AmbgArrayLitRef;
  pVAUL_RangeAssocElem VAUL_RangeAssocElem;
  pVAUL_SubtypeAssocElem VAUL_SubtypeAssocElem;
  pVAUL_NamedAssocElem VAUL_NamedAssocElem;
  pVAUL_GenAssocElem VAUL_GenAssocElem;
  pVAUL_AmbgCall VAUL_AmbgCall;
  pVAUL_ProcedureCall VAUL_ProcedureCall;
  pVAUL_UnresolvedName VAUL_UnresolvedName;
  pVAUL_GuardSignal VAUL_GuardSignal;
  pVAUL_PreIndexSubtypeConstraint VAUL_PreIndexSubtypeConstraint;
  pVAUL_PreIndexRangeConstraint VAUL_PreIndexRangeConstraint;
  pVAUL_PreIndexConstraint VAUL_PreIndexConstraint;
  pVAUL_SubarrayType VAUL_SubarrayType;
  pVAUL_VoidType VAUL_VoidType;
  pVAUL_IncompleteType VAUL_IncompleteType;
  pVAUL_StandardPackage VAUL_StandardPackage;
  pVAUL_TopScope VAUL_TopScope;
  pVAUL_NameList VAUL_NameList;
  pVAUL_SelNameList VAUL_SelNameList;
  pVAUL_AttributeName VAUL_AttributeName;
  pVAUL_IftsName VAUL_IftsName;
  pVAUL_SelName VAUL_SelName;
  pVAUL_SimpleName VAUL_SimpleName;
  pVAUL_Name VAUL_Name;
  pVAUL_DesigList VAUL_DesigList;
  pVAUL_SelSignalAssign VAUL_SelSignalAssign;
  pVAUL_SelWaveform VAUL_SelWaveform;
  pVAUL_CondalSignalAssign VAUL_CondalSignalAssign;
  pVAUL_CondalWaveform VAUL_CondalWaveform;
  pVAUL_DelayTransport VAUL_DelayTransport;
  pVAUL_DelayInertial VAUL_DelayInertial;
  pVAUL_DelayMechanism VAUL_DelayMechanism;
};

void init_vaul_chunk ();

#endif
