--- 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 <symbol_c *> *prev_il_instructions;
std::vector <symbol_c *> *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);