summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/be/be_visitor_operation/upcall_command_ss.cpp
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2010-04-28 01:52:21 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2010-04-28 01:52:21 +0000
commit89910693b870fa5ea7106969a89a2a23bc008ffd (patch)
tree7a475d423d5c79a2eaf70b50668786c99c23aa61 /TAO/TAO_IDL/be/be_visitor_operation/upcall_command_ss.cpp
parentd953d42c093add0ffcbdd42422809a0cecd82c3d (diff)
downloadATCD-89910693b870fa5ea7106969a89a2a23bc008ffd.tar.gz
ChangeLogTag: Wed Apr 28 01:51:18 UTC 2010 Jeff Parsons <j.parsons@vanderbilt.edu>
Diffstat (limited to 'TAO/TAO_IDL/be/be_visitor_operation/upcall_command_ss.cpp')
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/upcall_command_ss.cpp35
1 files changed, 21 insertions, 14 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/upcall_command_ss.cpp b/TAO/TAO_IDL/be/be_visitor_operation/upcall_command_ss.cpp
index 0a70d7a112f..c605c0c83b5 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/upcall_command_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/upcall_command_ss.cpp
@@ -13,24 +13,22 @@
*/
//=============================================================================
-
-be_visitor_operation_upcall_command_ss
-::be_visitor_operation_upcall_command_ss (
- be_visitor_context *ctx)
+be_visitor_operation_upcall_command_ss::be_visitor_operation_upcall_command_ss (
+ be_visitor_context *ctx)
: be_visitor_operation (ctx)
{
}
-be_visitor_operation_upcall_command_ss
-::~be_visitor_operation_upcall_command_ss (void)
+be_visitor_operation_upcall_command_ss::~be_visitor_operation_upcall_command_ss (
+ void)
{
}
// The following needs to be done to deal until the MSVC compiler's broken
// handling of namespaces is fixed (hopefully forthcoming in version 7).
int
-be_visitor_operation_upcall_command_ss
-::gen_nested_namespace_begin (be_module *node)
+be_visitor_operation_upcall_command_ss::gen_nested_namespace_begin (
+ be_module *node)
{
TAO_OutStream *os = this->ctx_->stream ();
char *item_name = 0;
@@ -63,8 +61,8 @@ be_visitor_operation_upcall_command_ss
// The following needs to be done to deal until the MSVC compiler's broken
// handling of namespaces is fixed (hopefully forthcoming in version 7).
int
-be_visitor_operation_upcall_command_ss
-::gen_nested_namespace_end (be_module *node)
+be_visitor_operation_upcall_command_ss::gen_nested_namespace_end (
+ be_module *node)
{
TAO_OutStream *os = this->ctx_->stream ();
@@ -81,10 +79,16 @@ be_visitor_operation_upcall_command_ss
}
int
-be_visitor_operation_upcall_command_ss::visit (be_operation * node,
- char const * full_skel_name,
- char const * upcall_command_name)
+be_visitor_operation_upcall_command_ss::visit (
+ be_operation * node,
+ char const * full_skel_name,
+ char const * upcall_command_name)
{
+ if (node->is_sendc_ami ())
+ {
+ return 0;
+ }
+
be_interface * const intf = this->ctx_->attribute ()
? be_interface::narrow_from_scope (this->ctx_->attribute ()->defined_in ())
: be_interface::narrow_from_scope (node->defined_in ());
@@ -263,7 +267,8 @@ be_visitor_operation_upcall_command_ss::visit (be_operation * node,
}
int
-be_visitor_operation_upcall_command_ss::gen_upcall (be_operation * node)
+be_visitor_operation_upcall_command_ss::gen_upcall (
+ be_operation *node)
{
TAO_OutStream & os = *this->ctx_->stream ();
@@ -277,6 +282,7 @@ be_visitor_operation_upcall_command_ss::gen_upcall (be_operation * node)
bool excep_method = ((ACE_OS::strstr (op_name, excep_suffix) +
excep_suffix_len) ==
(op_name + ACE_OS::strlen (op_name)));
+
for (; !si.is_done (); si.next (), ++index)
{
AST_Argument * const arg =
@@ -399,6 +405,7 @@ be_visitor_operation_upcall_command_ss::gen_upcall (be_operation * node)
exceplist.visit_operation (node);
unsigned int exceptions_count = 0;
+
for (UTL_ExceptlistActiveIterator ei (node->exceptions ());
!ei.is_done (); ei.next ())
{