diff -r 599e88d12f9a -r b2604fc6d25c stage4/generate_c/generate_c_il.cc --- a/stage4/generate_c/generate_c_il.cc Wed Mar 19 12:13:43 2014 +0000 +++ b/stage4/generate_c/generate_c_il.cc Sat Mar 29 22:46:09 2014 +0000 @@ -445,8 +445,8 @@ wanted_variablegeneration = complextype_base_assignment_vg; else wanted_variablegeneration = assignment_vg; - symbol->accept(*this); +/* s4o.print(","); if (negative) { if (get_datatype_info_c::is_BOOL_compatible(this->current_operand->datatype)) @@ -464,6 +464,24 @@ s4o.print(")"); wanted_variablegeneration = expression_vg; return NULL; +*/ + s4o.print(","); + if (type_is_complex) { + wanted_variablegeneration = complextype_suffix_vg; + symbol->accept(*this); + } + s4o.print(","); + if (negative) { + if (get_datatype_info_c::is_BOOL_compatible(this->current_operand->datatype)) + s4o.print("!"); + else + s4o.print("~"); + } + wanted_variablegeneration = expression_vg; + print_check_function(type, value, fb_value); + s4o.print(")"); + wanted_variablegeneration = expression_vg; + return NULL; } public: