summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/be/be_visitor_arg_traits.cpp
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2006-06-15 18:56:10 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2006-06-15 18:56:10 +0000
commit535b0cc71b467d95736eea8e9e778e4bbc4c219b (patch)
treee277eb69bd06fc41160331de91494d950eb3a978 /TAO/TAO_IDL/be/be_visitor_arg_traits.cpp
parent16ca54df56baba2206df610d38e5a3143b8c1ce9 (diff)
downloadATCD-535b0cc71b467d95736eea8e9e778e4bbc4c219b.tar.gz
ChangeLogTag: Thu Jun 15 15:05:43 UTC 2006 Jeff Parsons <j.parsons@vanderbilt.edu>
Diffstat (limited to 'TAO/TAO_IDL/be/be_visitor_arg_traits.cpp')
-rw-r--r--TAO/TAO_IDL/be/be_visitor_arg_traits.cpp20
1 files changed, 19 insertions, 1 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_arg_traits.cpp b/TAO/TAO_IDL/be/be_visitor_arg_traits.cpp
index d7936cbd2ed..0865739e81a 100644
--- a/TAO/TAO_IDL/be/be_visitor_arg_traits.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_arg_traits.cpp
@@ -76,6 +76,21 @@ be_visitor_arg_traits::visit_root (be_root *node)
<< "// Arg traits specializations." << be_nl
<< "namespace TAO" << be_nl
<< "{" << be_idt;
+
+ if (be_global->ami_call_back ())
+ {
+ int status =
+ this->visit_valuetype (be_global->messaging_exceptionholder ());
+
+ if (-1 == status)
+ {
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "(%N:%l) be_visitor_arg_traits::"
+ "visit_root - visit "
+ "Messaging::ExceptionHolder failed\n"),
+ -1);
+ }
+ }
if (this->visit_scope (node) == -1)
{
@@ -143,7 +158,7 @@ be_visitor_arg_traits::visit_interface (be_interface *node)
if (ACE_OS::strlen (this->S_) == 0)
{
*os << "," << be_nl
- << "TAO::Objref_Traits<" << node->name () << ">";
+ << "TAO::Objref_Traits<" << node->name () << ">";
}
*os << "," << be_nl << this->insert_policy() << " <"
@@ -170,6 +185,9 @@ be_visitor_arg_traits::visit_interface (be_interface *node)
int
be_visitor_arg_traits::visit_interface_fwd (be_interface_fwd *node)
{
+ // If a full definition with the same name in the same scope
+ // has been seen, then it will have gone through visit_interface()
+ // already.
if (this->generated (node))
{
return 0;