summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-06-30 21:46:16 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-06-30 21:46:16 +0000
commitcd0511bbf24fabfd900f1b6eee7cb78010b4c776 (patch)
treee41126979b640bf5f7d71f5615ad4970509a1d69
parent414625a033f2ea4a80f28a326a6c4d561ad4ffac (diff)
downloadATCD-cd0511bbf24fabfd900f1b6eee7cb78010b4c776.tar.gz
ChangeLogTag: Sun Jun 30 16:42:25 2002 Jeff Parsons <parsons@cs.wustl.edu>
-rw-r--r--TAO/TAO_IDL/be/be_visitor_union_branch/public_ch.cpp6
-rw-r--r--TAO/TAO_IDL/be/be_visitor_union_branch/public_ci.cpp8
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/field_ch.cpp6
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp23
4 files changed, 24 insertions, 19 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_union_branch/public_ch.cpp b/TAO/TAO_IDL/be/be_visitor_union_branch/public_ch.cpp
index 34db8b4ce5c..0341c745ea1 100644
--- a/TAO/TAO_IDL/be/be_visitor_union_branch/public_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_union_branch/public_ch.cpp
@@ -394,10 +394,10 @@ be_visitor_union_branch_public_ch::visit_predefined_type (be_predefined_type *no
break;
case AST_PredefinedType::PT_any:
*os << "void " << ub->local_name () << " ("
- << bt->nested_type_name (bu) << ");" << be_nl;
- *os << "const " << bt->nested_type_name (bu) << " "
+ << bt->nested_type_name (bu) << " &);" << be_nl;
+ *os << "const " << bt->nested_type_name (bu) << " &"
<< ub->local_name () << " (void) const;" << be_nl << be_nl;
- *os << bt->nested_type_name (bu) << " "
+ *os << bt->nested_type_name (bu) << " &"
<< ub->local_name () << " (void);" << be_nl << be_nl;
break;
case AST_PredefinedType::PT_void:
diff --git a/TAO/TAO_IDL/be/be_visitor_union_branch/public_ci.cpp b/TAO/TAO_IDL/be/be_visitor_union_branch/public_ci.cpp
index 38cc9e02da3..cd85b6701f1 100644
--- a/TAO/TAO_IDL/be/be_visitor_union_branch/public_ci.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_union_branch/public_ci.cpp
@@ -695,6 +695,10 @@ be_visitor_union_branch_public_ci::visit_predefined_type (
{
*os << "_ptr";
}
+ else if (pt == AST_PredefinedType::PT_any)
+ {
+ *os << " &";
+ }
*os << " val)" << be_nl
<< "{" << be_idt_nl
@@ -788,7 +792,7 @@ be_visitor_union_branch_public_ci::visit_predefined_type (
case AST_PredefinedType::PT_any:
// Get method with read-only access.
*os << "// retrieve the member" << be_nl
- << "ACE_INLINE const " << bt->name () << be_nl
+ << "ACE_INLINE const " << bt->name () << " &" << be_nl
<< bu->name () << "::" << ub->local_name ()
<< " (void) const" << be_nl
<< "{" << be_idt_nl
@@ -797,7 +801,7 @@ be_visitor_union_branch_public_ci::visit_predefined_type (
// Get method with read/write access
*os << "// retrieve the member" << be_nl
- << "ACE_INLINE " << bt->name () << be_nl
+ << "ACE_INLINE " << bt->name () << " &" << be_nl
<< bu->name () << "::" << ub->local_name ()
<< " (void)" << be_nl
<< "{" << be_idt_nl
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/field_ch.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/field_ch.cpp
index 2396ee194fe..f443ff1dd7a 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/field_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/field_ch.cpp
@@ -426,14 +426,14 @@ be_visitor_valuetype_field_ch::visit_predefined_type (be_predefined_type *node)
case AST_PredefinedType::PT_any:
// Set method.
*os << pre_op () << "void " << ub->local_name () << " ("
- << bt->name () << ")"
+ << bt->name () << " &)"
<< post_op () << be_nl;
// Get method (read-only).
- *os << pre_op () << "const " << bt->name () << " "
+ *os << pre_op () << "const " << bt->name () << " &"
<< ub->local_name () << " (void) const"
<< post_op () << be_nl << be_nl;
// Get method (read/write).
- *os << pre_op () << bt->name () << " "
+ *os << pre_op () << bt->name () << " &"
<< ub->local_name () << " (void)"
<< post_op () << be_nl << be_nl;
break;
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp
index f998a709147..bbc42c3e500 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp
@@ -583,6 +583,10 @@ be_visitor_valuetype_field_cs::visit_predefined_type (be_predefined_type *node)
{
*os << "_ptr";
}
+ else if (pt == AST_PredefinedType::PT_any)
+ {
+ *os << " &";
+ }
*os << " val)" << be_nl
<< "{" << be_idt_nl;
@@ -597,11 +601,8 @@ be_visitor_valuetype_field_cs::visit_predefined_type (be_predefined_type *node)
break;
case AST_PredefinedType::PT_any:
- *os << "ACE_NEW (" << be_idt << be_idt_nl
- << "this->" << bu->field_pd_prefix () << ub->local_name ()
- << bu->field_pd_postfix () << "," << be_nl
- << bt->name () << " (val)" << be_uidt_nl
- << ");" << be_uidt << be_uidt_nl;
+ *os << "this->" << bu->field_pd_prefix () << ub->local_name ()
+ << bu->field_pd_postfix () << " = val;" << be_uidt_nl;
break;
case AST_PredefinedType::PT_void:
@@ -615,7 +616,7 @@ be_visitor_valuetype_field_cs::visit_predefined_type (be_predefined_type *node)
break;
}
- *os << "}" << be_nl;
+ *os << "}" << be_nl << be_nl;
switch (node->pt ())
{
@@ -639,7 +640,7 @@ be_visitor_valuetype_field_cs::visit_predefined_type (be_predefined_type *node)
break;
case AST_PredefinedType::PT_any:
*os << "// Retrieve the member." << be_nl
- << this->pre_op () << "const " << bt->name () << be_nl;
+ << this->pre_op () << "const " << bt->name () << " &" << be_nl;
this->op_name (bu,
os);
@@ -647,14 +648,14 @@ be_visitor_valuetype_field_cs::visit_predefined_type (be_predefined_type *node)
*os << "::" << ub->local_name ()
<< " (void) const" << be_nl
<< "{" << be_idt_nl
- << "return *this->"
+ << "return this->"
<< bu->field_pd_prefix () << ub->local_name ()
<< bu->field_pd_postfix ()
<< ";" << be_uidt_nl
- << "}" << be_nl;
+ << "}" << be_nl << be_nl;
*os << "// Retrieve the member" << be_nl
- << this->pre_op () << bt->name () << be_nl;
+ << this->pre_op () << bt->name () << " &" << be_nl;
this->op_name (bu,
os);
@@ -662,7 +663,7 @@ be_visitor_valuetype_field_cs::visit_predefined_type (be_predefined_type *node)
*os << "::" << ub->local_name ()
<< " (void)" << be_nl
<< "{" << be_idt_nl
- << "return *this->"
+ << "return this->"
<< bu->field_pd_prefix () << ub->local_name ()
<< bu->field_pd_postfix ()
<< ";" << be_uidt_nl