/* don't modify this file directly, it is made by a clever 'sed'
script using "tag".  Run make tag.h to regenerate this file */
/*********************************************************************/
/*                  pC++/Sage++  Copyright (C) 1993                  */
/*  Indiana University  University of Oregon  University of Rennes   */
/*********************************************************************/
 
/******************* variant tags for bif nodes **********************/

  tag [ GLOBAL ] = "GLOBAL";
  tag [ PROG_HEDR ] = "PROG_HEDR";
  tag [ PROC_HEDR ] = "PROC_HEDR";
  tag [ BASIC_BLOCK ] = "BASIC_BLOCK";
  tag [ CONTROL_END ] = "CONTROL_END";
  tag [ IF_NODE ] = "IF_NODE";
  tag [ LOOP_NODE ] = "LOOP_NODE";
  tag [ FOR_NODE ] = "FOR_NODE";
  tag [ FORALL_NODE ] = "FORALL_NODE";
  tag [ WHILE_NODE ] = "WHILE_NODE";
  tag [ EXIT_NODE ] = "EXIT_NODE";
  tag [ ASSIGN_STAT ] = "ASSIGN_STAT";
  tag [ M_ASSIGN_STAT ] = "M_ASSIGN_STAT";
  tag [ PROC_STAT ] = "PROC_STAT";
  tag [ SUM_ACC ] = "SUM_ACC";
  tag [ MULT_ACC ] = "MULT_ACC";
  tag [ MAX_ACC ] = "MAX_ACC";
  tag [ MIN_ACC ] = "MIN_ACC";
  tag [ CAT_ACC ] = "CAT_ACC";
  tag [ OR_ACC ] = "OR_ACC";
  tag [ AND_ACC ] = "AND_ACC";
  tag [ READ_STAT ] = "READ_STAT";
  tag [ WRITE_STAT ] = "WRITE_STAT";
  tag [ OTHERIO_STAT ] = "OTHERIO_STAT";
  tag [ CDOALL_NODE ] = "CDOALL_NODE";
  tag [ SDOALL_NODE ] = "SDOALL_NODE";
  tag [ DOACROSS_NODE ] = "DOACROSS_NODE";
  tag [ CDOACROSS_NODE ] = "CDOACROSS_NODE";
  tag [ DVM_INTERVAL_DIR ] = "DVM_INTERVAL_DIR";
  tag [ DVM_ENDINTERVAL_DIR ] = "DVM_ENDINTERVAL_DIR";
  tag [ FUNC_HEDR ] = "FUNC_HEDR";
  tag [ WHERE_NODE ] = "WHERE_NODE";
  tag [ ALLDO_NODE ] = "ALLDO_NODE";
  tag [ IDENTIFY ] = "IDENTIFY";
  tag [ FORMAT_STAT ] = "FORMAT_STAT";
  tag [ STOP_STAT ] = "STOP_STAT";
  tag [ RETURN_STAT ] = "RETURN_STAT";
  tag [ ELSEIF_NODE ] = "ELSEIF_NODE";
  tag [ ARITHIF_NODE ] = "ARITHIF_NODE";
  tag [ GOTO_NODE ] = "GOTO_NODE";
  tag [ ASSGOTO_NODE ] = "ASSGOTO_NODE";
  tag [ COMGOTO_NODE ] = "COMGOTO_NODE";
  tag [ PAUSE_NODE ] = "PAUSE_NODE";
  tag [ STOP_NODE ] = "STOP_NODE";
  tag [ ASSLAB_STAT ] = "ASSLAB_STAT";
  tag [ LOGIF_NODE ] = "LOGIF_NODE";
  tag [ DVM_DEBUG_DIR ] = "DVM_DEBUG_DIR";
  tag [ DVM_ENDDEBUG_DIR ] = "DVM_ENDDEBUG_DIR";
  tag [ DVM_TRACEON_DIR ] = "DVM_TRACEON_DIR";
  tag [ DVM_TRACEOFF_DIR ] = "DVM_TRACEOFF_DIR";
  tag [ BLOB ] = "BLOB";
  tag [ SIZES ] = "SIZES";
  tag [ COMMENT_STAT ] = "COMMENT_STAT";
  tag [ CONT_STAT ] = "CONT_STAT";
  tag [ VAR_DECL ] = "VAR_DECL";
  tag [ PARAM_DECL ] = "PARAM_DECL";
  tag [ COMM_STAT ] = "COMM_STAT";
  tag [ EQUI_STAT ] = "EQUI_STAT";
  tag [ IMPL_DECL ] = "IMPL_DECL";
  tag [ DATA_DECL ] = "DATA_DECL";
  tag [ SAVE_DECL ] = "SAVE_DECL";
  tag [ ENTRY_STAT ] = "ENTRY_STAT";
  tag [ STMTFN_STAT ] = "STMTFN_STAT";
  tag [ DIM_STAT ] = "DIM_STAT";
  tag [ BLOCK_DATA ] = "BLOCK_DATA";
  tag [ EXTERN_STAT ] = "EXTERN_STAT";
  tag [ INTRIN_STAT ] = "INTRIN_STAT";
  tag [ ENUM_DECL ] = "ENUM_DECL";
  tag [ CLASS_DECL ] = "CLASS_DECL";
  tag [ UNION_DECL ] = "UNION_DECL";
  tag [ STRUCT_DECL ] = "STRUCT_DECL";
  tag [ DERIVED_CLASS_DECL ] = "DERIVED_CLASS_DECL";
  tag [ EXPR_STMT_NODE ] = "EXPR_STMT_NODE";
  tag [ DO_WHILE_NODE ] = "DO_WHILE_NODE";
  tag [ SWITCH_NODE ] = "SWITCH_NODE";
  tag [ CASE_NODE ] = "CASE_NODE";
  tag [ DEFAULT_NODE ] = "DEFAULT_NODE";
  tag [ BREAK_NODE ] = "BREAK_NODE";
  tag [ CONTINUE_NODE ] = "CONTINUE_NODE";
  tag [ RETURN_NODE ] = "RETURN_NODE";
  tag [ ASM_NODE ] = "ASM_NODE";
  tag [ SPAWN_NODE ] = "SPAWN_NODE";
  tag [ PARFOR_NODE ] = "PARFOR_NODE";
  tag [ PAR_NODE ] = "PAR_NODE";
  tag [ LABEL_STAT ] = "LABEL_STAT";
  tag [ PROS_COMM ] = "PROS_COMM";
  tag [ ATTR_DECL ] = "ATTR_DECL";
  tag [ NAMELIST_STAT ] = "NAMELIST_STAT";
  tag [ FUTURE_STMT ] = "FUTURE_STMT";
  tag [ COLLECTION_DECL ] = "COLLECTION_DECL";
  tag [ TEMPLATE_DECL ] = "TEMPLATE_DECL";
  tag [ TEMPLATE_FUNDECL ] = "TEMPLATE_FUNDECL";
  tag [ TECLASS_DECL ] = "TECLASS_DECL";
  tag [ ELSEWH_NODE ] = "ELSEWH_NODE";
  tag [ STATIC_STMT ] = "STATIC_STMT";
  tag [ INCLUDE_LINE ] = "INCLUDE_LINE";
  tag [ PREPROCESSOR_DIR ] = "PREPROCESSOR_DIR";
  tag [ PRINT_STAT ] = "PRINT_STAT";
  tag [ BACKSPACE_STAT ] = "BACKSPACE_STAT";
  tag [ REWIND_STAT ] = "REWIND_STAT";
  tag [ ENDFILE_STAT ] = "ENDFILE_STAT";
  tag [ INQUIRE_STAT ] = "INQUIRE_STAT";
  tag [ OPEN_STAT ] = "OPEN_STAT";
  tag [ CLOSE_STAT ] = "CLOSE_STAT";
  tag [ EXTERN_C_STAT ] = "EXTERN_C_STAT";
  tag [ INCLUDE_STAT ] = "INCLUDE_STAT";
  tag [ TRY_STAT ] = "TRY_STAT";
  tag [ CATCH_STAT ] = "CATCH_STAT";
  tag [ DVM_PARALLEL_ON_DIR ] = "DVM_PARALLEL_ON_DIR";
  tag [ DVM_SHADOW_START_DIR ] = "DVM_SHADOW_START_DIR";
  tag [ DVM_SHADOW_GROUP_DIR ] = "DVM_SHADOW_GROUP_DIR";
  tag [ DVM_SHADOW_WAIT_DIR ] = "DVM_SHADOW_WAIT_DIR";
  tag [ DVM_REDUCTION_START_DIR ] = "DVM_REDUCTION_START_DIR";
  tag [ DVM_REDUCTION_GROUP_DIR ] = "DVM_REDUCTION_GROUP_DIR";
  tag [ DVM_REDUCTION_WAIT_DIR ] = "DVM_REDUCTION_WAIT_DIR";
  tag [ DVM_DYNAMIC_DIR ] = "DVM_DYNAMIC_DIR";
  tag [ DVM_ALIGN_DIR ] = "DVM_ALIGN_DIR";
  tag [ DVM_REALIGN_DIR ] = "DVM_REALIGN_DIR";
  tag [ DVM_REALIGN_NEW_DIR ] = "DVM_REALIGN_NEW_DIR";
  tag [ DVM_REMOTE_ACCESS_DIR ] = "DVM_REMOTE_ACCESS_DIR";
  tag [ HPF_INDEPENDENT_DIR ] = "HPF_INDEPENDENT_DIR";
  tag [ DVM_SHADOW_DIR ] = "DVM_SHADOW_DIR";
  tag [ PARDO_NODE ] = "PARDO_NODE";
  tag [ PARSECTIONS_NODE ] = "PARSECTIONS_NODE";
  tag [ SECTION_NODE ] = "SECTION_NODE";
  tag [ GUARDS_NODE ] = "GUARDS_NODE";
  tag [ LOCK_NODE ] = "LOCK_NODE";
  tag [ UNLOCK_NODE ] = "UNLOCK_NODE";
  tag [ CRITSECTION_NODE ] = "CRITSECTION_NODE";
  tag [ POST_NODE ] = "POST_NODE";
  tag [ WAIT_NODE ] = "WAIT_NODE";
  tag [ CLEAR_NODE ] = "CLEAR_NODE";
  tag [ POSTSEQ_NODE ] = "POSTSEQ_NODE";
  tag [ WAITSEQ_NODE ] = "WAITSEQ_NODE";
  tag [ SETSEQ_NODE ] = "SETSEQ_NODE";
  tag [ ASSIGN_NODE ] = "ASSIGN_NODE";
  tag [ RELEASE_NODE ] = "RELEASE_NODE";
  tag [ PRIVATE_NODE ] = "PRIVATE_NODE";
  tag [ SCOMMON_NODE ] = "SCOMMON_NODE";
  tag [ PARREGION_NODE ] = "PARREGION_NODE";
  tag [ PDO_NODE ] = "PDO_NODE";
  tag [ PSECTIONS_NODE ] = "PSECTIONS_NODE";
  tag [ SINGLEPROCESS_NODE ] = "SINGLEPROCESS_NODE";
  tag [ SKIPPASTEOF_NODE ] = "SKIPPASTEOF_NODE";
  tag [ DVM_NEW_VALUE_DIR ] = "DVM_NEW_VALUE_DIR";
  tag [ DVM_VAR_DECL ] = "DVM_VAR_DECL";
  tag [ DVM_POINTER_DIR ] = "DVM_POINTER_DIR";
  tag [ INTENT_STMT ] = "INTENT_STMT";
  tag [ OPTIONAL_STMT ] = "OPTIONAL_STMT";
  tag [ PUBLIC_STMT ] = "PUBLIC_STMT";
  tag [ PRIVATE_STMT ] = "PRIVATE_STMT";
  tag [ ALLOCATABLE_STMT ] = "ALLOCATABLE_STMT";
  tag [ POINTER_STMT ] = "POINTER_STMT";
  tag [ TARGET_STMT ] = "TARGET_STMT";
  tag [ ALLOCATE_STMT ] = "ALLOCATE_STMT";
  tag [ NULLIFY_STMT ] = "NULLIFY_STMT";
  tag [ DEALLOCATE_STMT ] = "DEALLOCATE_STMT";
  tag [ SEQUENCE_STMT ] = "SEQUENCE_STMT";
  tag [ CYCLE_STMT ] = "CYCLE_STMT";
  tag [ EXIT_STMT ] = "EXIT_STMT";
  tag [ CONTAINS_STMT ] = "CONTAINS_STMT";
  tag [ WHERE_BLOCK_STMT ] = "WHERE_BLOCK_STMT";
  tag [ MODULE_STMT ] = "MODULE_STMT";
  tag [ USE_STMT ] = "USE_STMT";
  tag [ INTERFACE_STMT ] = "INTERFACE_STMT";
  tag [ MODULE_PROC_STMT ] = "MODULE_PROC_STMT";
  tag [ OVERLOADED_ASSIGN_STAT ] = "OVERLOADED_ASSIGN_STAT";
  tag [ POINTER_ASSIGN_STAT ] = "POINTER_ASSIGN_STAT";
  tag [ OVERLOADED_PROC_STAT ] = "OVERLOADED_PROC_STAT";
  tag [ DECOMPOSITION_STMT ] = "DECOMPOSITION_STMT";
  tag [ ALIGN_STMT ] = "ALIGN_STMT";
  tag [ DVM_DISTRIBUTE_DIR ] = "DVM_DISTRIBUTE_DIR";
  tag [ REDUCE_STMT ] = "REDUCE_STMT";
  tag [ PROS_HEDR ] = "PROS_HEDR";
  tag [ PROS_STAT ] = "PROS_STAT";
  tag [ PROS_STAT_LCTN ] = "PROS_STAT_LCTN";
  tag [ PROS_STAT_SUBM ] = "PROS_STAT_SUBM";
  tag [ PROCESSES_STAT ] = "PROCESSES_STAT";
  tag [ PROCESSES_END ] = "PROCESSES_END";
  tag [ PROCESS_DO_STAT ] = "PROCESS_DO_STAT";
  tag [ PROCESSORS_STAT ] = "PROCESSORS_STAT";
  tag [ CHANNEL_STAT ] = "CHANNEL_STAT";
  tag [ MERGER_STAT ] = "MERGER_STAT";
  tag [ MOVE_PORT ] = "MOVE_PORT";
  tag [ SEND_STAT ] = "SEND_STAT";
  tag [ RECEIVE_STAT ] = "RECEIVE_STAT";
  tag [ ENDCHANNEL_STAT ] = "ENDCHANNEL_STAT";
  tag [ PROBE_STAT ] = "PROBE_STAT";
  tag [ INPORT_DECL ] = "INPORT_DECL";
  tag [ OUTPORT_DECL ] = "OUTPORT_DECL";
  tag [ HPF_TEMPLATE_STAT ] = "HPF_TEMPLATE_STAT";
  tag [ HPF_ALIGN_STAT ] = "HPF_ALIGN_STAT";
  tag [ HPF_PROCESSORS_STAT ] = "HPF_PROCESSORS_STAT";
  tag [ DVM_REDISTRIBUTE_DIR ] = "DVM_REDISTRIBUTE_DIR";
  tag [ DVM_TASK_REGION_DIR ] = "DVM_TASK_REGION_DIR";
  tag [ DVM_END_TASK_REGION_DIR ] = "DVM_END_TASK_REGION_DIR";
  tag [ DVM_ON_DIR ] = "DVM_ON_DIR";
  tag [ DVM_END_ON_DIR ] = "DVM_END_ON_DIR";
  tag [ DVM_TASK_DIR ] = "DVM_TASK_DIR";
  tag [ DVM_MAP_DIR ] = "DVM_MAP_DIR";
  tag [ DVM_PARALLEL_TASK_DIR ] = "DVM_PARALLEL_TASK_DIR";
  tag [ DVM_INHERIT_DIR ] = "DVM_INHERIT_DIR";
  tag [ DVM_INDIRECT_GROUP_DIR ] = "DVM_INDIRECT_GROUP_DIR";
  tag [ DVM_INDIRECT_ACCESS_DIR ] = "DVM_INDIRECT_ACCESS_DIR";
  tag [ DVM_REMOTE_GROUP_DIR ] = "DVM_REMOTE_GROUP_DIR";
  tag [ DVM_RESET_DIR ] = "DVM_RESET_DIR";
  tag [ DVM_PREFETCH_DIR ] = "DVM_PREFETCH_DIR";
  tag [ DVM_OWN_DIR ] = "DVM_OWN_DIR";
  tag [ DVM_HEAP_DIR ] = "DVM_HEAP_DIR";
  tag [ DVM_ASYNCID_DIR ] = "DVM_ASYNCID_DIR";
  tag [ DVM_ASYNCHRONOUS_DIR ] = "DVM_ASYNCHRONOUS_DIR";
  tag [ DVM_ENDASYNCHRONOUS_DIR ] = "DVM_ENDASYNCHRONOUS_DIR";
  tag [ DVM_ASYNCWAIT_DIR ] = "DVM_ASYNCWAIT_DIR";
  tag [ DVM_F90_DIR ] = "DVM_F90_DIR";
  tag [ DVM_BARRIER_DIR ] = "DVM_BARRIER_DIR";
  tag [ FORALL_STAT ] = "FORALL_STAT";
  tag [ DVM_CONSISTENT_GROUP_DIR ] = "DVM_CONSISTENT_GROUP_DIR";
  tag [ DVM_CONSISTENT_START_DIR ] = "DVM_CONSISTENT_START_DIR";
  tag [ DVM_CONSISTENT_WAIT_DIR ] = "DVM_CONSISTENT_WAIT_DIR";
  tag [ DVM_CONSISTENT_DIR ] = "DVM_CONSISTENT_DIR";
  tag [ DVM_CHECK_DIR ] = "DVM_CHECK_DIR";
  tag [ DVM_IO_MODE_DIR ] = "DVM_IO_MODE_DIR";
  tag [ DVM_LOCALIZE_DIR ] = "DVM_LOCALIZE_DIR";
  tag [ DVM_SHADOW_ADD_DIR ] = "DVM_SHADOW_ADD_DIR";
  tag [ DVM_CP_CREATE_DIR ] = "DVM_CP_CREATE_DIR";
  tag [ DVM_CP_LOAD_DIR ] = "DVM_CP_LOAD_DIR";
  tag [ DVM_CP_SAVE_DIR ] = "DVM_CP_SAVE_DIR";
  tag [ DVM_CP_WAIT_DIR ] = "DVM_CP_WAIT_DIR";
  tag [ DVM_EXIT_INTERVAL_DIR ] = "DVM_EXIT_INTERVAL_DIR";
  tag [ DVM_TEMPLATE_CREATE_DIR ] = "DVM_TEMPLATE_CREATE_DIR";
  tag [ DVM_TEMPLATE_DELETE_DIR ] = "DVM_TEMPLATE_DELETE_DIR";
    
/***************** variant tags for low level nodes ********************/

  tag [ INT_VAL ] = "INT_VAL";
  tag [ FLOAT_VAL ] = "FLOAT_VAL";
  tag [ DOUBLE_VAL ] = "DOUBLE_VAL";
  tag [ BOOL_VAL ] = "BOOL_VAL";
  tag [ CHAR_VAL ] = "CHAR_VAL";
  tag [ STRING_VAL ] = "STRING_VAL";
  tag [ CONST_REF ] = "CONST_REF";
  tag [ VAR_REF ] = "VAR_REF";
  tag [ ARRAY_REF ] = "ARRAY_REF";
  tag [ RECORD_REF ] = "RECORD_REF";
  tag [ ENUM_REF ] = "ENUM_REF";
  tag [ VAR_LIST ] = "VAR_LIST";
  tag [ EXPR_LIST ] = "EXPR_LIST";
  tag [ RANGE_LIST ] = "RANGE_LIST";
  tag [ CASE_CHOICE ] = "CASE_CHOICE";
  tag [ DEF_CHOICE ] = "DEF_CHOICE";
  tag [ VARIANT_CHOICE ] = "VARIANT_CHOICE";
  tag [ COMPLEX_VAL ] = "COMPLEX_VAL";
  tag [ LABEL_REF ] = "LABEL_REF";
  tag [ KEYWORD_VAL ] = "KEYWORD_VAL";
  tag [ DDOT ] = "DDOT";
  tag [ RANGE_OP ] = "RANGE_OP";
  tag [ UPPER_OP ] = "UPPER_OP";
  tag [ LOWER_OP ] = "LOWER_OP";
  tag [ EQ_OP ] = "EQ_OP";
  tag [ LT_OP ] = "LT_OP";
  tag [ GT_OP ] = "GT_OP";
  tag [ NOTEQL_OP ] = "NOTEQL_OP";
  tag [ LTEQL_OP ] = "LTEQL_OP";
  tag [ GTEQL_OP ] = "GTEQL_OP";
  tag [ ADD_OP ] = "ADD_OP";
  tag [ SUBT_OP ] = "SUBT_OP";
  tag [ OR_OP ] = "OR_OP";
  tag [ MULT_OP ] = "MULT_OP";
  tag [ DIV_OP ] = "DIV_OP";
  tag [ MOD_OP ] = "MOD_OP";
  tag [ AND_OP ] = "AND_OP";
  tag [ EXP_OP ] = "EXP_OP";
  tag [ ARRAY_MULT ] = "ARRAY_MULT";
  tag [ CONCAT_OP ] = "CONCAT_OP";
  tag [ XOR_OP ] = "XOR_OP";
  tag [ EQV_OP ] = "EQV_OP";
  tag [ NEQV_OP ] = "NEQV_OP";
  tag [ MINUS_OP ] = "MINUS_OP";
  tag [ NOT_OP ] = "NOT_OP";
  tag [ ASSGN_OP ] = "ASSGN_OP";
  tag [ DEREF_OP ] = "DEREF_OP";
  tag [ POINTST_OP ] = "POINTST_OP";
  tag [ FUNCTION_OP ] = "FUNCTION_OP";
  tag [ MINUSMINUS_OP ] = "MINUSMINUS_OP";
  tag [ PLUSPLUS_OP ] = "PLUSPLUS_OP";
  tag [ BITAND_OP ] = "BITAND_OP";
  tag [ BITOR_OP ] = "BITOR_OP";
  tag [ STAR_RANGE ] = "STAR_RANGE";
  tag [ PROC_CALL ] = "PROC_CALL";
  tag [ FUNC_CALL ] = "FUNC_CALL";
  tag [ CONSTRUCTOR_REF ] = "CONSTRUCTOR_REF";
  tag [ ACCESS_REF ] = "ACCESS_REF";
  tag [ CONS ] = "CONS";
  tag [ ACCESS ] = "ACCESS";
  tag [ IOACCESS ] = "IOACCESS";
  tag [ CONTROL_LIST ] = "CONTROL_LIST";
  tag [ SEQ ] = "SEQ";
  tag [ SPEC_PAIR ] = "SPEC_PAIR";
  tag [ COMM_LIST ] = "COMM_LIST";
  tag [ STMT_STR ] = "STMT_STR";
  tag [ EQUI_LIST ] = "EQUI_LIST";
  tag [ IMPL_TYPE ] = "IMPL_TYPE";
  tag [ STMTFN_DECL ] = "STMTFN_DECL";
  tag [ BIT_COMPLEMENT_OP ] = "BIT_COMPLEMENT_OP";
  tag [ EXPR_IF ] = "EXPR_IF";
  tag [ EXPR_IF_BODY ] = "EXPR_IF_BODY";
  tag [ FUNCTION_REF ] = "FUNCTION_REF";
  tag [ LSHIFT_OP ] = "LSHIFT_OP";
  tag [ RSHIFT_OP ] = "RSHIFT_OP";
  tag [ UNARY_ADD_OP ] = "UNARY_ADD_OP";
  tag [ SIZE_OP ] = "SIZE_OP";
  tag [ INTEGER_DIV_OP ] = "INTEGER_DIV_OP";
  tag [ SUB_OP ] = "SUB_OP";
  tag [ LE_OP ] = "LE_OP";
  tag [ GE_OP ] = "GE_OP";
  tag [ NE_OP ] = "NE_OP";
  tag [ CLASSINIT_OP ] = "CLASSINIT_OP";
  tag [ CAST_OP ] = "CAST_OP";
  tag [ ADDRESS_OP ] = "ADDRESS_OP";
  tag [ POINSTAT_OP ] = "POINSTAT_OP";
  tag [ COPY_NODE ] = "COPY_NODE";
  tag [ INIT_LIST ] = "INIT_LIST";
  tag [ VECTOR_CONST ] = "VECTOR_CONST";
  tag [ BIT_NUMBER ] = "BIT_NUMBER";
  tag [ ARITH_ASSGN_OP ] = "ARITH_ASSGN_OP";
  tag [ ARRAY_OP ] = "ARRAY_OP";
  tag [ NEW_OP ] = "NEW_OP";
  tag [ DELETE_OP ] = "DELETE_OP";
  tag [ NAMELIST_LIST ] = "NAMELIST_LIST";
  tag [ THIS_NODE ] = "THIS_NODE";
  tag [ SCOPE_OP ] = "SCOPE_OP";
  tag [ PLUS_ASSGN_OP ] = "PLUS_ASSGN_OP";
  tag [ MINUS_ASSGN_OP ] = "MINUS_ASSGN_OP";
  tag [ AND_ASSGN_OP ] = "AND_ASSGN_OP";
  tag [ IOR_ASSGN_OP ] = "IOR_ASSGN_OP";
  tag [ MULT_ASSGN_OP ] = "MULT_ASSGN_OP";
  tag [ DIV_ASSGN_OP ] = "DIV_ASSGN_OP";
  tag [ MOD_ASSGN_OP ] = "MOD_ASSGN_OP";
  tag [ XOR_ASSGN_OP ] = "XOR_ASSGN_OP";
  tag [ LSHIFT_ASSGN_OP ] = "LSHIFT_ASSGN_OP";
  tag [ RSHIFT_ASSGN_OP ] = "RSHIFT_ASSGN_OP";
  tag [ ORDERED_OP ] = "ORDERED_OP";
  tag [ EXTEND_OP ] = "EXTEND_OP";
  tag [ MAXPARALLEL_OP ] = "MAXPARALLEL_OP";
  tag [ SAMETYPE_OP ] = "SAMETYPE_OP";
  tag [ TYPE_REF ] = "TYPE_REF";
  tag [ STRUCTURE_CONSTRUCTOR ] = "STRUCTURE_CONSTRUCTOR";
  tag [ ARRAY_CONSTRUCTOR ] = "ARRAY_CONSTRUCTOR";
  tag [ SECTION_REF ] = "SECTION_REF";
  tag [ VECTOR_SUBSCRIPT ] = "VECTOR_SUBSCRIPT";
  tag [ SECTION_OPERANDS ] = "SECTION_OPERANDS";
  tag [ KEYWORD_ARG ] = "KEYWORD_ARG";
  tag [ OVERLOADED_CALL ] = "OVERLOADED_CALL";
  tag [ INTERFACE_REF ] = "INTERFACE_REF";
  tag [ RENAME_NODE ] = "RENAME_NODE";
  tag [ TYPE_NODE ] = "TYPE_NODE";
  tag [ PAREN_OP ] = "PAREN_OP";
  tag [ PARAMETER_OP ] = "PARAMETER_OP";
  tag [ PUBLIC_OP ] = "PUBLIC_OP";
  tag [ PRIVATE_OP ] = "PRIVATE_OP";
  tag [ ALLOCATABLE_OP ] = "ALLOCATABLE_OP";
  tag [ DIMENSION_OP ] = "DIMENSION_OP";
  tag [ EXTERNAL_OP ] = "EXTERNAL_OP";
  tag [ IN_OP ] = "IN_OP";
  tag [ OUT_OP ] = "OUT_OP";
  tag [ INOUT_OP ] = "INOUT_OP";
  tag [ INTRINSIC_OP ] = "INTRINSIC_OP";
  tag [ POINTER_OP ] = "POINTER_OP";
  tag [ OPTIONAL_OP ] = "OPTIONAL_OP";
  tag [ SAVE_OP ] = "SAVE_OP";
  tag [ TARGET_OP ] = "TARGET_OP";
  tag [ ONLY_NODE ] = "ONLY_NODE";
  tag [ LEN_OP ] = "LEN_OP";
  tag [ TYPE_OP ] = "TYPE_OP";
  tag [ DOTSTAR_OP ] = "DOTSTAR_OP";
  tag [ ARROWSTAR_OP ] = "ARROWSTAR_OP";
  tag [ FORDECL_OP ] = "FORDECL_OP";
  tag [ THROW_OP ] = "THROW_OP";
  tag [ PROCESSORS_REF ] = "PROCESSORS_REF";
  tag [ PORT_TYPE_OP ] = "PORT_TYPE_OP";
  tag [ INPORT_TYPE_OP ] = "INPORT_TYPE_OP";
  tag [ OUTPORT_TYPE_OP ] = "OUTPORT_TYPE_OP";
  tag [ INPORT_NAME ] = "INPORT_NAME";
  tag [ OUTPORT_NAME ] = "OUTPORT_NAME";
  tag [ FROMPORT_NAME ] = "FROMPORT_NAME";
  tag [ TOPORT_NAME ] = "TOPORT_NAME";
  tag [ IOSTAT_STORE ] = "IOSTAT_STORE";
  tag [ EMPTY_STORE ] = "EMPTY_STORE";
  tag [ ERR_LABEL ] = "ERR_LABEL";
  tag [ END_LABEL ] = "END_LABEL";
  tag [ PROS_CALL ] = "PROS_CALL";
  tag [ STATIC_OP ] = "STATIC_OP";
  tag [ LABEL_ARG ] = "LABEL_ARG";
  tag [ DATA_IMPL_DO ] = "DATA_IMPL_DO";
  tag [ DATA_ELT ] = "DATA_ELT";
  tag [ DATA_SUBS ] = "DATA_SUBS";
  tag [ DATA_RANGE ] = "DATA_RANGE";
  tag [ ICON_EXPR ] = "ICON_EXPR";
  tag [ BLOCK_OP ] = "BLOCK_OP";
  tag [ NEW_SPEC_OP ] = "NEW_SPEC_OP";
  tag [ REDUCTION_OP ] = "REDUCTION_OP";
  tag [ SHADOW_RENEW_OP ] = "SHADOW_RENEW_OP";
  tag [ SHADOW_START_OP ] = "SHADOW_START_OP";
  tag [ SHADOW_WAIT_OP ] = "SHADOW_WAIT_OP";
  tag [ DIAG_OP ] = "DIAG_OP";
  tag [ REMOTE_ACCESS_OP ] = "REMOTE_ACCESS_OP";
  tag [ TEMPLATE_OP ] = "TEMPLATE_OP";
  tag [ PROCESSORS_OP ] = "PROCESSORS_OP";
  tag [ DYNAMIC_OP ] = "DYNAMIC_OP";
  tag [ ALIGN_OP ] = "ALIGN_OP";
  tag [ DISTRIBUTE_OP ] = "DISTRIBUTE_OP";
  tag [ SHADOW_OP ] = "SHADOW_OP";
  tag [ INDIRECT_ACCESS_OP ] = "INDIRECT_ACCESS_OP";
  tag [ ACROSS_OP ] = "ACROSS_OP";
  tag [ NEW_VALUE_OP ] = "NEW_VALUE_OP";
  tag [ SHADOW_COMP_OP ] = "SHADOW_COMP_OP";
  tag [ STAGE_OP ] = "STAGE_OP";
  tag [ FORALL_OP ] = "FORALL_OP";
  tag [ CONSISTENT_OP ] = "CONSISTENT_OP";
  tag [ INTERFACE_OPERATOR ] = "INTERFACE_OPERATOR";
  tag [ INTERFACE_ASSIGNMENT ] = "INTERFACE_ASSIGNMENT";
  tag [ VAR_DECL_90 ] = "VAR_DECL_90";
  tag [ ASSIGNMENT_OP ] = "ASSIGNMENT_OP";
  tag [ OPERATOR_OP ] = "OPERATOR_OP";
  tag [ KIND_OP ] = "KIND_OP";
  tag [ LENGTH_OP ] = "LENGTH_OP";
  tag [ RECURSIVE_OP ] = "RECURSIVE_OP";
  tag [ ELEMENTAL_OP ] = "ELEMENTAL_OP";
  tag [ PURE_OP ] = "PURE_OP";
  tag [ DEFINED_OP ] = "DEFINED_OP";
  tag [ PARALLEL_OP ] = "PARALLEL_OP";
  tag [ INDIRECT_OP ] = "INDIRECT_OP";
  tag [ DERIVED_OP ] = "DERIVED_OP";
  tag [ DUMMY_REF ] = "DUMMY_REF";
  tag [ COMMON_OP ] = "COMMON_OP";
  tag [ SHADOW_NAMES_OP ] = "SHADOW_NAMES_OP";

/***************** variant tags for symbol table entries ********************/

  tag [ CONST_NAME ] = "CONST_NAME";
  tag [ ENUM_NAME ] = "ENUM_NAME";
  tag [ FIELD_NAME ] = "FIELD_NAME";
  tag [ VARIABLE_NAME ] = "VARIABLE_NAME";
  tag [ TYPE_NAME ] = "TYPE_NAME";
  tag [ PROGRAM_NAME ] = "PROGRAM_NAME";
  tag [ PROCEDURE_NAME ] = "PROCEDURE_NAME";
  tag [ VAR_FIELD ] = "VAR_FIELD";
  tag [ LABEL_VAR ] = "LABEL_VAR";
  tag [ FUNCTION_NAME ] = "FUNCTION_NAME";
  tag [ MEMBER_FUNC ] = "MEMBER_FUNC";
  tag [ CLASS_NAME ] = "CLASS_NAME";
  tag [ UNION_NAME ] = "UNION_NAME";
  tag [ STRUCT_NAME ] = "STRUCT_NAME";
  tag [ LABEL_NAME ] = "LABEL_NAME";
  tag [ COLLECTION_NAME ] = "COLLECTION_NAME";
  tag [ ROUTINE_NAME ] = "ROUTINE_NAME";
  tag [ CONSTRUCT_NAME ] = "CONSTRUCT_NAME";
  tag [ INTERFACE_NAME ] = "INTERFACE_NAME";
  tag [ MODULE_NAME ] = "MODULE_NAME";
  tag [ TEMPLATE_CL_NAME ] = "TEMPLATE_CL_NAME";
  tag [ TEMPLATE_FN_NAME ] = "TEMPLATE_FN_NAME";
  tag [ TECLASS_NAME ] = "TECLASS_NAME";
  tag [ SHADOW_GROUP_NAME ] = "SHADOW_GROUP_NAME";
  tag [ REDUCTION_GROUP_NAME ] = "REDUCTION_GROUP_NAME";
  tag [ REF_GROUP_NAME ] = "REF_GROUP_NAME";
  tag [ ASYNC_ID ] = "ASYNC_ID";
  tag [ CONSISTENT_GROUP_NAME ] = "CONSISTENT_GROUP_NAME";
  tag [ NAMELIST_NAME ] = "NAMELIST_NAME";
  tag [ COMMON_NAME ] = "COMMON_NAME";

  tag [ DEFAULT ] = "DEFAULT";
  tag [ T_INT ] = "T_INT";
  tag [ T_FLOAT ] = "T_FLOAT";
  tag [ T_DOUBLE ] = "T_DOUBLE";
  tag [ T_CHAR ] = "T_CHAR";
  tag [ T_BOOL ] = "T_BOOL";
  tag [ T_STRING ] = "T_STRING";
  tag [ T_ENUM ] = "T_ENUM";
  tag [ T_SUBRANGE ] = "T_SUBRANGE";
  tag [ T_LIST ] = "T_LIST";
  tag [ T_ARRAY ] = "T_ARRAY";
  tag [ T_RECORD ] = "T_RECORD";
  tag [ T_ENUM_FIELD ] = "T_ENUM_FIELD";
  tag [ T_UNKNOWN ] = "T_UNKNOWN";
  tag [ T_COMPLEX ] = "T_COMPLEX";
  tag [ T_VOID ] = "T_VOID";
  tag [ T_DESCRIPT ] = "T_DESCRIPT";
  tag [ T_FUNCTION ] = "T_FUNCTION";
  tag [ T_POINTER ] = "T_POINTER";
  tag [ T_UNION ] = "T_UNION";
  tag [ T_STRUCT ] = "T_STRUCT";
  tag [ T_CLASS ] = "T_CLASS";
  tag [ T_DERIVED_CLASS ] = "T_DERIVED_CLASS";
  tag [ T_DERIVED_TYPE ] = "T_DERIVED_TYPE";
  tag [ T_COLLECTION ] = "T_COLLECTION";
  tag [ T_DERIVED_COLLECTION ] = "T_DERIVED_COLLECTION";
  tag [ T_REFERENCE ] = "T_REFERENCE";
  tag [ T_DERIVED_TEMPLATE ] = "T_DERIVED_TEMPLATE";
  tag [ T_MEMBER_POINTER ] = "T_MEMBER_POINTER";
  tag [ T_TECLASS ] = "T_TECLASS";
  tag [ T_GATE ] = "T_GATE";
  tag [ T_EVENT ] = "T_EVENT";
  tag [ T_SEQUENCE ] = "T_SEQUENCE";
  tag [ T_DCOMPLEX ] = "T_DCOMPLEX";
  tag [ T_LONG ] = "T_LONG";
  tag [ BY_USE ] = "BY_USE";
  tag [ LOCAL ] = "LOCAL";
  tag [ INPUT ] = "INPUT";
  tag [ OUTPUT ] = "OUTPUT";
  tag [ IO ] = "IO";
  tag [ PROCESS_NAME ] = "PROCESS_NAME";

  tag [ OMP_PRIVATE ] = "OMP_PRIVATE";
  tag [ OMP_SHARED ] = "OMP_SHARED";
  tag [ OMP_FIRSTPRIVATE ] = "OMP_FIRSTPRIVATE";
  tag [ OMP_LASTPRIVATE ] = "OMP_LASTPRIVATE";
  tag [ OMP_THREADPRIVATE ] = "OMP_THREADPRIVATE";
  tag [ OMP_COPYIN ] = "OMP_COPYIN";
  tag [ OMP_COPYPRIVATE ] = "OMP_COPYPRIVATE";
  tag [ OMP_DEFAULT ] = "OMP_DEFAULT";
  tag [ OMP_ORDERED ] = "OMP_ORDERED";
  tag [ OMP_SCHEDULE ] = "OMP_SCHEDULE";
  tag [ OMP_REDUCTION ] = "OMP_REDUCTION";
  tag [ OMP_IF ] = "OMP_IF";
  tag [ OMP_NUM_THREADS ] = "OMP_NUM_THREADS";
  tag [ OMP_NOWAIT ] = "OMP_NOWAIT";
  tag [ OMP_PARALLEL_DIR ] = "OMP_PARALLEL_DIR";
  tag [ OMP_END_PARALLEL_DIR ] = "OMP_END_PARALLEL_DIR";
  tag [ OMP_DO_DIR ] = "OMP_DO_DIR";
  tag [ OMP_END_DO_DIR ] = "OMP_END_DO_DIR";
  tag [ OMP_SECTIONS_DIR ] = "OMP_SECTIONS_DIR";
  tag [ OMP_END_SECTIONS_DIR ] = "OMP_END_SECTIONS_DIR";
  tag [ OMP_SECTION_DIR ] = "OMP_SECTION_DIR";
  tag [ OMP_SINGLE_DIR ] = "OMP_SINGLE_DIR";
  tag [ OMP_END_SINGLE_DIR ] = "OMP_END_SINGLE_DIR";
  tag [ OMP_WORKSHARE_DIR ] = "OMP_WORKSHARE_DIR";
  tag [ OMP_END_WORKSHARE_DIR ] = "OMP_END_WORKSHARE_DIR";
  tag [ OMP_PARALLEL_DO_DIR ] = "OMP_PARALLEL_DO_DIR";
  tag [ OMP_END_PARALLEL_DO_DIR ] = "OMP_END_PARALLEL_DO_DIR";
  tag [ OMP_PARALLEL_SECTIONS_DIR ] = "OMP_PARALLEL_SECTIONS_DIR";
  tag [ OMP_END_PARALLEL_SECTIONS_DIR ] = "OMP_END_PARALLEL_SECTIONS_DIR";
  tag [ OMP_PARALLEL_WORKSHARE_DIR ] = "OMP_PARALLEL_WORKSHARE_DIR";
  tag [ OMP_END_PARALLEL_WORKSHARE_DIR ] = "OMP_END_PARALLEL_WORKSHARE_DIR";
  tag [ OMP_MASTER_DIR ] = "OMP_MASTER_DIR";
  tag [ OMP_END_MASTER_DIR ] = "OMP_END_MASTER_DIR";
  tag [ OMP_CRITICAL_DIR ] = "OMP_CRITICAL_DIR";
  tag [ OMP_END_CRITICAL_DIR ] = "OMP_END_CRITICAL_DIR";
  tag [ OMP_BARRIER_DIR ] = "OMP_BARRIER_DIR";
  tag [ OMP_ATOMIC_DIR ] = "OMP_ATOMIC_DIR";
  tag [ OMP_FLUSH_DIR ] = "OMP_FLUSH_DIR";
  tag [ OMP_ORDERED_DIR ] = "OMP_ORDERED_DIR";
  tag [ OMP_END_ORDERED_DIR ] = "OMP_END_ORDERED_DIR";
  tag [ RECORD_DECL ] = "RECORD_DECL";
  tag [ FUNC_STAT ] = "FUNC_STAT";
  tag [ OMP_ONETHREAD_DIR ] = "OMP_ONETHREAD_DIR";
  tag [ OMP_THREADPRIVATE_DIR ] = "OMP_THREADPRIVATE_DIR";
  tag [ OMP_DEFAULT_SECTION_DIR ] = "OMP_DEFAULT_SECTION_DIR";
  tag [ OMP_COLLAPSE ] = "OMP_COLLAPSE";

  tag [ ACC_REGION_DIR ] = "ACC_REGION_DIR";
  tag [ ACC_END_REGION_DIR ] = "ACC_END_REGION_DIR";
  tag [ ACC_CALL_STMT ] = "ACC_CALL_STMT";
  tag [ ACC_KERNEL_HEDR ] = "ACC_KERNEL_HEDR";
  tag [ ACC_GET_ACTUAL_DIR ] = "ACC_GET_ACTUAL_DIR";
  tag [ ACC_ACTUAL_DIR ] = "ACC_ACTUAL_DIR";
  tag [ ACC_CHECKSECTION_DIR ] = "ACC_CHECKSECTION_DIR";
  tag [ ACC_END_CHECKSECTION_DIR ] = "ACC_END_CHECKSECTION_DIR";
  tag [ ACC_ROUTINE_DIR ] = "ACC_ROUTINE_DIR";

  tag [ ACC_TIE_OP ] = "ACC_TIE_OP";
  tag [ ACC_INLOCAL_OP ] = "ACC_INLOCAL_OP";
  tag [ ACC_INOUT_OP ] = "ACC_INOUT_OP";
  tag [ ACC_IN_OP ] = "ACC_IN_OP";
  tag [ ACC_OUT_OP ] = "ACC_OUT_OP";
  tag [ ACC_LOCAL_OP ] = "ACC_LOCAL_OP";
  tag [ ACC_PRIVATE_OP ] = "ACC_PRIVATE_OP";
  tag [ ACC_DEVICE_OP ] = "ACC_DEVICE_OP";
  tag [ ACC_CUDA_OP ] = "ACC_CUDA_OP";
  tag [ ACC_HOST_OP ] = "ACC_HOST_OP";

  tag [ ACC_GLOBAL_OP ] = "ACC_GLOBAL_OP";
  tag [ ACC_ATTRIBUTES_OP ] = "ACC_ATTRIBUTES_OP";
  tag [ ACC_VALUE_OP ] = "ACC_VALUE_OP";
  tag [ ACC_SHARED_OP ] = "ACC_SHARED_OP";
  tag [ ACC_CONSTANT_OP ] = "ACC_CONSTANT_OP";
  tag [ ACC_USES_OP ] = "ACC_USES_OP";
  tag [ ACC_CALL_OP ] = "ACC_CALL_OP";
  tag [ ACC_CUDA_BLOCK_OP ] = "ACC_CUDA_BLOCK_OP";

  tag [ ACC_TARGETS_OP ] = "ACC_TARGETS_OP";
  tag [ ACC_ASYNC_OP ] = "ACC_ASYNC_OP";

  tag [ SPF_ANALYSIS_DIR ] = "SPF_ANALYSIS_DIR";
  tag [ SPF_PARALLEL_DIR ] = "SPF_PARALLEL_DIR";
  tag [ SPF_TRANSFORM_DIR ] = "SPF_TRANSFORM_DIR";
  tag [ SPF_NOINLINE_OP ] = "SPF_NOINLINE_OP";
  tag [ SPF_PARALLEL_REG_DIR ] = "SPF_PARALLEL_REG_DIR";
  tag [ SPF_END_PARALLEL_REG_DIR ] = "SPF_END_PARALLEL_REG_DIR";
  tag [ SPF_REGION_NAME ] = "SPF_REGION_NAME";
  tag [ SPF_EXPAND_OP ] = "SPF_EXPAND_OP";
  tag [ SPF_FISSION_OP ] = "SPF_FISSION_OP";
  tag [ SPF_SHRINK_OP ] = "SPF_SHRINK_OP";
  tag [ SPF_CHECKPOINT_DIR ] = "SPF_CHECKPOINT_DIR";
  tag [ SPF_TYPE_OP ] = "SPF_TYPE_OP";
  tag [ SPF_VARLIST_OP ] = "SPF_VARLIST_OP";
  tag [ SPF_EXCEPT_OP ] = "SPF_EXCEPT_OP";
  tag [ SPF_FILES_COUNT_OP ] = "SPF_FILES_COUNT_OP";
  tag [ SPF_INTERVAL_OP ] = "SPF_INTERVAL_OP";
  tag [ SPF_TIME_OP ] = "SPF_TIME_OP";
  tag [ SPF_ITER_OP ] = "SPF_ITER_OP";
  tag [ SPF_FLEXIBLE_OP ] = "SPF_FLEXIBLE_OP";
  tag [ SPF_PARAMETER_OP ] = "SPF_PARAMETER_OP";
  tag [ SPF_CODE_COVERAGE_OP ] = "SPF_CODE_COVERAGE_OP";
  tag [ SPF_UNROLL_OP ] = "SPF_UNROLL_OP";
  tag [ SPF_COVER_OP ] = "SPF_COVER_OP";
  tag [ SPF_MERGE_OP ] = "SPF_MERGE_OP";
  tag [ SPF_PROCESS_PRIVATE_OP ] = "SPF_PROCESS_PRIVATE_OP";

