summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ss.cpp
diff options
context:
space:
mode:
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.cpp20
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