summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-08-20 02:09:11 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-08-20 02:09:11 +0000
commitfb0c7310f940fd054abde9f3ce46cedcfec277e3 (patch)
tree1369425497bd39974ec104e89ab81d619541b5c0
parentbf7a29a4fa9b1d1a50dbaa892e46ee6fd5a6b212 (diff)
downloadATCD-fb0c7310f940fd054abde9f3ce46cedcfec277e3.tar.gz
no more visitor in gen_check_exception
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/thru_poa_collocated_ss.cpp25
1 files changed, 7 insertions, 18 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/thru_poa_collocated_ss.cpp b/TAO/TAO_IDL/be/be_visitor_operation/thru_poa_collocated_ss.cpp
index e72644a3a40..874c8fa989b 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/thru_poa_collocated_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/thru_poa_collocated_ss.cpp
@@ -254,35 +254,24 @@ int
be_visitor_operation_thru_poa_collocated_ss::gen_check_exception (be_type *bt)
{
TAO_OutStream *os = this->ctx_->stream ();
- be_visitor *visitor;
- be_visitor_context ctx;
os->indent ();
// check if there is an exception
if (!this->void_return_type (bt))
{
- *os << "ACE_CHECK_RETURN (";
- // << "_tao_environment, ";
-
- // return the appropriate return value
- ctx = *this->ctx_;
- ctx.state (TAO_CodeGen::TAO_OPERATION_RETVAL_RETURN_CS);
- visitor = tao_cg->make_visitor (&ctx);
- if (!visitor || (bt->accept (visitor) == -1))
+ if (bt->size_type () == be_decl::VARIABLE
+ || bt->base_node_type () == AST_Decl::NT_array)
{
- delete visitor;
- ACE_ERROR_RETURN ((LM_ERROR,
- "(%N:%l) be_visitor_operation_thru_poa_collocated_cs::"
- "gen_check_exception - "
- "codegen failed\n"),
- -1);
+ *os << "ACE_CHECK_RETURN (0);\n";
+ }
+ else
+ {
+ *os << "ACE_CHECK_RETURN (_tao_retval);\n";
}
- *os << ");\n";
}
else
{
*os << "ACE_CHECK;\n";
- //<< "_tao_environment);\n";
}
return 0;