diff options
Diffstat (limited to 'TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp')
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp index e3f63a051a7..f7db8a0ca0f 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp @@ -98,7 +98,7 @@ be_visitor_valuetype_ss::visit_valuetype (be_valuetype *node) *os << be_idt_nl << ": TAO_Abstract_ServantBase (rhs)," << be_nl - << " TAO_ServantBase (rhs)," << be_idt_nl; + << " TAO_ServantBase (rhs)," << be_nl; if (concrete->is_nested ()) { @@ -113,8 +113,22 @@ be_visitor_valuetype_ss::visit_valuetype (be_valuetype *node) *os << bd->full_skel_name () << " (rhs)," << be_nl; } - *os << "ValueBase (rhs)" << be_uidt << be_uidt_nl - << "{}" << be_nl << be_nl; + *os << " ValueBase (rhs)," << be_nl; + + if (node->is_nested ()) + { + AST_Decl *scope = ScopeAsDecl (node->defined_in ()); + + *os << " ACE_NESTED_CLASS (" << scope->name () << ", " + << node->local_name () << ") ()"; + } + else + { + be_interface *bd = be_interface::narrow_from_decl (node); + *os << bd->full_skel_name () << " ()"; + } + + *os << be_uidt_nl << "{}" << be_nl << be_nl; *os << full_skel_name << "::~" << local_name_prefix << node_local_name |