stage3/narrow_candidate_datatypes.hh
changeset 478 b13feab3b918
parent 466 d97a29b7fa8b
child 480 8a58d7b8b26c
equal deleted inserted replaced
477:c0c6ff7357b7 478:b13feab3b918
    44     symbol_c *il_operand;
    44     symbol_c *il_operand;
    45     il_instruction_c *fake_prev_il_instruction;
    45     il_instruction_c *fake_prev_il_instruction;
    46     std::vector <symbol_c *> *prev_il_instructions;
    46     std::vector <symbol_c *> *prev_il_instructions;
    47     std::vector <symbol_c *> *prev_il_instructions_intersected_datatypes;
    47     std::vector <symbol_c *> *prev_il_instructions_intersected_datatypes;
    48 
    48 
    49     bool is_widening_compatible(symbol_c *left_type, symbol_c *right_type, symbol_c *result_type, const struct widen_entry widen_table[]);
    49     bool is_widening_compatible(const struct widen_entry widen_table[], symbol_c *left_type, symbol_c *right_type, symbol_c *result_type, bool &deprecated_status);
    50 
    50 
    51     void  narrow_function_invocation(symbol_c *f_call, generic_function_call_t fcall_data);
    51     void  narrow_function_invocation(symbol_c *f_call, generic_function_call_t fcall_data);
    52     void  narrow_nonformal_call(symbol_c *f_call, symbol_c *f_decl, int *ext_parm_count = NULL);
    52     void  narrow_nonformal_call(symbol_c *f_call, symbol_c *f_decl, int *ext_parm_count = NULL);
    53     void  narrow_formal_call(symbol_c *f_call, symbol_c *f_decl, int *ext_parm_count = NULL);
    53     void  narrow_formal_call(symbol_c *f_call, symbol_c *f_decl, int *ext_parm_count = NULL);
    54     void *narrow_implicit_il_fb_call(symbol_c *il_instruction, const char *param_name, symbol_c *&called_fb_declaration);
    54     void *narrow_implicit_il_fb_call(symbol_c *il_instruction, const char *param_name, symbol_c *&called_fb_declaration);
       
    55 
    55     void *handle_il_instruction(symbol_c *symbol);
    56     void *handle_il_instruction(symbol_c *symbol);
       
    57     void *handle_il_instruction_widen(symbol_c *symbol, bool &deprecated_operation, const struct widen_entry widen_table[]);
       
    58 
    56     void *narrow_conditional_flow_control_IL_instruction(symbol_c *symbol);
    59     void *narrow_conditional_flow_control_IL_instruction(symbol_c *symbol);
    57 
    60 
    58 
    61 
    59   public:
    62   public:
    60     narrow_candidate_datatypes_c(symbol_c *ignore);
    63     narrow_candidate_datatypes_c(symbol_c *ignore);