osprey/crayf90/fe90/p_dcl_pu.c File Reference

#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"

Include dependency graph for p_dcl_pu.c:

Go to the source code of this file.

Functions/Subroutines

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"


Function Documentation

static void gen_end_prologue_debug_label ( int  attr_idx  )  [static]

void parse_block_stmt ( void   ) 

static void parse_dummy_args ( int  pgm_attr_idx  )  [static]

void parse_elemental_stmt ( void   ) 

void parse_entry_stmt ( void   ) 

Definition at line 200 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(), issue_msg(), LA_CH_VALUE, Label_Opr, length, Limit, LN_ATTR_IDX, LN_DEF_LOC, LN_NAME_IDX, LPAREN, MAKE_EXTERNAL_NAME, make_in_parent_string(), 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   ) 

void parse_module_stmt ( void   ) 

Definition at line 725 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, 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(), parse_error(), 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]

void parse_program_stmt ( void   ) 

void parse_pure_stmt ( void   ) 

void parse_recursive_stmt ( void   ) 

void parse_subroutine_stmt ( void   ) 

void parse_typed_function_stmt ( void   ) 

Definition at line 3116 of file p_dcl_pu.c.

References Ansi, Assumed_Size_Char, AT_DCL_ERR, AT_DEF_COLUMN, AT_DEF_LINE, AT_IS_INTRIN, 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, Check_FF2C_Script(), 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, Data_Obj, EOS, EOS_STR, err_str, Extern_Proc, FALSE, Find_EOS, Find_Lparen, Func_Entry, Func_Exit, Function, Function_Blk, Function_Stmt, idx, Interface_Blk, Interface_Body_Blk, Intern_Proc, on_off_flags_entry::issue_ansi_messages, LA_CH_VALUE, LN_ATTR_IDX, LPAREN, main_token, MATCHED_TOKEN_CLASS, MISC_RECS, Module_Proc, name_pool_idx, NEXT_LA_CH, ntr_type_tbl(), NULL, NULL_IDX, on_off_flags, parse_dummy_args(), parse_err_flush(), parse_length_selector(), parse_type_spec(), Pgm_Unit, PRINTMSG(), Real_4, Real_8, 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, STAR, start_new_prog_unit(), start_new_scp(), start_new_subpgm(), statement_number, stmt_start_col, stmt_start_line, stmt_type, stor_blk_tbl_idx, strcat(), Sub_Func_Stmt_Cat, Tok_Class_Id, Tok_Class_Keyword, Tok_Kwd_Elemental, Tok_Kwd_Function, Tok_Kwd_Pure, Tok_Kwd_Recursive, TOKEN_BUF_IDX, TOKEN_COLUMN, TOKEN_LINE, TOKEN_STMT_NUM, TOKEN_VALUE, TRACE, TRUE, TYP_CHAR_CLASS, TYP_DCL_VALUE, TYP_DESC, TYP_LINEAR, TYP_TYPE, TYP_WORK_IDX, type_tbl_idx, Unknown_Char, and Var_Len_Char.

Referenced by parse_prefix_spec(), and parse_type_dcl_stmt().

static void set_function_rslt ( int  attr_idx,
boolean  type_err 
) [static]

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 
)

static void start_new_scp ( void   )  [static]

static int start_new_subpgm ( pgm_unit_type  pgm_type,
boolean  has_error,
boolean  save_idxs 
) [static]

Definition at line 2113 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_NUM_SPECIFICS, 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, length, 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, Subroutine, 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().


Variable Documentation

char USMID[] = "\n@(#)5.0_pl/sources/p_dcl_pu.c 5.5 09/01/99 09:11:00\n" [static]

Definition at line 45 of file p_dcl_pu.c.


Generated on Wed Apr 8 14:45:06 2009 for Open64 by  doxygen 1.5.6