stage4/generate_c/generate_c_il.cc
changeset 497 5b7a0d9838d2
parent 495 8c6823fee086
parent 405 7b5d67d1aeef
child 498 0637a4490c8c
--- a/stage4/generate_c/generate_c_il.cc	Sat Mar 31 15:34:33 2012 +0100
+++ b/stage4/generate_c/generate_c_il.cc	Sat Mar 31 15:36:08 2012 +0100
@@ -472,12 +472,18 @@
     		symbol_c* fb_symbol = NULL,
     		symbol_c* fb_value = NULL,
     		bool negative = false) {
-      unsigned int vartype = search_varfb_instance_type->get_vartype(symbol);
-      bool type_is_complex = search_varfb_instance_type->type_is_complex();
-      if (vartype == search_var_instance_decl_c::external_vt)
-        s4o.print(SET_EXTERNAL);
-      else if (vartype == search_var_instance_decl_c::located_vt)
-        s4o.print(SET_LOCATED);
+
+      bool type_is_complex = false;
+      if (fb_symbol == NULL) {
+        unsigned int vartype = search_varfb_instance_type->get_vartype(symbol);
+        type_is_complex = search_varfb_instance_type->type_is_complex();
+        if (vartype == search_var_instance_decl_c::external_vt)
+          s4o.print(SET_EXTERNAL);
+        else if (vartype == search_var_instance_decl_c::located_vt)
+          s4o.print(SET_LOCATED);
+        else
+          s4o.print(SET_VAR);
+      }
       else
         s4o.print(SET_VAR);
       s4o.print("(");