diff -r a174d61f2087 -r 8a58d7b8b26c stage3/narrow_candidate_datatypes.hh --- a/stage3/narrow_candidate_datatypes.hh Tue Mar 13 18:29:34 2012 +0000 +++ b/stage3/narrow_candidate_datatypes.hh Tue Mar 13 19:04:07 2012 +0000 @@ -46,7 +46,7 @@ std::vector *prev_il_instructions; std::vector *prev_il_instructions_intersected_datatypes; - 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); + 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 = NULL); void narrow_function_invocation(symbol_c *f_call, generic_function_call_t fcall_data); void narrow_nonformal_call(symbol_c *f_call, symbol_c *f_decl, int *ext_parm_count = NULL); @@ -54,7 +54,8 @@ void *narrow_implicit_il_fb_call(symbol_c *il_instruction, const char *param_name, symbol_c *&called_fb_declaration); void *handle_il_instruction(symbol_c *symbol); - void *handle_il_instruction_widen(symbol_c *symbol, bool &deprecated_operation, const struct widen_entry widen_table[]); + void *narrow_binary_operator (const struct widen_entry widen_table[], symbol_c *symbol, bool *deprecated_operation = NULL); + void *narrow_binary_expression(const struct widen_entry widen_table[], symbol_c *symbol, symbol_c *l_expr, symbol_c *r_expr, bool *deprecated_operation = NULL); void *narrow_conditional_flow_control_IL_instruction(symbol_c *symbol);