395 /*************************************/ |
395 /*************************************/ |
396 |
396 |
397 // SYM_REF2(structured_variable_c, record_variable, field_selector) |
397 // SYM_REF2(structured_variable_c, record_variable, field_selector) |
398 void *visit(structured_variable_c *symbol) { |
398 void *visit(structured_variable_c *symbol) { |
399 TRACE("structured_variable_c"); |
399 TRACE("structured_variable_c"); |
|
400 unsigned int vartype = search_varfb_instance_type->get_vartype(symbol->record_variable); |
|
401 bool type_is_complex = search_varfb_instance_type->type_is_complex(); |
400 if (generating_inlinefunction) { |
402 if (generating_inlinefunction) { |
401 switch (wanted_variablegeneration) { |
403 switch (wanted_variablegeneration) { |
402 case complextype_base_vg: |
404 case complextype_base_vg: |
403 symbol->record_variable->accept(*this); |
405 symbol->record_variable->accept(*this); |
|
406 if (!type_is_complex) { |
|
407 s4o.print("."); |
|
408 symbol->field_selector->accept(*this); |
|
409 } |
404 break; |
410 break; |
405 case complextype_suffix_vg: |
411 case complextype_suffix_vg: |
406 symbol->record_variable->accept(*this); |
412 symbol->record_variable->accept(*this); |
407 s4o.print("."); |
413 if (type_is_complex) { |
408 symbol->field_selector->accept(*this); |
414 s4o.print("."); |
|
415 symbol->field_selector->accept(*this); |
|
416 } |
409 break; |
417 break; |
410 default: |
418 default: |
411 print_getter(symbol); |
419 print_getter(symbol); |
412 break; |
420 break; |
413 } |
421 } |