Open64 (mfef90, whirl2f, and IR tools)
TAG: version-openad; SVN changeset: 916
|
#include "defines.h"
#include "host.m"
#include "host.h"
#include "target.m"
#include "target.h"
#include "globals.m"
#include "tokens.m"
#include "sytb.m"
#include "p_globals.m"
#include "debug.m"
#include "globals.h"
#include "tokens.h"
#include "sytb.h"
#include "p_globals.h"
Go to the source code of this file.
Functions | |
static void | gen_end_prologue_debug_label (int) |
static void | parse_dummy_args (int) |
static void | parse_prefix_spec (void) |
static void | set_function_rslt (int, boolean) |
static void | start_new_scp (void) |
static int | start_new_subpgm (pgm_unit_type, boolean, boolean) |
void | parse_block_stmt (void) |
void | parse_entry_stmt (void) |
void | parse_function_stmt (void) |
void | parse_module_stmt (void) |
void | parse_program_stmt (void) |
void | parse_elemental_stmt (void) |
void | parse_pure_stmt (void) |
void | parse_recursive_stmt (void) |
void | parse_subroutine_stmt (void) |
int | start_new_prog_unit (pgm_unit_type pgm_type, blk_cntxt_type blk_type, boolean no_name_entry, boolean parse_error, int *defer_msg) |
void | parse_typed_function_stmt () |
Variables | |
static char | USMID [] = "\n@(#)5.0_pl/sources/p_dcl_pu.c 5.5 09/01/99 09:11:00\n" |
static void gen_end_prologue_debug_label | ( | int | attr_idx | ) | [static] |
Definition at line 2640 of file p_dcl_pu.c.
References ADD_ATTR_TO_LOCAL_LIST, After, AT_DEFINED, AT_NAME_IDX, AT_NAME_LEN, AT_Tbl_Idx, ATL_CLASS, ATL_DEBUG_CLASS, ATL_DEF_STMT_IDX, ATP_EXT_NAME_IDX, ATP_EXT_NAME_LEN, Continue_Stmt, COPY_COMMON_ATTR_INFO, curr_stmt_sh_idx, FALSE, Func_Entry, Func_Exit, gen_sh(), IR_COL_NUM, IR_COL_NUM_L, IR_FLD_L, IR_IDX_L, IR_LINE_NUM, IR_LINE_NUM_L, IR_OPR, IR_TYPE_IDX, Label, Label_Opr, Lbl_Debug, Ldbg_End_Prologue, NTR_ATTR_TBL, NTR_IR_TBL, NULL, NULL_IDX, SH_COL_NUM, SH_GLB_LINE, SH_IR_IDX, SH_P2_SKIP_ME, TRACE, TRUE, and TYPELESS_DEFAULT_TYPE.
Referenced by parse_entry_stmt(), start_new_prog_unit(), and start_new_subpgm().
void parse_block_stmt | ( | void | ) |
Definition at line 86 of file p_dcl_pu.c.
References Ansi, Blockdata, Blockdata_Blk, CURR_BLK_NAME, CURR_BLK_NO_EXEC, EOS, EOS_STR, Error, FALSE, Find_EOS, Func_Entry, Func_Exit, LA_CH_VALUE, main_token, matched_specific_token(), MATCHED_TOKEN_CLASS, NEXT_LA_CH, NULL, NULL_IDX, parse_err_flush(), PRINTMSG(), start_new_prog_unit(), stmt_start_col, stmt_start_line, Tok_Class_Id, Tok_Class_Keyword, Tok_Id, Tok_Kwd_Data, token, TOKEN_COLUMN, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, TRACE, and TRUE.
static void parse_dummy_args | ( | int | pgm_attr_idx | ) | [static] |
Definition at line 1837 of file p_dcl_pu.c.
References AL_ATTR_IDX, AL_NEXT_IDX, AT_ATTR_LINK, AT_DCL_ERR, AT_DEFINED, AT_IS_DARG, AT_NAME_IDX, AT_NAME_LEN, AT_OBJ_CLASS, AT_OBJ_NAME_PTR, AT_REFERENCED, AT_SEMANTICS_DONE, AT_Tbl_Idx, ATD_CLASS, ATD_SEEN_OUTSIDE_IMP_DO, ATD_STOR_BLK_IDX, ATD_TYPE_IDX, ATP_FIRST_IDX, ATP_HAS_ALT_RETURN, ATP_NUM_DARGS, ATP_PGM_UNIT, ATP_PROC, Char_Rslt_Bound_Ref, cif_flags, CIF_Symbol_Is_Dummy_Arg, cif_usage_rec(), CLEAR_VARIANT_ATTR_INFO, COMMA, curr_scp_idx, Data_Obj, Dummy_Argument, Dummy_Proc, EOS, Error, FALSE, Find_Comma_Rparen, fnd_semantic_err(), Func_Entry, Func_Exit, gen_compiler_tmp(), INTEGER_DEFAULT_TYPE, Internal, LA_CH_COLUMN, LA_CH_LINE, LA_CH_VALUE, LN_DEF_LOC, LPAREN, MATCHED_TOKEN_CLASS, max_call_list_size, NEXT_LA_CH, NTR_ATTR_LIST_TBL, NTR_SN_TBL, ntr_sym_tbl(), NULL, NULL_IDX, Obj_Dummy_Arg, parse_err_flush(), Pgm_Unit, PRINTMSG(), Referenced, RPAREN, SCP_ATTR_IDX, SCP_DARG_LIST, SCP_SB_DARG_IDX, SET_IMPL_TYPE, Shared, SN_ATTR_IDX, SN_COLUMN_NUM, SN_LINE_NUM, SN_NAME_IDX, SN_NAME_LEN, srch_kwd_name(), srch_sym_tbl(), STAR, Subroutine, Tok_Class_Id, token, TOKEN_COLUMN, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, TRACE, TRUE, and XREF_RECS.
Referenced by parse_entry_stmt(), parse_function_stmt(), parse_prefix_spec(), parse_subroutine_stmt(), and parse_typed_function_stmt().
void parse_elemental_stmt | ( | void | ) |
Definition at line 1237 of file p_dcl_pu.c.
References AT_OBJ_CLASS, AT_WORK_IDX, ATP_ELEMENTAL, CLEAR_ATTR_NTRY, Func_Entry, Func_Exit, NULL, parse_prefix_spec(), Pgm_Unit, TRACE, and TRUE.
void parse_entry_stmt | ( | void | ) |
Definition at line 189 of file p_dcl_pu.c.
References After, AL_ATTR_IDX, AL_NEXT_IDX, AT_DCL_ERR, AT_NAME_IDX, AT_NAME_LEN, AT_OBJ_CLASS, AT_OBJ_NAME_PTR, AT_Tbl_Idx, ATD_CLASS, ATD_FUNC_IDX, ATI_PROC_IDX, ATP_ALT_ENTRY, ATP_ARGCHCK_ENTRY, ATP_ELEMENTAL, ATP_ENTRY_LABEL_SH_IDX, ATP_EXPL_ITRFC, ATP_EXT_NAME_IDX, ATP_EXT_NAME_LEN, ATP_FIRST_SH_IDX, ATP_MAY_INLINE, ATP_PGM_UNIT, ATP_PROC, ATP_PURE, ATP_RECURSIVE, ATP_RSLT_IDX, ATP_SCP_ALIVE, ATP_SCP_IDX, attr_aux_tbl_idx, attr_tbl_idx, Br_Uncond_Opr, chg_data_obj_to_pgm_unit(), cif_flags, CIF_Symbol_Declaration, cif_usage_rec(), cmd_line_flags, Continue_Stmt, CREATE_ERR_ATTR, CURR_BLK, curr_scp_idx, curr_stmt_category, curr_stmt_sh_idx, Data_Obj, cmd_line_flags_entry::debug_lvl, Debug_Lvl_1, Entry_Opr, Entry_Stmt, EOS, EOS_STR, Error, FALSE, Find_EOS, Find_Lparen, fnd_semantic_err(), Func_Entry, Func_Exit, Function, Function_Result, gen_end_prologue_debug_label(), gen_internal_lbl(), gen_sh(), Goto_Stmt, Implicit_None_Stmt_Cat, Interface, Interface_Body_Blk, IR_COL_NUM, IR_COL_NUM_L, IR_COL_NUM_R, IR_FLD_L, IR_FLD_R, IR_IDX_L, IR_IDX_R, IR_LINE_NUM, IR_LINE_NUM_L, IR_LINE_NUM_R, IR_OPR, IR_TYPE_IDX, iss_blk_stk_err(), LA_CH_VALUE, Label_Opr, Limit, LN_ATTR_IDX, LN_DEF_LOC, LN_NAME_IDX, LPAREN, MAKE_EXTERNAL_NAME, matched_specific_token(), MATCHED_TOKEN_CLASS, MAX_ALTERNATE_ENTRIES, Module_Proc, NEXT_LA_CH, NTR_ATTR_LIST_TBL, ntr_host_in_sym_tbl(), NTR_IR_TBL, ntr_sym_tbl(), NULL, NULL_IDX, Obj_Entry_Func, Obj_Entry_Subr, Obj_Module_Func, Obj_Module_Subr, parse_dummy_args(), parse_err_flush(), Pgm_Unit, PRINTMSG(), cmd_line_flags_entry::runtime_arg_entry, cmd_line_flags_entry::runtime_argument, SCP_ALT_ENTRY_CNT, SCP_ATTR_IDX, SCP_ENTRY_IDX, SCP_PARENT_IDX, set_function_rslt(), SH_COMPILER_GEN, SH_IR_IDX, SH_STMT_TYPE, srch_host_sym_tbl(), srch_sym_tbl(), STMT_CANT_BE_IN_BLK, stmt_type, Subroutine, Tok_Class_Id, Tok_Class_Keyword, Tok_Kwd_Result, token, TOKEN_COLUMN, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, TRACE, TRUE, TYPELESS_DEFAULT_TYPE, and XREF_RECS.
void parse_function_stmt | ( | void | ) |
Definition at line 614 of file p_dcl_pu.c.
References AT_DCL_ERR, ATP_ARGCHCK_ENTRY, ATP_COARRAY_CONCURRENT, ATP_PROC, cmd_line_flags, CURR_BLK, curr_scp_idx, curr_stmt_category, EOS, EOS_STR, Extern_Proc, FALSE, Find_EOS, Find_Lparen, Func_Entry, Func_Exit, Function, Function_Blk, Init_Stmt_Cat, Interface_Body_Blk, iss_blk_stk_err(), LA_CH_VALUE, LPAREN, main_token, MATCHED_TOKEN_CLASS, NEXT_LA_CH, NULL, parse_dummy_args(), parse_err_flush(), cmd_line_flags_entry::runtime_arg_entry, cmd_line_flags_entry::runtime_argument, SCP_IN_ERR, SCP_PARENT_IDX, set_function_rslt(), start_new_prog_unit(), start_new_scp(), start_new_subpgm(), stmt_start_col, stmt_start_line, id_str_entry::string, Sub_Func_Stmt_Cat, Tok_Class_Id, token, TOKEN_COLUMN, TOKEN_LINE, token_entry::token_str, TRACE, and TRUE.
Referenced by parse_prefix_spec().
void parse_module_stmt | ( | void | ) |
Definition at line 719 of file p_dcl_pu.c.
References AT_DCL_ERR, AT_DEF_COLUMN, AT_DEF_LINE, AT_ELEMENTAL_INTRIN, AT_IS_INTRIN, AT_MODULE_IDX, AT_NAME_IDX, AT_NAME_LEN, AT_NOT_VISIBLE, AT_OBJ_CLASS, AT_OBJ_NAME_PTR, AT_PRIVATE, AT_Tbl_Idx, AT_USE_ASSOCIATED, ATI_FIRST_SPECIFIC_IDX, ATI_INTERFACE_CLASS, ATI_PROC_IDX, ATP_MODULE_STR_IDX, ATP_PGM_UNIT, ATP_PROC, ATP_RECURSIVE, ATP_SCP_ALIVE, ATP_SCP_IDX, cmd_line_flags_entry::binary_output, check_global_pgm_unit(), cif_flags, CIF_Module_Procedure_Stmt, CIF_Module_Stmt, cif_stmt_type_rec(), CIF_Symbol_Declaration, cif_usage_rec(), CLEAR_VARIANT_ATTR_INFO, cmd_line_flags, COMMA, COPY_COMMON_ATTR_INFO, CREATE_ERR_ATTR, CREATE_ID, CURR_BLK, CURR_BLK_NAME, CURR_BLK_NO_EXEC, curr_scp_idx, curr_stmt_category, curr_stmt_sh_idx, Data_Init_Blk, EOS, EOS_STR, Error, FALSE, Find_Comma, Find_EOS, fnd_semantic_err(), Func_Entry, Func_Exit, Function, Generic_Function_Interface, Generic_Subroutine_Interface, Generic_Unknown_Interface, GN_NAME_IDX, Init_Stmt_Cat, Interface, Interface_Blk, iss_blk_stk_err(), LA_CH_VALUE, LN_DEF_LOC, main_token, MAKE_EXTERNAL_NAME, matched_specific_token(), MATCHED_TOKEN_CLASS, MISC_RECS, Module, Module_Blk, Module_Proc, Module_Proc_Stmt, name, NEXT_LA_CH, NTR_ATTR_TBL, ntr_host_in_sym_tbl(), NTR_INTERFACE_IN_SN_TBL, ntr_stor_blk_tbl(), ntr_sym_tbl(), NULL, NULL_IDX, Obj_Module_Proc, on_off_flags, cmd_line_flags_entry::pad, cmd_line_flags_entry::pad_amount, parse_err_flush(), Pgm_Unit, Pgm_Unknown, PRINTMSG(), on_off_flags_entry::recursive, SB_BLK_TYPE, sb_len, SB_MODULE, sb_name, SB_PAD_AMOUNT, SB_PAD_AMOUNT_SET, SB_PAD_BLK, SB_RUNTIME_INIT, SCP_SB_STATIC_IDX, SCP_SB_STATIC_INIT_IDX, SCP_SB_STATIC_UNINIT_IDX, SH_STMT_TYPE, srch_host_sym_tbl(), srch_linked_sn(), srch_sym_tbl(), start_new_prog_unit(), statement_number, Static, stmt_start_col, stmt_start_line, stmt_type, id_str_entry::string, Sub_Func_Stmt_Cat, Tok_Class_Id, Tok_Class_Keyword, Tok_Kwd_Procedure, token, TOKEN_COLUMN, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, TRACE, TRUE, Warning, and XREF_RECS.
static void parse_prefix_spec | ( | void | ) | [static] |
Definition at line 1331 of file p_dcl_pu.c.
References AT_DCL_ERR, AT_WORK_IDX, ATP_ARGCHCK_ENTRY, ATP_ELEMENTAL, ATP_PGM_UNIT, ATP_PROC, ATP_PURE, ATP_RECURSIVE, cmd_line_flags, CURR_BLK, CURR_BLK_ERR, curr_scp_idx, curr_stmt_category, curr_stmt_sh_idx, EOS, EOS_STR, Error, EXIT, Extern_Proc, FALSE, Find_EOS, Find_Lparen, Func_Entry, Func_Exit, Function, Function_Blk, Function_Stmt, Init_Stmt_Cat, Interface_Body_Blk, iss_blk_stk_err(), LA_CH_VALUE, LPAREN, main_token, MATCHED_TOKEN_CLASS, NEXT_LA_CH, NULL, parse_dummy_args(), parse_err_flush(), parse_function_stmt(), parse_subroutine_stmt(), parse_typed_function_stmt(), PRINTMSG(), reset_lex(), cmd_line_flags_entry::runtime_arg_entry, cmd_line_flags_entry::runtime_argument, SCP_ATTR_IDX, SCP_IN_ERR, SCP_PARENT_IDX, set_function_rslt(), SH_STMT_TYPE, start_new_prog_unit(), start_new_scp(), start_new_subpgm(), stmt_start_col, stmt_start_line, stmt_type, Sub_Func_Stmt_Cat, Subroutine, Subroutine_Blk, Subroutine_Stmt, Tok_Class_Keyword, Tok_Kwd_Character, Tok_Kwd_CoFunction, Tok_Kwd_Complex, Tok_Kwd_CoSubroutine, Tok_Kwd_Double, Tok_Kwd_Elemental, Tok_Kwd_Function, Tok_Kwd_Integer, Tok_Kwd_Logical, Tok_Kwd_Pure, Tok_Kwd_Real, Tok_Kwd_Recursive, Tok_Kwd_Subroutine, Tok_Kwd_Type, token, TOKEN_BUF_IDX, TOKEN_COLUMN, TOKEN_LINE, TOKEN_STMT_NUM, TRACE, and TRUE.
Referenced by parse_elemental_stmt(), parse_pure_stmt(), and parse_recursive_stmt().
void parse_program_stmt | ( | void | ) |
Definition at line 1168 of file p_dcl_pu.c.
References Ansi, EOS, EOS_STR, FALSE, Find_EOS, Func_Entry, Func_Exit, LA_CH_VALUE, LPAREN, main_token, MATCHED_TOKEN_CLASS, NEXT_LA_CH, NULL, parse_err_flush(), PRINTMSG(), Program, Program_Blk, start_new_prog_unit(), stmt_start_col, stmt_start_line, Tok_Class_Id, Tok_Class_Program_Str, token, TOKEN_COLUMN, TOKEN_LINE, TRACE, and TRUE.
void parse_pure_stmt | ( | void | ) |
Definition at line 1268 of file p_dcl_pu.c.
References AT_OBJ_CLASS, AT_WORK_IDX, ATP_PURE, CLEAR_ATTR_NTRY, Func_Entry, Func_Exit, NULL, parse_prefix_spec(), Pgm_Unit, TRACE, and TRUE.
void parse_recursive_stmt | ( | void | ) |
Definition at line 1300 of file p_dcl_pu.c.
References AT_OBJ_CLASS, AT_WORK_IDX, ATP_RECURSIVE, CLEAR_ATTR_NTRY, Func_Entry, Func_Exit, NULL, parse_prefix_spec(), Pgm_Unit, TRACE, and TRUE.
void parse_subroutine_stmt | ( | void | ) |
Definition at line 1539 of file p_dcl_pu.c.
References AT_DCL_ERR, ATP_ARGCHCK_ENTRY, ATP_COARRAY_CONCURRENT, ATP_PROC, cmd_line_flags, CURR_BLK, curr_scp_idx, curr_stmt_category, EOS, EOS_STR, Extern_Proc, FALSE, Find_EOS, Find_Lparen, Func_Entry, Func_Exit, Init_Stmt_Cat, Interface_Body_Blk, iss_blk_stk_err(), LA_CH_VALUE, LPAREN, main_token, MATCHED_TOKEN_CLASS, NEXT_LA_CH, NULL, parse_dummy_args(), parse_err_flush(), cmd_line_flags_entry::runtime_arg_entry, cmd_line_flags_entry::runtime_argument, SCP_IN_ERR, SCP_PARENT_IDX, start_new_prog_unit(), start_new_scp(), start_new_subpgm(), stmt_start_col, stmt_start_line, id_str_entry::string, Sub_Func_Stmt_Cat, Subroutine, Subroutine_Blk, Tok_Class_Id, token, TOKEN_COLUMN, TOKEN_LINE, token_entry::token_str, TRACE, and TRUE.
Referenced by parse_prefix_spec().
void parse_typed_function_stmt | ( | void | ) |
Definition at line 2980 of file p_dcl_pu.c.
References Assumed_Size_Char, AT_DCL_ERR, AT_DEF_COLUMN, AT_DEF_LINE, AT_OBJ_CLASS, AT_OBJ_NAME_PTR, AT_REFERENCED, AT_TYPED, AT_WORK_IDX, ATD_TYPE_IDX, ATI_HAS_NON_MOD_PROC, ATP_ARGCHCK_ENTRY, ATP_ELEMENTAL, ATP_PROC, ATP_PURE, ATP_RECURSIVE, ATP_RSLT_IDX, attr_tbl_idx, BLK_AT_IDX, BLK_BD_IDX, BLK_CN_IDX, BLK_CP_IDX, BLK_NP_IDX, BLK_SB_IDX, BLK_SN_IDX, blk_stk_idx, BLK_TYP_IDX, BLK_UNNAMED_INTERFACE, bounds_tbl_idx, Char_Rslt_Bound_Ref, Character, CHARACTER_DEFAULT_TYPE, cif_flags, CIF_Function_Stmt, cif_stmt_type_rec(), cmd_line_flags, Comment, const_pool_idx, const_tbl_idx, CURR_BLK, CURR_BLK_ERR, CURR_BLK_NAME, curr_scp_idx, curr_stmt_category, curr_stmt_sh_idx, EOS, EOS_STR, Error, Extern_Proc, FALSE, Find_EOS, Find_Lparen, Func_Entry, Func_Exit, Function, Function_Blk, Function_Stmt, idx, Interface_Blk, Interface_Body_Blk, Intern_Proc, LA_CH_VALUE, LN_ATTR_IDX, LPAREN, main_token, MATCHED_TOKEN_CLASS, MISC_RECS, Module_Proc, name_pool_idx, NEXT_LA_CH, NULL, NULL_IDX, parse_dummy_args(), parse_err_flush(), parse_type_spec(), Pgm_Unit, PRINTMSG(), reset_lex(), cmd_line_flags_entry::runtime_arg_entry, cmd_line_flags_entry::runtime_argument, SCP_ATTR_IDX, SCP_IN_ERR, SCP_LAST_CHILD_IDX, SCP_LN_FW_IDX, SCP_LN_LW_IDX, SCP_PARENT_IDX, sec_name_tbl_idx, set_function_rslt(), SH_STMT_TYPE, start_new_prog_unit(), start_new_scp(), start_new_subpgm(), statement_number, stmt_start_col, stmt_start_line, stmt_type, stor_blk_tbl_idx, Sub_Func_Stmt_Cat, Tok_Class_Id, Tok_Class_Keyword, Tok_Kwd_Elemental, Tok_Kwd_Function, Tok_Kwd_Pure, Tok_Kwd_Recursive, token, TOKEN_BUF_IDX, TOKEN_COLUMN, TOKEN_LINE, TOKEN_STMT_NUM, TRACE, TRUE, TYP_CHAR_CLASS, TYP_TYPE, type_tbl_idx, Unknown_Char, Var_Len_Char, and Warning.
Referenced by parse_prefix_spec(), and parse_type_dcl_stmt().
static void set_function_rslt | ( | int | attr_idx, |
boolean | type_err | ||
) | [static] |
Definition at line 1637 of file p_dcl_pu.c.
References AT_ACCESS_SET, AT_ATTR_LINK, AT_DCL_ERR, AT_OBJ_CLASS, AT_OBJ_NAME_PTR, AT_PRIVATE, AT_REFERENCED, AT_Tbl_Idx, AT_TYPED, ATD_ARRAY_IDX, ATD_CLASS, ATD_FUNC_IDX, ATD_POINTER, ATD_TARGET, ATD_TYPE_IDX, ATP_ALT_ENTRY, ATP_RSLT_IDX, ATP_RSLT_NAME, Char_Rslt_Bound_Ref, cif_flags, CIF_Symbol_Declaration, cif_usage_rec(), CLEAR_ATTR_NTRY, COPY_COMMON_ATTR_INFO, CREATE_ERR_ATTR, Data_Obj, EOS, EOS_STR, Error, FALSE, Find_EOS, fnd_semantic_err(), Func_Entry, Func_Exit, Function_Result, LA_CH_VALUE, LN_DEF_LOC, LPAREN, matched_specific_token(), MATCHED_TOKEN_CLASS, NEXT_LA_CH, NTR_ATTR_TBL, ntr_sym_tbl(), NULL, NULL_IDX, Obj_Ntry_Func_Result, parse_err_flush(), PRINTMSG(), RPAREN, SET_IMPL_TYPE, srch_sym_tbl(), Tok_Class_Id, Tok_Class_Keyword, Tok_Kwd_Result, token, TOKEN_COLUMN, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, TRACE, TRUE, TYPELESS_DEFAULT_TYPE, and XREF_RECS.
Referenced by parse_entry_stmt(), parse_function_stmt(), parse_prefix_spec(), and parse_typed_function_stmt().
int start_new_prog_unit | ( | pgm_unit_type | pgm_type, |
blk_cntxt_type | blk_type, | ||
boolean | no_name_entry, | ||
boolean | parse_error, | ||
int * | defer_msg | ||
) |
Definition at line 2716 of file p_dcl_pu.c.
References _ERROR_DUPLICATE_GLOBALS, AT_CIF_SYMBOL_ID, AT_DCL_ERR, AT_DEF_COLUMN, AT_DEF_LINE, AT_DEFINED, AT_NAME_IDX, AT_NAME_LEN, AT_OBJ_CLASS, AT_OBJ_NAME_PTR, AT_Tbl_Idx, ATD_CLASS, ATD_SYMBOLIC_CONSTANT, ATP_EXPL_ITRFC, ATP_HAS_TASK_DIRS, ATP_MAY_INLINE, ATP_PGM_UNIT, ATP_SCP_ALIVE, ATP_SCP_IDX, attr_aux_tbl_idx, attr_tbl_idx, Before, cif_flags, CIF_Symbol_Declaration, cif_usage_rec(), cmd_line_flags, CREATE_ERR_ATTR, CURR_BLK, CURR_BLK_DEF_COLUMN, CURR_BLK_DEF_LINE, CURR_BLK_NAME, curr_scp_idx, curr_stmt_category, curr_stmt_sh_idx, Data_Obj, cmd_line_flags_entry::debug_lvl, Debug_Lvl_1, Dir_Integer_Stmt_Cat, dump_flags, Entry_Opr, Error, FALSE, Func_Entry, Func_Exit, Function, gen_end_prologue_debug_label(), gen_sh(), glb_tbl_idx, implicit_use_semantics(), Init_Stmt_Cat, Internal, IR_COL_NUM, IR_COL_NUM_L, IR_FLD_L, IR_IDX_L, IR_LINE_NUM, IR_LINE_NUM_L, IR_OPR, IR_TYPE_IDX, iss_blk_stk_err(), LN_ATTR_IDX, LN_DEF_LOC, LN_NAME_IDX, Main_Attr_Idx, MAKE_EXTERNAL_NAME, make_in_parent_string(), opt_flags_entry::modinline, Module, NTR_IR_TBL, ntr_sym_tbl(), NULL, NULL_IDX, opt_flags, Pgm_Unit, dump_flags_entry::preinline, PRINTMSG(), Program, Program_Stmt, SB_NAME_IDX, SB_NAME_LEN, SCP_ATTR_IDX, SCP_FIRST_SH_IDX, SCP_IN_ERR, SCP_SB_STATIC_IDX, SCP_SB_STATIC_INIT_IDX, SCP_SB_STATIC_UNINIT_IDX, SH_IR_IDX, SH_PREV_IDX, srch_sym_tbl(), stmt_start_col, stmt_start_line, token, TOKEN_COLUMN, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, TRACE, TRUE, TYPELESS_DEFAULT_TYPE, Variable, Warning, and XREF_RECS.
Referenced by parse_block_stmt(), parse_function_stmt(), parse_module_stmt(), parse_prefix_spec(), parse_prog_unit(), parse_program_stmt(), parse_subroutine_stmt(), parse_typed_function_stmt(), and stmt_level_semantics().
static void start_new_scp | ( | void | ) | [static] |
Definition at line 3321 of file p_dcl_pu.c.
References AT_NAME_IDX, CREATE_ID, CURR_BLK, curr_scp_idx, curr_stmt_sh_idx, FALSE, Func_Entry, Func_Exit, idx, IM_SET, IM_TYPE_IDX, IMPL_IDX, init_name_and_stor_tbls(), INTEGER_DEFAULT_TYPE, Interface_Blk, LN_ATTR_IDX, LN_DEF_LOC, LN_NAME_IDX, MAX_IMPL_CHS, NTR_SCP_TBL, ntr_sym_tbl(), NULL, NULL_IDX, REAL_DEFAULT_TYPE, SB_SCP_IDX, SCP_FIRST_CHILD_IDX, SCP_FIRST_SH_IDX, SCP_IMPL_NONE, SCP_IS_INTERFACE, SCP_LAST_CHILD_IDX, SCP_LAST_SH_IDX, SCP_LEVEL, SCP_NUM_CHILDREN, SCP_PARENT_IDX, SCP_PARENT_NONE, SCP_SB_DARG_IDX, SCP_SB_STACK_IDX, SCP_SIBLING_IDX, SH_LABELED, SH_NEXT_IDX, SH_PREV_IDX, srch_sym_tbl(), stmt_start_line, TOKEN_COLUMN, TOKEN_ID, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, TRACE, and TRUE.
Referenced by parse_function_stmt(), parse_prefix_spec(), parse_subroutine_stmt(), and parse_typed_function_stmt().
static int start_new_subpgm | ( | pgm_unit_type | pgm_type, |
boolean | has_error, | ||
boolean | save_idxs | ||
) | [static] |
Definition at line 2062 of file p_dcl_pu.c.
References AT_ATTR_LINK, AT_DCL_ERR, AT_DEF_COLUMN, AT_DEF_LINE, AT_ELEMENTAL_INTRIN, AT_IS_INTRIN, AT_LOCKED_IN, AT_MODULE_IDX, AT_NAME_IDX, AT_NAME_LEN, AT_NOT_VISIBLE, AT_OBJ_CLASS, AT_OBJ_NAME_PTR, AT_Tbl_Idx, AT_TYPED, AT_USE_ASSOCIATED, ATD_CLASS, ATI_FIRST_SPECIFIC_IDX, ATI_HAS_NON_MOD_PROC, ATI_INTERFACE_CLASS, ATI_PROC_IDX, ATI_UNNAMED_INTERFACE, ATP_ALT_ENTRY, ATP_DUPLICATE_INTERFACE_IDX, ATP_EXPL_ITRFC, ATP_EXT_NAME_IDX, ATP_EXT_NAME_LEN, ATP_IN_INTERFACE_BLK, ATP_IN_UNNAMED_INTERFACE, ATP_MAY_INLINE, ATP_PARENT_IDX, ATP_PGM_UNIT, ATP_PROC, ATP_RSLT_IDX, ATP_SCP_ALIVE, ATP_SCP_IDX, attr_tbl_idx, BASIC_RECS, BLK_AT_IDX, BLK_BD_IDX, BLK_CN_IDX, BLK_CP_IDX, BLK_NP_IDX, BLK_SB_IDX, BLK_SN_IDX, blk_stk_idx, BLK_TYP_IDX, BLK_UNNAMED_INTERFACE, bounds_tbl_idx, cdir_switches, chg_data_obj_to_pgm_unit(), cif_begin_scope_rec(), cif_flags, CIF_Symbol_Declaration, cif_usage_rec(), CLEAR_VARIANT_ATTR_INFO, cmd_line_flags, const_pool_idx, const_tbl_idx, Constant, COPY_COMMON_ATTR_INFO, CREATE_ERR_ATTR, CURR_BLK, CURR_BLK_FIRST_SH_IDX, CURR_BLK_NAME, CURR_BLK_NO_EXEC, curr_scp_idx, curr_stmt_category, curr_stmt_sh_idx, Data_Obj, cmd_line_flags_entry::debug_lvl, Debug_Lvl_1, Dir_Integer_Stmt_Cat, Entry_Opr, Error, Extern_Proc, FALSE, fnd_semantic_err(), Func_Entry, Func_Exit, Function, gen_end_prologue_debug_label(), Generic_Function_Interface, Generic_Subroutine_Interface, Generic_Unknown_Interface, glb_tbl_idx, cmd_line_flags_entry::implicit_use_idx, cdir_switch_entry::implicit_use_idx, implicit_use_semantics(), Interface, Interface_Blk, Interface_Body_Blk, Intern_Proc, Internal_Blk, IR_COL_NUM, IR_COL_NUM_L, IR_FLD_L, IR_IDX_L, IR_LINE_NUM, IR_LINE_NUM_L, IR_OPR, IR_TYPE_IDX, Label_Def, LN_ATTR_IDX, LN_DEF_LOC, LN_NAME_IDX, Main_Attr_Idx, MAKE_EXTERNAL_NAME, make_in_parent_string(), Module, Module_Proc, Module_Proc_Blk, name_pool_idx, NTR_ATTR_TBL, ntr_host_in_sym_tbl(), NTR_INTERFACE_IN_SN_TBL, NTR_IR_TBL, ntr_sym_tbl(), NULL, NULL_IDX, Obj_Interface_Func, Obj_Interface_Subr, Obj_Intern_Func, Obj_Intern_Subr, Obj_Module_Func, Obj_Module_Subr, Pgm_Unit, PRINTMSG(), PUSH_BLK_STK, SB_BLK_TYPE, SB_HOSTED_STATIC, SB_NAME_IDX, SB_NAME_LEN, SB_RUNTIME_INIT, SCP_ATTR_IDX, SCP_FIRST_SH_IDX, SCP_LAST_CHILD_IDX, SCP_LEVEL, SCP_PARENT_IDX, SCP_SB_HOSTED_DATA_IDX, SCP_SB_HOSTED_STATIC_IDX, SCP_SB_STATIC_IDX, SCP_SB_STATIC_INIT_IDX, SCP_SB_STATIC_UNINIT_IDX, sec_name_tbl_idx, SH_ERR_FLG, SH_IR_IDX, SH_STMT_TYPE, srch_host_sym_tbl(), srch_linked_sn(), srch_sym_tbl(), Static, Static_Named, stor_blk_tbl_idx, token, TOKEN_COLUMN, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, TRACE, TRUE, type_tbl_idx, TYPELESS_DEFAULT_TYPE, and XREF_RECS.
Referenced by parse_function_stmt(), parse_prefix_spec(), parse_subroutine_stmt(), and parse_typed_function_stmt().
char USMID[] = "\n@(#)5.0_pl/sources/p_dcl_pu.c 5.5 09/01/99 09:11:00\n" [static] |
Definition at line 37 of file p_dcl_pu.c.