diff options
Diffstat (limited to 'TAO/TAO_IDL/be/be_visitor_field.cpp')
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_field.cpp | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_field.cpp b/TAO/TAO_IDL/be/be_visitor_field.cpp index 655dfc073ca..aea7858ea37 100644 --- a/TAO/TAO_IDL/be/be_visitor_field.cpp +++ b/TAO/TAO_IDL/be/be_visitor_field.cpp @@ -77,6 +77,7 @@ be_visitor_field_ch::visit_field (be_field *node) int be_visitor_field_ch::visit_array (be_array *node) { + // TO-DO return 0; } @@ -256,7 +257,14 @@ be_visitor_field_ch::visit_string (be_string *node) os = this->ctx_->stream (); os->indent (); // start from current indentation level - *os << "CORBA::String_var"; + // set the right type; + if (this->ctx_->alias ()) + { + *os << this->ctx_->alias ()->nested_type_name (this->ctx_->scope ()) + << "_var"; + } + else + *os << "CORBA::String_var"; return 0; } @@ -316,10 +324,6 @@ be_visitor_field_ch::visit_structure (be_structure *node) int be_visitor_field_ch::visit_typedef (be_typedef *node) { - TAO_OutStream *os; // output stream - - os = this->ctx_->stream (); - os->indent (); // start from current indentation level this->ctx_->alias (node); // save the node for use in code generation and // indicate that the field of the field node // is a typedefed quantity |