diff options
author | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-01-27 06:46:12 +0000 |
---|---|---|
committer | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-01-27 06:46:12 +0000 |
commit | 4011b79fd1fa3a9e4b7d22f092b23887e596eab8 (patch) | |
tree | 069b1dc06cc4116eb02e28e39a9e62f3fcb59032 | |
parent | 50016c6de105635922f71d2f95cfac342a4a6965 (diff) | |
download | ATCD-4011b79fd1fa3a9e4b7d22f092b23887e596eab8.tar.gz |
ChangeLogTag: Mon Jan 27 000:31:33 2003 Jeff Parsons <j.parsons@vanderbilt.edu>
62 files changed, 742 insertions, 949 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog index 1d63ec36007..f5cc476cf16 100644 --- a/TAO/ChangeLog +++ b/TAO/ChangeLog @@ -1,3 +1,82 @@ +Mon Jan 27 000:31:33 2003 Jeff Parsons <j.parsons@vanderbilt.edu> + + * TAO_IDL/be/be_interface_strategy.cpp: + * TAO_IDL/be/be_visitor_array/array_ch.cpp: + * TAO_IDL/be/be_visitor_array/array_cs.cpp: + * TAO_IDL/be/be_visitor_array/cdr_op_ch.cpp: + * TAO_IDL/be/be_visitor_array/cdr_op_ci.cpp: + * TAO_IDL/be/be_visitor_component/component.cpp: + * TAO_IDL/be/be_visitor_eventtype/any_op_ch.cpp: + * TAO_IDL/be/be_visitor_eventtype/any_op_cs.cpp: + * TAO_IDL/be/be_visitor_eventtype/cdr_op_ch.cpp: + * TAO_IDL/be/be_visitor_eventtype/cdr_op_ci.cpp: + * TAO_IDL/be/be_visitor_eventtype/cdr_op_cs.cpp: + * TAO_IDL/be/be_visitor_eventtype/eventtype_ch.cpp: + * TAO_IDL/be/be_visitor_eventtype/eventtype_ci.cpp: + * TAO_IDL/be/be_visitor_eventtype/eventtype_cs.cpp: + * TAO_IDL/be/be_visitor_eventtype/eventtype_obv_ch.cpp: + * TAO_IDL/be/be_visitor_eventtype/eventtype_obv_ci.cpp: + * TAO_IDL/be/be_visitor_eventtype/eventtype_obv_cs.cpp: + * TAO_IDL/be/be_visitor_eventtype/eventtype_sh.cpp: + * TAO_IDL/be/be_visitor_eventtype/eventtype_si.cpp: + * TAO_IDL/be/be_visitor_eventtype/eventtype_ss.cpp: + * TAO_IDL/be/be_visitor_eventtype_fwd/any_op_ch.cpp: + * TAO_IDL/be/be_visitor_eventtype_fwd/cdr_op_ch.cpp: + * TAO_IDL/be/be_visitor_eventtype_fwd/cdr_op_ci.cpp: + * TAO_IDL/be/be_visitor_eventtype_fwd/eventtype_fwd_ch.cpp: + * TAO_IDL/be/be_visitor_exception/exception.cpp: + * TAO_IDL/be/be_visitor_field/cdr_op_ch.cpp: + * TAO_IDL/be/be_visitor_field/cdr_op_ci.cpp: + * TAO_IDL/be/be_visitor_field/cdr_op_cs.cpp: + * TAO_IDL/be/be_visitor_field/field_ch.cpp: + * TAO_IDL/be/be_visitor_field/field_ci.cpp: + * TAO_IDL/be/be_visitor_field/field_cs.cpp: + * TAO_IDL/be/be_visitor_interface/interface.cpp: + * TAO_IDL/be/be_visitor_module/module.cpp: + * TAO_IDL/be/be_visitor_root/root.cpp: + * TAO_IDL/be/be_visitor_structure/structure.cpp: + * TAO_IDL/be/be_visitor_typedef/typedef.cpp: + * TAO_IDL/be/be_visitor_union/discriminant_ch.cpp: + * TAO_IDL/be/be_visitor_union/discriminant_cs.cpp: + * TAO_IDL/be/be_visitor_union_branch/cdr_op_ch.cpp: + * TAO_IDL/be/be_visitor_union_branch/cdr_op_ci.cpp: + * TAO_IDL/be/be_visitor_union_branch/cdr_op_cs.cpp: + * TAO_IDL/be/be_visitor_union_branch/public_ch.cpp: + * TAO_IDL/be/be_visitor_union_branch/public_ci.cpp: + * TAO_IDL/be/be_visitor_union_branch/public_cs.cpp: + * TAO_IDL/be/be_visitor_valuetype/field_cdr_ch.cpp: + * TAO_IDL/be/be_visitor_valuetype/field_cdr_ci.cpp: + * TAO_IDL/be/be_visitor_valuetype/field_ch.cpp: + * TAO_IDL/be/be_visitor_valuetype/field_ci.cpp: + * TAO_IDL/be/be_visitor_valuetype/field_cs.cpp: + * TAO_IDL/be/be_visitor_valuetype/obv_module.cpp: + * TAO_IDL/be/be_visitor_valuetype/valuetype.cpp: + * TAO_IDL/be/be_visitor_valuetype/valuetype_ch.cpp: + * TAO_IDL/be/be_visitor_valuetype/valuetype_obv_ch.cpp: + * TAO_IDL/be_include/be_codegen.h: + + Removed some of the context state enum values. This is + just a start - most of these can be removed and replaced + with the corresponding TAO_ROOT_* value. Also a change + to the creation of union typecodes (specifically the + insertion of label values into the typecode) required + by the new Any implementation. + + * orbsvcs/IFR_Service/ifr_adding_visitor_union.cpp: + * orbsvcs/orbsvcs/IFRService/IRObject_i.cpp: + + Minor changes related to the new Any implementation. + + * tao/Typecode.cpp: + * tao/Typecode.h: + * tao/Typecode.i: + * tao/TypeCodeFactory/TypeCodeFactory_i.cpp: + * tao/TypeCodeFactory/TypeCodeFactory_i.h: + + Added recursive typecode support to TypeCodeFactory. + This involved fixing the TAO Typecode class to + handle recursive valuetype typecodes. + Sun Jan 12 02:08:58 2003 Jeff Parsons <j.parsons@vanderbilt.edu> * orbsvcs/orbsvcs/CosEvent.dsp: diff --git a/TAO/TAO_IDL/be/be_interface_strategy.cpp b/TAO/TAO_IDL/be/be_interface_strategy.cpp index 6f18c73c0b9..11c35748ae8 100644 --- a/TAO/TAO_IDL/be/be_interface_strategy.cpp +++ b/TAO/TAO_IDL/be/be_interface_strategy.cpp @@ -406,10 +406,8 @@ be_interface_ami_exception_holder_strategy::next_state ( switch (current_state) { case TAO_CodeGen::TAO_VALUETYPE_OBV_CH: - case TAO_CodeGen::TAO_EVENTTYPE_OBV_CH: return TAO_CodeGen::TAO_AMI_EXCEPTION_HOLDER_VALUETYPE_CH; case TAO_CodeGen::TAO_VALUETYPE_OBV_CS: - case TAO_CodeGen::TAO_EVENTTYPE_OBV_CS: return TAO_CodeGen::TAO_AMI_EXCEPTION_HOLDER_VALUETYPE_CS; default: return current_state; diff --git a/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp b/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp index 6c8eef2d909..f6ddf17b731 100644 --- a/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_array/array_ch.cpp @@ -96,7 +96,6 @@ int be_visitor_array_ch::visit_array (be_array *node) { case AST_Decl::NT_enum: { - ctx.state (TAO_CodeGen::TAO_ENUM_CH); be_visitor_enum_ch ec_visitor (&ctx); status = bt->accept (&ec_visitor); break; diff --git a/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp b/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp index a2825d31bec..b7ea2b0f01e 100644 --- a/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_array/array_cs.cpp @@ -337,7 +337,6 @@ int be_visitor_array_cs::visit_array (be_array *node) { case AST_Decl::NT_enum: { - ctx.state (TAO_CodeGen::TAO_ENUM_CS); be_visitor_enum_cs ec_visitor (&ctx); status = bt->accept (&ec_visitor); break; diff --git a/TAO/TAO_IDL/be/be_visitor_array/cdr_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_array/cdr_op_ch.cpp index a3feb2230ab..d11f51605f2 100644 --- a/TAO/TAO_IDL/be/be_visitor_array/cdr_op_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_array/cdr_op_ch.cpp @@ -82,7 +82,6 @@ be_visitor_array_cdr_op_ch::visit_array (be_array *node) { case AST_Decl::NT_enum: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CH); be_visitor_enum_cdr_op_ch ec_visitor (&ctx); status = bt->accept (&ec_visitor); break; diff --git a/TAO/TAO_IDL/be/be_visitor_array/cdr_op_ci.cpp b/TAO/TAO_IDL/be/be_visitor_array/cdr_op_ci.cpp index c733cce3e09..5389673524f 100644 --- a/TAO/TAO_IDL/be/be_visitor_array/cdr_op_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_array/cdr_op_ci.cpp @@ -138,7 +138,6 @@ be_visitor_array_cdr_op_ci::visit_array (be_array *node) { case AST_Decl::NT_enum: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CI); be_visitor_enum_cdr_op_ci ec_visitor (&ctx); status = bt->accept (&ec_visitor); break; diff --git a/TAO/TAO_IDL/be/be_visitor_component/component.cpp b/TAO/TAO_IDL/be/be_visitor_component/component.cpp index 0028c436a6d..33755fafc2f 100644 --- a/TAO/TAO_IDL/be/be_visitor_component/component.cpp +++ b/TAO/TAO_IDL/be/be_visitor_component/component.cpp @@ -63,22 +63,8 @@ be_visitor_component::visit_attribute (be_attribute *node) case TAO_CodeGen::TAO_COMPONENT_IS: ctx.state (TAO_CodeGen::TAO_ATTRIBUTE_IS); break; - case TAO_CodeGen::TAO_COMPONENT_ANY_OP_CH: - case TAO_CodeGen::TAO_COMPONENT_ANY_OP_CS: - case TAO_CodeGen::TAO_COMPONENT_CDR_OP_CH: - case TAO_CodeGen::TAO_COMPONENT_CDR_OP_CI: - case TAO_CodeGen::TAO_COMPONENT_CDR_OP_CS: - case TAO_CodeGen::TAO_COMPONENT_CI: - case TAO_CodeGen::TAO_COMPONENT_SI: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_component::" - "visit_attribute - " - "Bad context state\n: "), - -1); - } + return 0; // nothing to be done } // Same visitor for all the above cases where an action is taken. diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/any_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/any_op_ch.cpp index ee9ad8114ea..23bf3f3950d 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/any_op_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/any_op_ch.cpp @@ -41,7 +41,6 @@ int be_visitor_eventtype_any_op_ch::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_ANY_OP_CH); be_visitor_valuetype_any_op_ch visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/any_op_cs.cpp index afd3ee3f1fb..80474142c50 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/any_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/any_op_cs.cpp @@ -41,7 +41,6 @@ int be_visitor_eventtype_any_op_cs::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_ANY_OP_CS); be_visitor_valuetype_any_op_cs visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_ch.cpp index 37cfe88d0db..b04d9ed516e 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_ch.cpp @@ -41,7 +41,6 @@ int be_visitor_eventtype_cdr_op_ch::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CH); be_visitor_valuetype_cdr_op_ch visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_ci.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_ci.cpp index e74a25cbaa6..760703bb154 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_ci.cpp @@ -41,7 +41,6 @@ int be_visitor_eventtype_cdr_op_ci::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CI); be_visitor_valuetype_cdr_op_ci visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_cs.cpp index 57d12119f84..3c6456643f4 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/cdr_op_cs.cpp @@ -41,7 +41,6 @@ int be_visitor_eventtype_cdr_op_cs::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CS); be_visitor_valuetype_cdr_op_cs visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ch.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ch.cpp index 4744504c2c7..87514072e0d 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ch.cpp @@ -63,7 +63,6 @@ be_visitor_eventtype_ch::visit_eventtype (be_eventtype *node) os->gen_endif (); be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_CH); be_visitor_valuetype_ch visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ci.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ci.cpp index 26b703e8156..8f877b580cb 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ci.cpp @@ -39,7 +39,6 @@ int be_visitor_eventtype_ci::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_CI); be_visitor_valuetype_ci visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_cs.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_cs.cpp index 8a81117e1a7..4dd1b75cb3a 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_cs.cpp @@ -39,7 +39,6 @@ int be_visitor_eventtype_cs::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_CS); be_visitor_valuetype_cs visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_ch.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_ch.cpp index 99d5fd7e3fa..f0164d197ec 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_ch.cpp @@ -46,7 +46,6 @@ int be_visitor_eventtype_obv_ch::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_OBV_CH); be_visitor_valuetype_obv_ch visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_ci.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_ci.cpp index a875f18c37c..17a50567d75 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_ci.cpp @@ -46,7 +46,6 @@ int be_visitor_eventtype_obv_ci::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_OBV_CI); be_visitor_valuetype_obv_ci visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_cs.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_cs.cpp index f64338ed528..01b917396d4 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_obv_cs.cpp @@ -46,7 +46,6 @@ int be_visitor_eventtype_obv_cs::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_OBV_CS); be_visitor_valuetype_obv_cs visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_sh.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_sh.cpp index 2897e28c9e1..4bb72071b58 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_sh.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_sh.cpp @@ -39,7 +39,6 @@ int be_visitor_eventtype_sh::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_SH); be_visitor_valuetype_sh visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_si.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_si.cpp index a3f1041ea89..76112de4454 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_si.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_si.cpp @@ -39,7 +39,6 @@ int be_visitor_eventtype_si::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_SI); be_visitor_valuetype_si visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ss.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ss.cpp index 689ec9a3627..ed8433bd9a0 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ss.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype/eventtype_ss.cpp @@ -39,7 +39,6 @@ int be_visitor_eventtype_ss::visit_eventtype (be_eventtype *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_SS); be_visitor_valuetype_ss visitor (&ctx); return visitor.visit_valuetype (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/any_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/any_op_ch.cpp index 1c59727c4c8..86116afede8 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/any_op_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/any_op_ch.cpp @@ -38,7 +38,6 @@ int be_visitor_eventtype_fwd_any_op_ch::visit_eventtype_fwd (be_eventtype_fwd *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_ANY_OP_CH); be_visitor_valuetype_fwd_any_op_ch visitor (&ctx); return visitor.visit_valuetype_fwd (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/cdr_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/cdr_op_ch.cpp index 9bc1231c8f4..15858b3e88e 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/cdr_op_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/cdr_op_ch.cpp @@ -38,7 +38,6 @@ int be_visitor_eventtype_fwd_cdr_op_ch::visit_eventtype_fwd (be_eventtype_fwd *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CDR_OP_CH); be_visitor_valuetype_fwd_cdr_op_ch visitor (&ctx); return visitor.visit_valuetype_fwd (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/cdr_op_ci.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/cdr_op_ci.cpp index 303c88f4bcd..bfe9a36517a 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/cdr_op_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/cdr_op_ci.cpp @@ -38,7 +38,6 @@ int be_visitor_eventtype_fwd_cdr_op_ci::visit_eventtype_fwd (be_eventtype_fwd *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CDR_OP_CI); be_visitor_valuetype_fwd_cdr_op_ci visitor (&ctx); return visitor.visit_valuetype_fwd (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/eventtype_fwd_ch.cpp b/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/eventtype_fwd_ch.cpp index 41a304a1e8c..c2f2954be89 100644 --- a/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/eventtype_fwd_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_eventtype_fwd/eventtype_fwd_ch.cpp @@ -37,7 +37,6 @@ int be_visitor_eventtype_fwd_ch::visit_eventtype_fwd (be_eventtype_fwd *node) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CH); be_visitor_valuetype_fwd_ch visitor (&ctx); return visitor.visit_valuetype_fwd (node); } diff --git a/TAO/TAO_IDL/be/be_visitor_exception/exception.cpp b/TAO/TAO_IDL/be/be_visitor_exception/exception.cpp index 47d295c7a0f..bf2d3f7a713 100644 --- a/TAO/TAO_IDL/be/be_visitor_exception/exception.cpp +++ b/TAO/TAO_IDL/be/be_visitor_exception/exception.cpp @@ -57,42 +57,36 @@ be_visitor_exception::visit_field (be_field *node) { case TAO_CodeGen::TAO_EXCEPTION_CH: { - ctx.state (TAO_CodeGen::TAO_FIELD_CH); be_visitor_field_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_EXCEPTION_CI: { - ctx.state (TAO_CodeGen::TAO_FIELD_CI); be_visitor_field_ci visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_EXCEPTION_CS: { - ctx.state (TAO_CodeGen::TAO_FIELD_CS); be_visitor_field_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_EXCEPTION_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_FIELD_CDR_OP_CH); be_visitor_field_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_EXCEPTION_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_FIELD_CDR_OP_CI); be_visitor_field_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_EXCEPTION_CDR_OP_CS: { - ctx.state (TAO_CodeGen::TAO_FIELD_CDR_OP_CS); be_visitor_field_cdr_op_cs visitor (&ctx); status = node->accept (&visitor); break; diff --git a/TAO/TAO_IDL/be/be_visitor_field/cdr_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_field/cdr_op_ch.cpp index 39808029877..ed7111bed21 100644 --- a/TAO/TAO_IDL/be/be_visitor_field/cdr_op_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_field/cdr_op_ch.cpp @@ -93,7 +93,6 @@ be_visitor_field_cdr_op_ch::visit_array (be_array *node) ctx.node (node); // First generate the array declaration. - ctx.state (TAO_CodeGen::TAO_ARRAY_CDR_OP_CH); be_visitor_array_cdr_op_ch visitor (&ctx); if (node->accept (&visitor) == -1) @@ -122,7 +121,6 @@ be_visitor_field_cdr_op_ch::visit_enum (be_enum *node) ctx.node (node); // First generate the enum declaration. - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CH); be_visitor_enum_cdr_op_ch visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_field/cdr_op_ci.cpp b/TAO/TAO_IDL/be/be_visitor_field/cdr_op_ci.cpp index ba56ae1d365..2d0b84948f8 100644 --- a/TAO/TAO_IDL/be/be_visitor_field/cdr_op_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_field/cdr_op_ci.cpp @@ -174,7 +174,6 @@ be_visitor_field_cdr_op_ci::visit_array (be_array *node) ctx.node (node); // First generate the declaration. - ctx.state (TAO_CodeGen::TAO_ARRAY_CDR_OP_CI); be_visitor_array_cdr_op_ci visitor (&ctx); if (node->accept (&visitor) == -1) @@ -245,7 +244,6 @@ be_visitor_field_cdr_op_ci::visit_enum (be_enum *node) ctx.node (node); // Generate the typcode for enums. - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CI); be_visitor_enum_cdr_op_ci visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_field/cdr_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_field/cdr_op_cs.cpp index e98986cb100..3cff3ff8f78 100644 --- a/TAO/TAO_IDL/be/be_visitor_field/cdr_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_field/cdr_op_cs.cpp @@ -79,7 +79,6 @@ be_visitor_field_cdr_op_cs::visit_array (be_array *node) { be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ARRAY_CDR_OP_CS); be_visitor_array_cdr_op_cs visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_field/field_ch.cpp b/TAO/TAO_IDL/be/be_visitor_field/field_ch.cpp index aa1409d3e8b..5da3a694502 100644 --- a/TAO/TAO_IDL/be/be_visitor_field/field_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_field/field_ch.cpp @@ -167,7 +167,6 @@ be_visitor_field_ch::visit_enum (be_enum *node) ctx.node (node); // First generate the enum declaration. - ctx.state (TAO_CodeGen::TAO_ENUM_CH); be_visitor_enum_ch visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_field/field_ci.cpp b/TAO/TAO_IDL/be/be_visitor_field/field_ci.cpp index 027f32549d7..188e37dd773 100644 --- a/TAO/TAO_IDL/be/be_visitor_field/field_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_field/field_ci.cpp @@ -76,7 +76,6 @@ be_visitor_field_ci::visit_array (be_array *node) { be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ARRAY_CI); be_visitor_array_ci visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_field/field_cs.cpp b/TAO/TAO_IDL/be/be_visitor_field/field_cs.cpp index 9664770cbf9..0d2d6b26b4d 100644 --- a/TAO/TAO_IDL/be/be_visitor_field/field_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_field/field_cs.cpp @@ -78,7 +78,6 @@ be_visitor_field_cs::visit_array (be_array *node) { be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ARRAY_CS); be_visitor_array_cs visitor (&ctx); if (node->accept (&visitor) == -1) @@ -102,7 +101,6 @@ be_visitor_field_cs::visit_enum (be_enum *node) { be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ENUM_CS); be_visitor_enum_cs visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_interface/interface.cpp b/TAO/TAO_IDL/be/be_visitor_interface/interface.cpp index 163d47d9693..7ff7033309f 100644 --- a/TAO/TAO_IDL/be/be_visitor_interface/interface.cpp +++ b/TAO/TAO_IDL/be/be_visitor_interface/interface.cpp @@ -321,14 +321,12 @@ be_visitor_interface::visit_constant (be_constant *node) { case TAO_CodeGen::TAO_INTERFACE_CH: { - ctx.state (TAO_CodeGen::TAO_CONSTANT_CH); be_visitor_constant_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_INTERFACE_CS: { - ctx.state (TAO_CodeGen::TAO_CONSTANT_CS); be_visitor_constant_cs visitor (&ctx); status = node->accept (&visitor); break; @@ -411,42 +409,36 @@ be_visitor_interface::visit_enum (be_enum *node) { case TAO_CodeGen::TAO_INTERFACE_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_CH); be_visitor_enum_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_INTERFACE_CS: { - ctx.state (TAO_CodeGen::TAO_ENUM_CS); be_visitor_enum_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_INTERFACE_ANY_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_ANY_OP_CH); be_visitor_enum_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_INTERFACE_ANY_OP_CS: { - ctx.state (TAO_CodeGen::TAO_ENUM_ANY_OP_CS); be_visitor_enum_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_INTERFACE_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CH); be_visitor_enum_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_INTERFACE_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CI); be_visitor_enum_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; diff --git a/TAO/TAO_IDL/be/be_visitor_module/module.cpp b/TAO/TAO_IDL/be/be_visitor_module/module.cpp index 9411cf4a63c..31d172916af 100644 --- a/TAO/TAO_IDL/be/be_visitor_module/module.cpp +++ b/TAO/TAO_IDL/be/be_visitor_module/module.cpp @@ -68,40 +68,20 @@ be_visitor_module::visit_constant (be_constant *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { - ctx.state (TAO_CodeGen::TAO_CONSTANT_CH); be_visitor_constant_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CS: + case TAO_CodeGen::TAO_ROOT_CS: { - ctx.state (TAO_CodeGen::TAO_CONSTANT_CS); be_visitor_constant_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: - case TAO_CodeGen::TAO_MODULE_CI: - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_constant - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -127,64 +107,44 @@ be_visitor_module::visit_enum (be_enum *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_CH); be_visitor_enum_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CS: + case TAO_CodeGen::TAO_ROOT_CS: { - ctx.state (TAO_CodeGen::TAO_ENUM_CS); be_visitor_enum_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_ANY_OP_CH); be_visitor_enum_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { - ctx.state (TAO_CodeGen::TAO_ENUM_ANY_OP_CS); be_visitor_enum_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CH); be_visitor_enum_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CI); be_visitor_enum_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: - case TAO_CodeGen::TAO_MODULE_CI: - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_enum - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -210,76 +170,64 @@ be_visitor_module::visit_exception (be_exception *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { ctx.state (TAO_CodeGen::TAO_EXCEPTION_CH); be_visitor_exception_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CI: + case TAO_CodeGen::TAO_ROOT_CI: { ctx.state (TAO_CodeGen::TAO_EXCEPTION_CI); be_visitor_exception_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CS: + case TAO_CodeGen::TAO_ROOT_CS: { ctx.state (TAO_CodeGen::TAO_EXCEPTION_CS); be_visitor_exception_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { ctx.state (TAO_CodeGen::TAO_EXCEPTION_ANY_OP_CH); be_visitor_exception_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { ctx.state (TAO_CodeGen::TAO_EXCEPTION_ANY_OP_CS); be_visitor_exception_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { ctx.state (TAO_CodeGen::TAO_EXCEPTION_CDR_OP_CH); be_visitor_exception_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { ctx.state (TAO_CodeGen::TAO_EXCEPTION_CDR_OP_CI); be_visitor_exception_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: { ctx.state (TAO_CodeGen::TAO_EXCEPTION_CDR_OP_CS); be_visitor_exception_cdr_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_exception - " - "Bad context state\n" - ), -1); - } + return 0; // nothing to be done } if (status == -1) @@ -303,88 +251,88 @@ be_visitor_module::visit_interface (be_interface *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: // This is the only context state involved in strategies. ctx.state (TAO_CodeGen::TAO_INTERFACE_CH); break; - case TAO_CodeGen::TAO_MODULE_CI: + case TAO_CodeGen::TAO_ROOT_CI: { ctx.state (TAO_CodeGen::TAO_INTERFACE_CI); be_visitor_interface_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CS: + case TAO_CodeGen::TAO_ROOT_CS: { ctx.state (TAO_CodeGen::TAO_INTERFACE_CS); be_visitor_interface_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SH: + case TAO_CodeGen::TAO_ROOT_SH: { ctx.state (TAO_CodeGen::TAO_INTERFACE_SH); be_visitor_interface_sh visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_IH: + case TAO_CodeGen::TAO_ROOT_IH: { ctx.state (TAO_CodeGen::TAO_INTERFACE_IH); be_visitor_interface_ih visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SI: + case TAO_CodeGen::TAO_ROOT_SI: { ctx.state (TAO_CodeGen::TAO_INTERFACE_SI); be_visitor_interface_si visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SS: + case TAO_CodeGen::TAO_ROOT_SS: { ctx.state (TAO_CodeGen::TAO_INTERFACE_SS); be_visitor_interface_ss visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_IS: + case TAO_CodeGen::TAO_ROOT_IS: { ctx.state (TAO_CodeGen::TAO_INTERFACE_IS); be_visitor_interface_is visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { ctx.state (TAO_CodeGen::TAO_INTERFACE_ANY_OP_CH); be_visitor_interface_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { ctx.state (TAO_CodeGen::TAO_INTERFACE_ANY_OP_CS); be_visitor_interface_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { ctx.state (TAO_CodeGen::TAO_INTERFACE_CDR_OP_CH); be_visitor_interface_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { ctx.state (TAO_CodeGen::TAO_INTERFACE_CDR_OP_CI); be_visitor_interface_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: { ctx.state (TAO_CodeGen::TAO_INTERFACE_CDR_OP_CS); be_visitor_interface_cdr_op_cs visitor (&ctx); @@ -486,52 +434,36 @@ be_visitor_module::visit_interface_fwd (be_interface_fwd *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { ctx.state (TAO_CodeGen::TAO_INTERFACE_FWD_CH); be_visitor_interface_fwd_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { ctx.state (TAO_CodeGen::TAO_INTERFACE_FWD_CDR_OP_CI); be_visitor_interface_fwd_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { ctx.state (TAO_CodeGen::TAO_INTERFACE_FWD_ANY_OP_CH); be_visitor_interface_fwd_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { ctx.state (TAO_CodeGen::TAO_INTERFACE_FWD_CDR_OP_CH); be_visitor_interface_fwd_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: - case TAO_CodeGen::TAO_MODULE_CI: - case TAO_CodeGen::TAO_MODULE_CS: - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_interface_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -557,94 +489,85 @@ be_visitor_module::visit_valuetype (be_valuetype *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_CH); be_visitor_valuetype_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CI: + case TAO_CodeGen::TAO_ROOT_CI: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_CI); be_visitor_valuetype_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CS: + case TAO_CodeGen::TAO_ROOT_CS: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_CS); be_visitor_valuetype_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CH); be_visitor_valuetype_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CI); be_visitor_valuetype_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CS); be_visitor_valuetype_cdr_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_ANY_OP_CH); be_visitor_valuetype_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_ANY_OP_CS); be_visitor_valuetype_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SH: + case TAO_CodeGen::TAO_ROOT_SH: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_SH); be_visitor_valuetype_sh visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SI: + case TAO_CodeGen::TAO_ROOT_SI: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_SI); be_visitor_valuetype_si visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SS: + case TAO_CodeGen::TAO_ROOT_SS: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_SS); be_visitor_valuetype_ss visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to do. default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_valuetype - " - "Bad context state\n"), - -1); - } + return 0; // nothing to do. } if (status == -1) @@ -670,52 +593,36 @@ be_visitor_module::visit_valuetype_fwd (be_valuetype_fwd *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CH); be_visitor_valuetype_fwd_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_ANY_OP_CH); be_visitor_valuetype_fwd_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CDR_OP_CH); be_visitor_valuetype_fwd_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CDR_OP_CI); be_visitor_valuetype_fwd_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: - case TAO_CodeGen::TAO_MODULE_CI: - case TAO_CodeGen::TAO_MODULE_CS: - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_valuetype_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -741,94 +648,85 @@ be_visitor_module::visit_eventtype (be_eventtype *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CH); be_visitor_eventtype_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CI: + case TAO_CodeGen::TAO_ROOT_CI: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CI); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CI); be_visitor_eventtype_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CS: + case TAO_CodeGen::TAO_ROOT_CS: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CS); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CS); be_visitor_eventtype_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CDR_OP_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CH); be_visitor_eventtype_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CDR_OP_CI); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CI); be_visitor_eventtype_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CDR_OP_CS); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CS); be_visitor_eventtype_cdr_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_ANY_OP_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_ANY_OP_CH); be_visitor_eventtype_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_ANY_OP_CS); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_ANY_OP_CS); be_visitor_eventtype_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SH: + case TAO_CodeGen::TAO_ROOT_SH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_SH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_SH); be_visitor_eventtype_sh visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SI: + case TAO_CodeGen::TAO_ROOT_SI: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_SI); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_SI); be_visitor_eventtype_si visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SS: + case TAO_CodeGen::TAO_ROOT_SS: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_SS); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_SS); be_visitor_eventtype_ss visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to do. default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_eventtype - " - "Bad context state\n"), - -1); - } + return 0; // nothing to do. } if (status == -1) @@ -854,52 +752,36 @@ be_visitor_module::visit_eventtype_fwd (be_eventtype_fwd *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_FWD_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CH); be_visitor_eventtype_fwd_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_FWD_ANY_OP_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_ANY_OP_CH); be_visitor_eventtype_fwd_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_FWD_CDR_OP_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CDR_OP_CH); be_visitor_eventtype_fwd_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_FWD_CDR_OP_CI); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CDR_OP_CI); be_visitor_eventtype_fwd_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: - case TAO_CodeGen::TAO_MODULE_CI: - case TAO_CodeGen::TAO_MODULE_CS: - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_eventtype_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -925,91 +807,91 @@ be_visitor_module::visit_component (be_component *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { ctx.state (TAO_CodeGen::TAO_COMPONENT_CH); be_visitor_component_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CI: + case TAO_CodeGen::TAO_ROOT_CI: { ctx.state (TAO_CodeGen::TAO_COMPONENT_CI); be_visitor_component_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CS: + case TAO_CodeGen::TAO_ROOT_CS: { ctx.state (TAO_CodeGen::TAO_COMPONENT_CS); be_visitor_component_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { ctx.state (TAO_CodeGen::TAO_COMPONENT_CDR_OP_CH); be_visitor_component_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { ctx.state (TAO_CodeGen::TAO_COMPONENT_CDR_OP_CI); be_visitor_component_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: { ctx.state (TAO_CodeGen::TAO_COMPONENT_CDR_OP_CS); be_visitor_component_cdr_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { ctx.state (TAO_CodeGen::TAO_COMPONENT_ANY_OP_CH); be_visitor_component_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { ctx.state (TAO_CodeGen::TAO_COMPONENT_ANY_OP_CS); be_visitor_component_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SH: + case TAO_CodeGen::TAO_ROOT_SH: { ctx.state (TAO_CodeGen::TAO_COMPONENT_SH); be_visitor_component_sh visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SI: + case TAO_CodeGen::TAO_ROOT_SI: { ctx.state (TAO_CodeGen::TAO_COMPONENT_SI); be_visitor_component_si visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SS: + case TAO_CodeGen::TAO_ROOT_SS: { ctx.state (TAO_CodeGen::TAO_COMPONENT_SS); be_visitor_component_ss visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_IH: + case TAO_CodeGen::TAO_ROOT_IH: { ctx.state (TAO_CodeGen::TAO_COMPONENT_IH); be_visitor_component_ih visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_IS: + case TAO_CodeGen::TAO_ROOT_IS: { ctx.state (TAO_CodeGen::TAO_COMPONENT_IS); be_visitor_component_is visitor (&ctx); @@ -1049,46 +931,29 @@ be_visitor_module::visit_component_fwd (be_component_fwd *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { ctx.state (TAO_CodeGen::TAO_COMPONENT_FWD_CH); be_visitor_component_fwd_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { ctx.state (TAO_CodeGen::TAO_COMPONENT_FWD_CDR_OP_CH); be_visitor_component_fwd_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { ctx.state (TAO_CodeGen::TAO_COMPONENT_FWD_CDR_OP_CI); be_visitor_component_fwd_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: - case TAO_CodeGen::TAO_MODULE_CI: - case TAO_CodeGen::TAO_MODULE_CS: - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_component_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1114,33 +979,14 @@ be_visitor_module::visit_home (be_home *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { be_visitor_home_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CI: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: - case TAO_CodeGen::TAO_MODULE_CS: - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_structure - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1166,76 +1012,64 @@ be_visitor_module::visit_structure (be_structure *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { ctx.state (TAO_CodeGen::TAO_STRUCT_CH); be_visitor_structure_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CI: + case TAO_CodeGen::TAO_ROOT_CI: { ctx.state (TAO_CodeGen::TAO_STRUCT_CI); be_visitor_structure_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CS: + case TAO_CodeGen::TAO_ROOT_CS: { ctx.state (TAO_CodeGen::TAO_STRUCT_CS); be_visitor_structure_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { ctx.state (TAO_CodeGen::TAO_STRUCT_ANY_OP_CH); be_visitor_structure_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { ctx.state (TAO_CodeGen::TAO_STRUCT_ANY_OP_CS); be_visitor_structure_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { ctx.state (TAO_CodeGen::TAO_STRUCT_CDR_OP_CH); be_visitor_structure_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { ctx.state (TAO_CodeGen::TAO_STRUCT_CDR_OP_CI); be_visitor_structure_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: { ctx.state (TAO_CodeGen::TAO_STRUCT_CDR_OP_CS); be_visitor_structure_cdr_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_structure - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1261,34 +1095,15 @@ be_visitor_module::visit_structure_fwd (be_structure_fwd *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { ctx.state (TAO_CodeGen::TAO_STRUCT_FWD_CH); be_visitor_structure_fwd_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CI: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: - case TAO_CodeGen::TAO_MODULE_CS: - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_structure_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1314,76 +1129,64 @@ be_visitor_module::visit_union (be_union *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { ctx.state (TAO_CodeGen::TAO_UNION_CH); be_visitor_union_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CI: + case TAO_CodeGen::TAO_ROOT_CI: { ctx.state (TAO_CodeGen::TAO_UNION_CI); be_visitor_union_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CS: + case TAO_CodeGen::TAO_ROOT_CS: { ctx.state (TAO_CodeGen::TAO_UNION_CS); be_visitor_union_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { ctx.state (TAO_CodeGen::TAO_UNION_ANY_OP_CH); be_visitor_union_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { ctx.state (TAO_CodeGen::TAO_UNION_ANY_OP_CS); be_visitor_union_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { ctx.state (TAO_CodeGen::TAO_UNION_CDR_OP_CH); be_visitor_union_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { ctx.state (TAO_CodeGen::TAO_UNION_CDR_OP_CI); be_visitor_union_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: { ctx.state (TAO_CodeGen::TAO_UNION_CDR_OP_CS); be_visitor_union_cdr_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_union - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1409,34 +1212,15 @@ be_visitor_module::visit_union_fwd (be_union_fwd *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { ctx.state (TAO_CodeGen::TAO_UNION_FWD_CH); be_visitor_union_fwd_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CI: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: - case TAO_CodeGen::TAO_MODULE_CS: - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_union_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1462,76 +1246,64 @@ be_visitor_module::visit_typedef (be_typedef *node) switch (this->ctx_->state ()) { - case TAO_CodeGen::TAO_MODULE_CH: + case TAO_CodeGen::TAO_ROOT_CH: { ctx.state (TAO_CodeGen::TAO_TYPEDEF_CH); be_visitor_typedef_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CI: + case TAO_CodeGen::TAO_ROOT_CI: { ctx.state (TAO_CodeGen::TAO_TYPEDEF_CI); be_visitor_typedef_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CS: + case TAO_CodeGen::TAO_ROOT_CS: { ctx.state (TAO_CodeGen::TAO_TYPEDEF_CS); be_visitor_typedef_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CH: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { ctx.state (TAO_CodeGen::TAO_TYPEDEF_ANY_OP_CH); be_visitor_typedef_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_ANY_OP_CS: + case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { ctx.state (TAO_CodeGen::TAO_TYPEDEF_ANY_OP_CS); be_visitor_typedef_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CH: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { ctx.state (TAO_CodeGen::TAO_TYPEDEF_CDR_OP_CH); be_visitor_typedef_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CI: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { ctx.state (TAO_CodeGen::TAO_TYPEDEF_CDR_OP_CI); be_visitor_typedef_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_CDR_OP_CS: + case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: { ctx.state (TAO_CodeGen::TAO_TYPEDEF_CDR_OP_CS); be_visitor_typedef_cdr_op_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_MODULE_SH: - case TAO_CodeGen::TAO_MODULE_SI: - case TAO_CodeGen::TAO_MODULE_SS: - case TAO_CodeGen::TAO_MODULE_IH: - case TAO_CodeGen::TAO_MODULE_IS: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_typedef - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_root/root.cpp b/TAO/TAO_IDL/be/be_visitor_root/root.cpp index 3866f774477..9c19bc085c0 100644 --- a/TAO/TAO_IDL/be/be_visitor_root/root.cpp +++ b/TAO/TAO_IDL/be/be_visitor_root/root.cpp @@ -222,33 +222,22 @@ int be_visitor_root::visit_root (be_root *node) switch (this->ctx_->state ()) { case TAO_CodeGen::TAO_ROOT_CH: - { - obv = 1; - ctx.state (TAO_CodeGen::TAO_MODULE_OBV_CH); - be_visitor_obv_module visitor (&ctx); - status = visitor.visit_scope (node); - break; - } + ctx.state (TAO_CodeGen::TAO_MODULE_OBV_CH); + break; case TAO_CodeGen::TAO_ROOT_CI: - { - obv = 1; - ctx.state (TAO_CodeGen::TAO_MODULE_OBV_CI); - be_visitor_obv_module visitor (&ctx); - status = visitor.visit_scope (node); - break; - } + ctx.state (TAO_CodeGen::TAO_MODULE_OBV_CI); + break; case TAO_CodeGen::TAO_ROOT_CS: - { - obv = 1; - ctx.state (TAO_CodeGen::TAO_MODULE_OBV_CS); - be_visitor_obv_module visitor (&ctx); - status = visitor.visit_scope (node); - break; - } + ctx.state (TAO_CodeGen::TAO_MODULE_OBV_CS); + break; default: break; } + obv = 1; + be_visitor_obv_module visitor (&ctx); + status = visitor.visit_scope (node); + if (obv == 1 && status == -1) { ACE_ERROR_RETURN ((LM_ERROR, @@ -430,39 +419,18 @@ be_visitor_root::visit_constant (be_constant *node) { case TAO_CodeGen::TAO_ROOT_CH: { - ctx.state (TAO_CodeGen::TAO_CONSTANT_CH); be_visitor_constant_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CS: { - ctx.state (TAO_CodeGen::TAO_CONSTANT_CS); be_visitor_constant_cs visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: - case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: - case TAO_CodeGen::TAO_ROOT_CI: - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_constant - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -490,63 +458,42 @@ be_visitor_root::visit_enum (be_enum *node) { case TAO_CodeGen::TAO_ROOT_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_CH); be_visitor_enum_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CS: { - ctx.state (TAO_CodeGen::TAO_ENUM_CS); be_visitor_enum_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_ANY_OP_CH); be_visitor_enum_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { - ctx.state (TAO_CodeGen::TAO_ENUM_ANY_OP_CS); be_visitor_enum_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CH); be_visitor_enum_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CI); be_visitor_enum_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: - case TAO_CodeGen::TAO_ROOT_CI: - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_enum - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -628,21 +575,8 @@ be_visitor_root::visit_exception (be_exception *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_exception - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -879,25 +813,8 @@ be_visitor_root::visit_interface_fwd (be_interface_fwd *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: - case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: - case TAO_CodeGen::TAO_ROOT_CI: - case TAO_CodeGen::TAO_ROOT_CS: - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_interface_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1000,18 +917,8 @@ be_visitor_root::visit_valuetype (be_valuetype *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to do. default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_valuetype - " - "Bad context state\n"), - -1); - } + return 0; // nothing to do. } if (status == -1) @@ -1065,25 +972,8 @@ be_visitor_root::visit_valuetype_fwd (be_valuetype_fwd *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: - case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: - case TAO_CodeGen::TAO_ROOT_CI: - case TAO_CodeGen::TAO_ROOT_CS: - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_valuetype_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1111,93 +1001,83 @@ be_visitor_root::visit_eventtype (be_eventtype *node) { case TAO_CodeGen::TAO_ROOT_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CH); be_visitor_eventtype_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CI: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CI); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CI); be_visitor_eventtype_ci visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CS: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CS); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CS); be_visitor_eventtype_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CDR_OP_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CH); be_visitor_eventtype_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CDR_OP_CI); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CI); be_visitor_eventtype_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_CDR_OP_CS); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CS); be_visitor_eventtype_cdr_op_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_ANY_OP_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_ANY_OP_CH); be_visitor_eventtype_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_ANY_OP_CS); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_ANY_OP_CS); be_visitor_eventtype_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_SH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_SH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_SH); be_visitor_eventtype_sh visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_SI: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_SI); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_SI); be_visitor_eventtype_si visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_SS: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_SS); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_SS); be_visitor_eventtype_ss visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to do. default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_eventtype - " - "Bad context state\n"), - -1); - } + return 0; // nothing to do. } if (status == -1) @@ -1225,51 +1105,34 @@ be_visitor_root::visit_eventtype_fwd (be_eventtype_fwd *node) { case TAO_CodeGen::TAO_ROOT_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_FWD_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CH); be_visitor_eventtype_fwd_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_FWD_ANY_OP_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_ANY_OP_CH); be_visitor_eventtype_fwd_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_FWD_CDR_OP_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CDR_OP_CH); be_visitor_eventtype_fwd_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_FWD_CDR_OP_CI); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_FWD_CDR_OP_CI); be_visitor_eventtype_fwd_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: - case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: - case TAO_CodeGen::TAO_ROOT_CI: - case TAO_CodeGen::TAO_ROOT_CS: - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_module::" - "visit_eventtype_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1372,18 +1235,8 @@ be_visitor_root::visit_component (be_component *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to do. default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_component - " - "Bad context state\n"), - -1); - } + return 0; // nothing to do. } if (status == -1) @@ -1437,25 +1290,8 @@ be_visitor_root::visit_component_fwd (be_component_fwd *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: - case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: - case TAO_CodeGen::TAO_ROOT_CI: - case TAO_CodeGen::TAO_ROOT_CS: - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_component_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1487,28 +1323,8 @@ be_visitor_root::visit_home (be_home *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_CI: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: - case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: - case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: - case TAO_CodeGen::TAO_ROOT_CS: - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_home - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1536,91 +1352,53 @@ be_visitor_root::visit_module (be_module *node) { case TAO_CodeGen::TAO_ROOT_CH: { - ctx.state (TAO_CodeGen::TAO_MODULE_CH); be_visitor_module_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CI: { - ctx.state (TAO_CodeGen::TAO_MODULE_CI); be_visitor_module visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CS: { - ctx.state (TAO_CodeGen::TAO_MODULE_CS); be_visitor_module visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_SH: { - ctx.state (TAO_CodeGen::TAO_MODULE_SH); be_visitor_module_sh visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_SI: - { - ctx.state (TAO_CodeGen::TAO_MODULE_SI); - be_visitor_module visitor (&ctx); - status = node->accept (&visitor); - break; - } case TAO_CodeGen::TAO_ROOT_SS: - { - ctx.state (TAO_CodeGen::TAO_MODULE_SS); - be_visitor_module visitor (&ctx); - status = node->accept (&visitor); - break; - } case TAO_CodeGen::TAO_ROOT_IS: { - ctx.state (TAO_CodeGen::TAO_MODULE_IS); be_visitor_module visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_IH: { - ctx.state (TAO_CodeGen::TAO_MODULE_IH); be_visitor_module_ih visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: - { - ctx.state (TAO_CodeGen::TAO_MODULE_ANY_OP_CH); - be_visitor_module_any_op visitor (&ctx); - status = node->accept (&visitor); - break; - } case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: { - ctx.state (TAO_CodeGen::TAO_MODULE_ANY_OP_CS); be_visitor_module_any_op visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: - { - ctx.state (TAO_CodeGen::TAO_MODULE_CDR_OP_CH); - be_visitor_module_cdr_op visitor (&ctx); - status = node->accept (&visitor); - break; - } case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: - { - ctx.state (TAO_CodeGen::TAO_MODULE_CDR_OP_CI); - be_visitor_module_cdr_op visitor (&ctx); - status = node->accept (&visitor); - break; - } case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: { - ctx.state (TAO_CodeGen::TAO_MODULE_CDR_OP_CS); be_visitor_module_cdr_op visitor (&ctx); status = node->accept (&visitor); break; @@ -1714,21 +1492,8 @@ be_visitor_root::visit_structure (be_structure *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_structure - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1761,28 +1526,8 @@ be_visitor_root::visit_structure_fwd (be_structure_fwd *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_CI: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: - case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: - case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: - case TAO_CodeGen::TAO_ROOT_CS: - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_structure_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1864,21 +1609,8 @@ be_visitor_root::visit_union (be_union *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_union - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -1911,28 +1643,9 @@ be_visitor_root::visit_union_fwd (be_union_fwd *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_CI: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CI: - case TAO_CodeGen::TAO_ROOT_ANY_OP_CH: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: - case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: - case TAO_CodeGen::TAO_ROOT_ANY_OP_CS: - case TAO_CodeGen::TAO_ROOT_CS: - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_TIE_SH: return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_union_fwd - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) @@ -2014,21 +1727,8 @@ be_visitor_root::visit_typedef (be_typedef *node) status = node->accept (&visitor); break; } - case TAO_CodeGen::TAO_ROOT_SH: - case TAO_CodeGen::TAO_ROOT_SI: - case TAO_CodeGen::TAO_ROOT_SS: - case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_IH: - case TAO_CodeGen::TAO_ROOT_TIE_SH: - return 0; // nothing to be done default: - { - ACE_ERROR_RETURN ((LM_ERROR, - "(%N:%l) be_visitor_root::" - "visit_typedef - " - "Bad context state\n"), - -1); - } + return 0; // nothing to be done } if (status == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_structure/structure.cpp b/TAO/TAO_IDL/be/be_visitor_structure/structure.cpp index 33a1ec1fa86..f82d642fb83 100644 --- a/TAO/TAO_IDL/be/be_visitor_structure/structure.cpp +++ b/TAO/TAO_IDL/be/be_visitor_structure/structure.cpp @@ -50,42 +50,36 @@ be_visitor_structure::visit_field (be_field *node) { case TAO_CodeGen::TAO_STRUCT_CH: { - ctx.state (TAO_CodeGen::TAO_FIELD_CH); be_visitor_field_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_STRUCT_CI: { - ctx.state (TAO_CodeGen::TAO_FIELD_CI); be_visitor_field_ci visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_STRUCT_CS: { - ctx.state (TAO_CodeGen::TAO_FIELD_CS); be_visitor_field_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_STRUCT_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_FIELD_CDR_OP_CH); be_visitor_field_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_STRUCT_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_FIELD_CDR_OP_CI); be_visitor_field_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_STRUCT_CDR_OP_CS: { - ctx.state (TAO_CodeGen::TAO_FIELD_CDR_OP_CS); be_visitor_field_cdr_op_cs visitor (&ctx); status = node->accept (&visitor); break; diff --git a/TAO/TAO_IDL/be/be_visitor_typedef/typedef.cpp b/TAO/TAO_IDL/be/be_visitor_typedef/typedef.cpp index baa0f690316..fd054886567 100644 --- a/TAO/TAO_IDL/be/be_visitor_typedef/typedef.cpp +++ b/TAO/TAO_IDL/be/be_visitor_typedef/typedef.cpp @@ -62,49 +62,42 @@ be_visitor_typedef::visit_array (be_array *node) } case TAO_CodeGen::TAO_TYPEDEF_CS: { - ctx.state (TAO_CodeGen::TAO_ARRAY_CI); be_visitor_array_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_TYPEDEF_CI: { - ctx.state (TAO_CodeGen::TAO_ARRAY_CS); be_visitor_array_ci visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_TYPEDEF_ANY_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ARRAY_ANY_OP_CH); be_visitor_array_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_TYPEDEF_ANY_OP_CS: { - ctx.state (TAO_CodeGen::TAO_ARRAY_ANY_OP_CS); be_visitor_array_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_TYPEDEF_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ARRAY_CDR_OP_CH); be_visitor_array_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_TYPEDEF_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_ARRAY_CDR_OP_CI); be_visitor_array_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_TYPEDEF_CDR_OP_CS: { - ctx.state (TAO_CodeGen::TAO_ARRAY_CDR_OP_CS); be_visitor_array_cdr_op_cs visitor (&ctx); status = node->accept (&visitor); break; @@ -144,42 +137,36 @@ be_visitor_typedef::visit_enum (be_enum *node) { case TAO_CodeGen::TAO_TYPEDEF_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_CH); be_visitor_enum_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_TYPEDEF_CS: { - ctx.state (TAO_CodeGen::TAO_ENUM_CS); be_visitor_enum_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_TYPEDEF_ANY_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_ANY_OP_CH); be_visitor_enum_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_TYPEDEF_ANY_OP_CS: { - ctx.state (TAO_CodeGen::TAO_ENUM_ANY_OP_CS); be_visitor_enum_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_TYPEDEF_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CH); be_visitor_enum_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_TYPEDEF_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CI); be_visitor_enum_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; diff --git a/TAO/TAO_IDL/be/be_visitor_union/discriminant_ch.cpp b/TAO/TAO_IDL/be/be_visitor_union/discriminant_ch.cpp index 33b495f6e55..43fe93d8b0d 100644 --- a/TAO/TAO_IDL/be/be_visitor_union/discriminant_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_union/discriminant_ch.cpp @@ -66,7 +66,6 @@ be_visitor_union_discriminant_ch::visit_enum (be_enum *node) ctx.node (node); // First generate the enum declaration. - ctx.state (TAO_CodeGen::TAO_ENUM_CH); be_visitor_enum_ch visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_union/discriminant_cs.cpp b/TAO/TAO_IDL/be/be_visitor_union/discriminant_cs.cpp index e7c719f34da..e49c96162e9 100644 --- a/TAO/TAO_IDL/be/be_visitor_union/discriminant_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_union/discriminant_cs.cpp @@ -62,7 +62,6 @@ be_visitor_union_discriminant_cs::visit_enum (be_enum *node) ctx.node (node); // generate the typecode for the enum - ctx.state (TAO_CodeGen::TAO_ENUM_CS); be_visitor_enum_cs visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_ch.cpp index 50a96af0e65..58075cc4330 100644 --- a/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_ch.cpp @@ -81,7 +81,6 @@ be_visitor_union_branch_cdr_op_ch::visit_array (be_array *node) be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ARRAY_CDR_OP_CH); be_visitor_array_cdr_op_ch visitor (&ctx); if (node->accept (&visitor) == -1) @@ -107,7 +106,6 @@ be_visitor_union_branch_cdr_op_ch::visit_enum (be_enum *node) be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CH); be_visitor_enum_cdr_op_ch visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_ci.cpp b/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_ci.cpp index 72e68d7f222..c1b97d3b951 100644 --- a/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_ci.cpp @@ -175,7 +175,6 @@ be_visitor_union_branch_cdr_op_ci::visit_array (be_array *node) ctx.node (node); // First generate the declaration. - ctx.state (TAO_CodeGen::TAO_ARRAY_CDR_OP_CI); be_visitor_array_cdr_op_ci visitor (&ctx); if (visitor.visit_array (node) == -1) @@ -250,7 +249,6 @@ be_visitor_union_branch_cdr_op_ci::visit_enum (be_enum *node) // will be modified based on what type of node we are visiting. be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CI); be_visitor_enum_cdr_op_ci visitor (&ctx); if (visitor.visit_enum (node) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_cs.cpp index bc664be738f..76996a2f371 100644 --- a/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_union_branch/cdr_op_cs.cpp @@ -75,7 +75,6 @@ be_visitor_union_branch_cdr_op_cs::visit_array (be_array *node) // This is the case for anonymous arrays. be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ARRAY_CDR_OP_CS); be_visitor_array_cdr_op_cs visitor (&ctx); if (node->accept (&visitor) == -1) 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 2426123a9a2..e65bc1f9853 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 @@ -182,7 +182,6 @@ be_visitor_union_branch_public_ch::visit_enum (be_enum *node) { be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ENUM_CH); be_visitor_enum_ch visitor (&ctx); if (node->accept (&visitor) == -1) 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 a27ad9fc264..094e76cb0a1 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 @@ -110,7 +110,6 @@ be_visitor_union_branch_public_ci::visit_array (be_array *node) ctx.node (node); // First generate the inline operations for this anonymous array type. - ctx.state (TAO_CodeGen::TAO_ARRAY_CI); be_visitor_array_ci visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_union_branch/public_cs.cpp b/TAO/TAO_IDL/be/be_visitor_union_branch/public_cs.cpp index b71a82bb660..5fb560d9180 100644 --- a/TAO/TAO_IDL/be/be_visitor_union_branch/public_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_union_branch/public_cs.cpp @@ -76,7 +76,6 @@ be_visitor_union_branch_public_cs::visit_array (be_array *node) // Anonymous array case. be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ARRAY_CS); be_visitor_array_cs visitor (&ctx); if (node->accept (&visitor) == -1) @@ -97,7 +96,6 @@ be_visitor_union_branch_public_cs::visit_enum (be_enum *node) { be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ENUM_CS); be_visitor_enum_cs visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_ch.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_ch.cpp index 0d4a7238d01..a77bc6486e8 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_ch.cpp @@ -79,7 +79,6 @@ be_visitor_valuetype_field_cdr_ch::visit_array (be_array *node) // This is the case for anonymous arrays. be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ARRAY_CDR_OP_CH); be_visitor_array_cdr_op_ch visitor (&ctx); if (node->accept (&visitor) == -1) @@ -104,7 +103,6 @@ be_visitor_valuetype_field_cdr_ch::visit_enum (be_enum *node) { be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CH); be_visitor_enum_cdr_op_ch visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_ci.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_ci.cpp index a80a3a6765d..ed3c827cf6a 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/field_cdr_ci.cpp @@ -155,7 +155,6 @@ be_visitor_valuetype_field_cdr_ci::visit_array (be_array *node) // This is the case for anonymous arrays. be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ARRAY_CDR_OP_CI); be_visitor_array_cdr_op_ci visitor (&ctx); if (node->accept (&visitor) == -1) @@ -215,7 +214,6 @@ be_visitor_valuetype_field_cdr_ci::visit_enum (be_enum *node) { be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CI); be_visitor_enum_cdr_op_ci visitor (&ctx); if (node->accept (&visitor) == -1) 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 286c2f3bcb8..10035469487 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/field_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/field_ch.cpp @@ -183,7 +183,6 @@ be_visitor_valuetype_field_ch::visit_enum (be_enum *node) { be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ENUM_CH); be_visitor_enum_ch visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/field_ci.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/field_ci.cpp index 4678af40c7d..80db430bbbc 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/field_ci.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/field_ci.cpp @@ -98,7 +98,6 @@ be_visitor_valuetype_field_ci::visit_array (be_array *node) { be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ARRAY_CI); be_visitor_array_ci visitor (&ctx); if (node->accept (&visitor) == -1) 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 118ecd0f788..26aa8a8e0a5 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/field_cs.cpp @@ -100,7 +100,6 @@ be_visitor_valuetype_field_cs::visit_array (be_array *node) { be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_ARRAY_CS); be_visitor_array_cs visitor (&ctx); if (node->accept (&visitor) == -1) diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/obv_module.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/obv_module.cpp index c6be4bcb6f7..cc9f3ae0842 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/obv_module.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/obv_module.cpp @@ -207,18 +207,18 @@ be_visitor_obv_module::visit_eventtype (be_eventtype *node) switch (this->ctx_->state ()) { case TAO_CodeGen::TAO_MODULE_OBV_CH: - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_OBV_CH); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_OBV_CH); break; case TAO_CodeGen::TAO_MODULE_OBV_CI: { // This context state is not involved in any strategies. - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_OBV_CI); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_OBV_CI); be_visitor_eventtype_obv_ci visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_MODULE_OBV_CS: - ctx.state (TAO_CodeGen::TAO_EVENTTYPE_OBV_CS); + ctx.state (TAO_CodeGen::TAO_VALUETYPE_OBV_CS); break; default: { diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp index 6248fd149a7..796e57876a4 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp @@ -234,14 +234,12 @@ be_visitor_valuetype::visit_constant (be_constant *node) { case TAO_CodeGen::TAO_VALUETYPE_CH: { - ctx.state (TAO_CodeGen::TAO_CONSTANT_CH); be_visitor_constant_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_VALUETYPE_CS: { - ctx.state (TAO_CodeGen::TAO_CONSTANT_CS); be_visitor_constant_cs visitor (&ctx); status = node->accept (&visitor); break; @@ -294,42 +292,36 @@ be_visitor_valuetype::visit_enum (be_enum *node) { case TAO_CodeGen::TAO_VALUETYPE_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_CH); be_visitor_enum_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_VALUETYPE_CS: { - ctx.state (TAO_CodeGen::TAO_ENUM_CS); be_visitor_enum_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_VALUETYPE_ANY_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_ANY_OP_CH); be_visitor_enum_any_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_VALUETYPE_ANY_OP_CS: { - ctx.state (TAO_CodeGen::TAO_ENUM_ANY_OP_CS); be_visitor_enum_any_op_cs visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CH: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CH); be_visitor_enum_cdr_op_ch visitor (&ctx); status = node->accept (&visitor); break; } case TAO_CodeGen::TAO_VALUETYPE_CDR_OP_CI: { - ctx.state (TAO_CodeGen::TAO_ENUM_CDR_OP_CI); be_visitor_enum_cdr_op_ci visitor (&ctx); status = node->accept (&visitor); break; @@ -969,7 +961,6 @@ be_visitor_valuetype::gen_field_pd (be_field *node) // will be modified based on what type of node we are visiting. be_visitor_context ctx (*this->ctx_); ctx.node (node); - ctx.state (TAO_CodeGen::TAO_FIELD_CH); be_visitor_field_ch visitor (&ctx); *os << be_nl; diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ch.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ch.cpp index 998b0666b4d..2aa3226539c 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_ch.cpp @@ -533,7 +533,6 @@ be_visitor_valuetype_ch::visit_field (be_field *node) } be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_FIELD_OBV_CH); be_visitor_valuetype_field_ch visitor (&ctx); if (vt->opt_accessor ()) diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_obv_ch.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_obv_ch.cpp index b0d443f93df..46d6858b930 100644 --- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_obv_ch.cpp +++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_obv_ch.cpp @@ -212,7 +212,6 @@ be_visitor_valuetype_obv_ch::visit_field (be_field *node) if (!vt->opt_accessor ()) { be_visitor_context ctx (*this->ctx_); - ctx.state (TAO_CodeGen::TAO_FIELD_OBV_CH); be_visitor_valuetype_field_ch visitor (&ctx); visitor.setenclosings ("virtual ",";"); diff --git a/TAO/TAO_IDL/be_include/be_codegen.h b/TAO/TAO_IDL/be_include/be_codegen.h index 95e43105898..e9b753089fd 100644 --- a/TAO/TAO_IDL/be_include/be_codegen.h +++ b/TAO/TAO_IDL/be_include/be_codegen.h @@ -114,27 +114,6 @@ public: // Emitting code for array defn. TAO_ARRAY_CH, - TAO_ARRAY_CI, - TAO_ARRAY_CS, - TAO_ARRAY_ANY_OP_CH, - TAO_ARRAY_ANY_OP_CS, - TAO_ARRAY_CDR_OP_CH, - TAO_ARRAY_CDR_OP_CI, - TAO_ARRAY_CDR_OP_CS, - - // Emitting code for the constants. - TAO_CONSTANT_CH, // in client header - TAO_CONSTANT_CI, // XXXASG rm? - TAO_CONSTANT_CS, // in client stub - - // Emitting code for enums. - TAO_ENUM_CH, // in client header - TAO_ENUM_CS, // in client stubs - TAO_ENUM_ANY_OP_CH, - TAO_ENUM_ANY_OP_CS, - TAO_ENUM_CDR_OP_CH, - TAO_ENUM_CDR_OP_CI, - TAO_ENUM_CDR_OP_CS, // Emitting code for exceptions. TAO_EXCEPTION_CH, @@ -149,15 +128,6 @@ public: TAO_EXCEPTION_CDR_OP_CI, TAO_EXCEPTION_CDR_OP_CS, - // Emitting fields i.e., struct members. - TAO_FIELD_CH, - TAO_FIELD_CI, - TAO_FIELD_CS, - TAO_FIELD_CDR_OP_CH, - TAO_FIELD_CDR_OP_CI, - TAO_FIELD_CDR_OP_CS, - TAO_FIELD_OBV_CH, - // Emitting code for the interface. TAO_INTERFACE_CH, TAO_INTERFACE_CI, @@ -269,29 +239,8 @@ public: TAO_COMPONENT_FWD_CDR_OP_CI, TAO_COMPONENT_FWD_ANY_OP_CH, - // Emitting code for the eventtype. - TAO_EVENTTYPE_CH, - TAO_EVENTTYPE_CI, - TAO_EVENTTYPE_CS, - TAO_EVENTTYPE_IS, - TAO_EVENTTYPE_IH, - TAO_EVENTTYPE_SH, - TAO_EVENTTYPE_SI, - TAO_EVENTTYPE_SS, - TAO_EVENTTYPE_OBV_CH, // OBV_ class - TAO_EVENTTYPE_OBV_CI, + TAO_EVENTTYPE_OBV_CH, TAO_EVENTTYPE_OBV_CS, - TAO_EVENTTYPE_ANY_OP_CH, - TAO_EVENTTYPE_ANY_OP_CS, - TAO_EVENTTYPE_CDR_OP_CH, - TAO_EVENTTYPE_CDR_OP_CI, - TAO_EVENTTYPE_CDR_OP_CS, - - // Emitting code for the eventtype forward declaration. - TAO_EVENTTYPE_FWD_CH, - TAO_EVENTTYPE_FWD_CDR_OP_CH, - TAO_EVENTTYPE_FWD_CDR_OP_CI, - TAO_EVENTTYPE_FWD_ANY_OP_CH, // Emitting code for the component home. TAO_HOME_CH, @@ -309,19 +258,6 @@ public: TAO_HOME_CDR_OP_CS, // Emitting code for the module, - TAO_MODULE_CH, - TAO_MODULE_CI, - TAO_MODULE_CS, - TAO_MODULE_SH, - TAO_MODULE_SI, - TAO_MODULE_IH, - TAO_MODULE_SS, - TAO_MODULE_IS, - TAO_MODULE_ANY_OP_CH, - TAO_MODULE_ANY_OP_CS, - TAO_MODULE_CDR_OP_CH, - TAO_MODULE_CDR_OP_CI, - TAO_MODULE_CDR_OP_CS, TAO_MODULE_OBV_CH, // for OBV_ (cmp. POA_ namespace) TAO_MODULE_OBV_CI, TAO_MODULE_OBV_CS, diff --git a/TAO/orbsvcs/IFR_Service/ifr_adding_visitor_union.cpp b/TAO/orbsvcs/IFR_Service/ifr_adding_visitor_union.cpp index 57d413ca90e..01a13326623 100644 --- a/TAO/orbsvcs/IFR_Service/ifr_adding_visitor_union.cpp +++ b/TAO/orbsvcs/IFR_Service/ifr_adding_visitor_union.cpp @@ -164,11 +164,15 @@ ifr_adding_visitor_union::visit_scope (UTL_Scope *node) { TAO_OutputCDR cdr; cdr.write_ulong (ev->u.ulval); - this->members_[index].label._tao_replace ( - this->disc_tc_.in (), - TAO_ENCAP_BYTE_ORDER, - cdr.begin () - ); + TAO::Unknown_IDL_Type *unk = 0; + ACE_NEW_RETURN (unk, + TAO::Unknown_IDL_Type ( + this->disc_tc_.in (), + cdr.begin (), + TAO_ENCAP_BYTE_ORDER + ), + -1); + this->members_[index].label.replace (unk); } else { diff --git a/TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.cpp b/TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.cpp index 40bf608493b..5efd445acdb 100644 --- a/TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.cpp +++ b/TAO/orbsvcs/orbsvcs/IFRService/IRObject_i.cpp @@ -86,7 +86,7 @@ char * TAO_IRObject_i::reference_to_path (CORBA::IRObject_ptr obj) { PortableServer::ObjectId object_id; - TAO_ObjectKey object_key = obj->_object_key (); + TAO::ObjectKey object_key = obj->_object_key (); int status = TAO_POA::parse_ir_object_key (object_key, object_id); if (status != 0) diff --git a/TAO/tao/TypeCodeFactory/TypeCodeFactory_i.cpp b/TAO/tao/TypeCodeFactory/TypeCodeFactory_i.cpp index e6373ca451c..64165496044 100644 --- a/TAO/tao/TypeCodeFactory/TypeCodeFactory_i.cpp +++ b/TAO/tao/TypeCodeFactory/TypeCodeFactory_i.cpp @@ -242,6 +242,7 @@ TAO_TypeCodeFactory_i::create_union_tc ( } TAO_OutputCDR cdr; + CORBA::TypeCode::OFFSET_MAP *offset_map = 0; cdr << TAO_ENCAP_BYTE_ORDER; @@ -269,10 +270,11 @@ TAO_TypeCodeFactory_i::create_union_tc ( } } + CORBA::TCKind kind = discriminator_type->kind (ACE_ENV_SINGLE_ARG_PARAMETER); + if (index == raw_default_index) { // This is the default label - we have to find a legal value. - CORBA::TCKind kind = discriminator_type->kind (ACE_ENV_SINGLE_ARG_PARAMETER); ACE_CHECK_RETURN (CORBA::TypeCode::_nil ()); this->compute_default_label (kind, @@ -282,26 +284,33 @@ TAO_TypeCodeFactory_i::create_union_tc ( } else { - // Interpretive marshaling refuses to die ;-). - TAO_InputCDR in (members[index].label._tao_get_cdr (), - members[index].label._tao_byte_order ()); - - CORBA::TypeCode_var tc = members[index].label.type (); - - (void) TAO_Marshal_Object::perform_append (tc.in (), - &in, - &cdr - ACE_ENV_ARG_PARAMETER); - ACE_CHECK_RETURN (CORBA::TypeCode::_nil ()); + CORBA::Boolean good_label = + this->insert_label_value (kind, + members[index].label, + cdr); + + if (good_label == 0) + { + return CORBA::TypeCode::_nil (); + } } cdr << members[index].name; + if (members[index].type->offset_map () != 0) + { + this->update_map (offset_map, + members[index].type.in (), + id, + cdr); + } + cdr << members[index].type.in (); } return this->assemble_tc (cdr, - CORBA::tk_union + CORBA::tk_union, + offset_map ACE_ENV_ARG_PARAMETER); } @@ -359,7 +368,8 @@ TAO_TypeCodeFactory_i::create_enum_tc ( } return this->assemble_tc (cdr, - CORBA::tk_enum + CORBA::tk_enum, + 0 ACE_ENV_ARG_PARAMETER); } @@ -441,8 +451,9 @@ TAO_TypeCodeFactory_i::create_fixed_tc ( ) ACE_THROW_SPEC ((CORBA::SystemException)) { - // TODO - return 0; + ACE_THROW_RETURN (CORBA::NO_IMPLEMENT (TAO_DEFAULT_MINOR_CODE, + CORBA::COMPLETED_NO), + CORBA::TypeCode::_nil ()); } CORBA::TypeCode_ptr @@ -525,13 +536,43 @@ TAO_TypeCodeFactory_i::create_native_tc ( CORBA::TypeCode_ptr TAO_TypeCodeFactory_i::create_recursive_tc ( - const char * /* id */ + const char *id ACE_ENV_ARG_DECL_NOT_USED ) ACE_THROW_SPEC ((CORBA::SystemException)) { - // TODO - return 0; + if (id == 0 || !this->valid_id (id)) + { + ACE_THROW_RETURN (CORBA::BAD_PARAM (16, + CORBA::COMPLETED_NO), + CORBA::TypeCode::_nil ()); + } + + CORBA::TypeCode::OFFSET_MAP *map = 0; + ACE_NEW_RETURN (map, + CORBA::TypeCode::OFFSET_MAP, + CORBA::TypeCode::_nil ()); + + CORBA::ULong initial_offset = 0; + CORBA::TypeCode::OFFSET_LIST *list = 0; + ACE_NEW_RETURN (list, + CORBA::TypeCode::OFFSET_LIST, + CORBA::TypeCode::_nil ()); + list->enqueue_tail (initial_offset); + (void) map->bind (CORBA::string_dup (id), + list); + + TAO_OutputCDR cdr; + + // To be updated later with the actual offset value. + cdr << (long) 12345; + + CORBA::TCKind rec_kind = (CORBA::TCKind) 0xffffffff; + + return this->assemble_tc (cdr, + rec_kind, + map + ACE_ENV_ARG_PARAMETER); } CORBA::TypeCode_ptr @@ -780,6 +821,59 @@ TAO_TypeCodeFactory_i::compute_default_label ( } } +CORBA::Boolean +TAO_TypeCodeFactory_i::insert_label_value ( + CORBA::TCKind kind, + const CORBA::Any &any, + TAO_OutputCDR &cdr + ACE_ENV_ARG_DECL + ) +{ + const void *value = any.value (); + CORBA::TypeCode_ptr disc_tc = any._tao_get_typecode (); + + switch (kind) + { + case CORBA::tk_char: + return cdr << CORBA::Any::from_char (*ACE_reinterpret_cast ( + char *, + value + )); + case CORBA::tk_boolean: + return cdr << CORBA::Any::from_boolean (*ACE_reinterpret_cast ( + CORBA::Boolean *, + value + )); + case CORBA::tk_short: + return cdr << *ACE_reinterpret_cast (CORBA::Short *, value); + case CORBA::tk_ushort: + return cdr << *ACE_reinterpret_cast (CORBA::UShort *, value); + case CORBA::tk_long: + return cdr << *ACE_reinterpret_cast (CORBA::Long *, value); + case CORBA::tk_ulong: + return cdr << *ACE_reinterpret_cast (CORBA::ULong *, value); +#if !defined (ACE_LACKS_LONGLONG_T) + case CORBA::tk_ulonglong: + return cdr << *ACE_reinterpret_cast (CORBA::ULongLong *, value); +#endif /* ACE_LACKS_LONGLONG_T */ + case CORBA::tk_enum: + { + TAO_InputCDR in (any._tao_get_cdr (), + any._tao_byte_order ()); + + CORBA::TypeCode::traverse_status ts = + TAO_Marshal_Object::perform_append (disc_tc, + &in, + &cdr + ACE_ENV_ARG_PARAMETER); + + return (ts == CORBA::TypeCode::TRAVERSE_CONTINUE); + } + default: + return 0; + } +} + CORBA::TypeCode_ptr TAO_TypeCodeFactory_i::create_tc_common ( const char *id, @@ -813,7 +907,8 @@ TAO_TypeCodeFactory_i::create_tc_common ( cdr << name; return this->assemble_tc (cdr, - kind + kind, + 0 ACE_ENV_ARG_PARAMETER); } @@ -832,7 +927,8 @@ TAO_TypeCodeFactory_i::string_wstring_tc_common ( cdr << bound; return this->assemble_tc (cdr, - kind + kind, + 0 ACE_ENV_ARG_PARAMETER); } @@ -858,15 +954,32 @@ TAO_TypeCodeFactory_i::sequence_array_tc_common ( } TAO_OutputCDR cdr; + CORBA::TypeCode::OFFSET_MAP *offset_map = 0; cdr << TAO_ENCAP_BYTE_ORDER; + if (element_type->offset_map () != 0) + { + // Arrays can't be recursive. + if (kind != CORBA::tk_sequence) + { + ACE_THROW_RETURN (CORBA::BAD_TYPECODE (), + CORBA::TypeCode::_nil ()); + } + + this->update_map (offset_map, + element_type, + 0, + cdr); + } + cdr << element_type; cdr << bound; return this->assemble_tc (cdr, - kind + kind, + offset_map ACE_ENV_ARG_PARAMETER); } @@ -909,17 +1022,18 @@ TAO_TypeCodeFactory_i::struct_except_tc_common ( cdr << len; - CORBA::TypeCode_ptr tc_holder = CORBA::TypeCode::_nil (); + CORBA::TypeCode_ptr member_tc = CORBA::TypeCode::_nil (); CORBA::Boolean valid_member = 1; const char *member_name = 0; ACE_Hash_Map_Manager<ACE_CString, int, ACE_Null_Mutex> map; + CORBA::TypeCode::OFFSET_MAP *offset_map = 0; for (CORBA::ULong index = 0; index < len; ++index) { // Valid member type? - tc_holder = members[index].type.in (); + member_tc = members[index].type.in (); - valid_member = this->valid_content_type (tc_holder + valid_member = this->valid_content_type (member_tc ACE_ENV_ARG_PARAMETER); ACE_CHECK_RETURN (CORBA::TypeCode::_nil ()); @@ -952,11 +1066,27 @@ TAO_TypeCodeFactory_i::struct_except_tc_common ( cdr << member_name; - cdr << tc_holder; + if (member_tc->offset_map () != 0) + { + // Exceptions can't be recursive. + if (kind != CORBA::tk_struct) + { + ACE_THROW_RETURN (CORBA::BAD_TYPECODE (), + CORBA::TypeCode::_nil ()); + } + + this->update_map (offset_map, + member_tc, + id, + cdr); + } + + cdr << member_tc; } return this->assemble_tc (cdr, - kind + kind, + offset_map ACE_ENV_ARG_PARAMETER); } @@ -998,6 +1128,7 @@ TAO_TypeCodeFactory_i::alias_value_box_tc_common ( } TAO_OutputCDR cdr; + CORBA::TypeCode::OFFSET_MAP *offset_map = 0; cdr << TAO_ENCAP_BYTE_ORDER; @@ -1005,10 +1136,26 @@ TAO_TypeCodeFactory_i::alias_value_box_tc_common ( cdr << name; + if (underlying_type->offset_map () != 0) + { + // Value boxes can't be recursive. + if (kind != CORBA::tk_alias) + { + ACE_THROW_RETURN (CORBA::BAD_TYPECODE (), + CORBA::TypeCode::_nil ()); + } + + this->update_map (offset_map, + underlying_type, + id, + cdr); + } + cdr << underlying_type; return this->assemble_tc (cdr, - kind + kind, + offset_map ACE_ENV_ARG_PARAMETER); } @@ -1062,17 +1209,18 @@ TAO_TypeCodeFactory_i::value_event_tc_common ( cdr << len; - CORBA::TypeCode_ptr tc_holder = CORBA::TypeCode::_nil (); + CORBA::TypeCode_ptr member_tc = CORBA::TypeCode::_nil (); CORBA::Boolean valid_member = 1; const char *member_name = 0; ACE_Hash_Map_Manager<ACE_CString, int, ACE_Null_Mutex> map; + CORBA::TypeCode::OFFSET_MAP *offset_map = 0; for (CORBA::ULong index = 0; index < len; ++index) { // Valid member type? - tc_holder = members[index].type.in (); + member_tc = members[index].type.in (); - valid_member = this->valid_content_type (tc_holder + valid_member = this->valid_content_type (member_tc ACE_ENV_ARG_PARAMETER); ACE_CHECK_RETURN (CORBA::TypeCode::_nil ()); @@ -1105,13 +1253,22 @@ TAO_TypeCodeFactory_i::value_event_tc_common ( cdr << member_name; - cdr << tc_holder; + if (member_tc->offset_map () != 0) + { + this->update_map (offset_map, + member_tc, + id, + cdr); + } + + cdr << member_tc; cdr << members[index].access; } return this->assemble_tc (cdr, - kind + kind, + offset_map ACE_ENV_ARG_PARAMETER); } @@ -1185,14 +1342,16 @@ TAO_TypeCodeFactory_i::valid_content_type (CORBA::TypeCode_ptr tc ACE_CHECK_RETURN (0); } - if (kind == CORBA::tk_null - || kind == CORBA::tk_void - || kind == CORBA::tk_except) - { + switch (kind) + { + case CORBA::tk_null: + return tc->offset_map () != 0; + case CORBA::tk_void: + case CORBA::tk_except: return 0; - } - - return 1; + default: + return 1; + } } CORBA::Boolean @@ -1366,7 +1525,8 @@ TAO_TypeCodeFactory_i::valid_disc_type (CORBA::TypeCode_ptr tc CORBA::TypeCode_ptr TAO_TypeCodeFactory_i::assemble_tc (TAO_OutputCDR &cdr, - CORBA::TCKind kind + CORBA::TCKind kind, + CORBA::TypeCode::OFFSET_MAP *map ACE_ENV_ARG_DECL) { ACE_Message_Block consolidated_block; @@ -1386,18 +1546,149 @@ TAO_TypeCodeFactory_i::assemble_tc (TAO_OutputCDR &cdr, CORBA::NO_MEMORY ()); ACE_CHECK_RETURN (CORBA::TypeCode::_nil ()); + new_typecode->offset_map (map); return new_typecode; } +void +TAO_TypeCodeFactory_i::update_map ( + CORBA::TypeCode::OFFSET_MAP *&offset_map, + CORBA::TypeCode_ptr member_tc, + const char *id, + TAO_OutputCDR &cdr + ) +{ + ptr_arith_t unaligned_offset = + ACE_static_cast (ptr_arith_t, + cdr.begin ()->wr_ptr () - cdr.buffer ()); + + CORBA::Long aligned_offset = + ACE_static_cast (CORBA::Long, + ACE_align_binary (unaligned_offset, + sizeof (CORBA::Long))); + + CORBA::TypeCode::OFFSET_MAP *member_offset_map = member_tc->offset_map (); + CORBA::TypeCode::OFFSET_LIST *offset_list = 0; + CORBA::Long *list_entry = 0; + const char *member_id = 0; + int no_matching_id = 1; + int propagating_recursion = 1; + + // For anything except the immediate product of create_recursive_tc, + // the insertion of a member will include an encap length. + CORBA::Long member_encap_len_bytes = + member_tc->kind_ == ~0u ? 0 : ACE_static_cast (CORBA::Long, + sizeof (CORBA::Long)); + + CORBA::Long tc_kind_bytes = + ACE_static_cast (CORBA::Long, sizeof (CORBA::TCKind)); + + for (CORBA::TypeCode::OFFSET_MAP_ITERATOR iter (*member_offset_map); + ! iter.done (); + iter.advance ()) + { + member_id = (*iter).ext_id_; + + if (offset_map != 0) + { + no_matching_id = offset_map->find (member_id, offset_list); + } + + if (no_matching_id && id != 0) + { + propagating_recursion = ACE_OS::strcmp (member_id, id); + } + + if (propagating_recursion) + { + ACE_NEW (offset_list, + CORBA::TypeCode::OFFSET_LIST); + } + + for (CORBA::TypeCode::OFFSET_LIST_ITERATOR list_iter (*(*iter).int_id_); + ! list_iter.done (); + list_iter.advance ()) + { + list_iter.next (list_entry); + + if (propagating_recursion) + { + offset_list->enqueue_tail (*list_entry + + aligned_offset + + member_encap_len_bytes + + tc_kind_bytes); + + if (offset_map == 0) + { + ACE_NEW (offset_map, + CORBA::TypeCode::OFFSET_MAP); + } + } + else + { + const char *slot = + member_tc->buffer_ + ACE_static_cast (ptr_arith_t, + *list_entry); + + CORBA::Long recursion_offset = + -1 * (aligned_offset + + *list_entry + + tc_kind_bytes // Member TCKind. + + member_encap_len_bytes // Member encap length. + + 4 // Top level encap length. + + tc_kind_bytes); // Top level TCKind. + +#if !defined (ACE_ENABLE_SWAP_ON_WRITE) + *ACE_reinterpret_cast (CORBA::Long *, slot) = + recursion_offset; +#else + if (! cdr.do_byte_swap ()) + { + *ACE_reinterpret_cast (CORBA::Long *, slot) = + recursion_offset; + } + else + { + ACE_CDR::swap_4 (ACE_reinterpret_cast (char *, + &recursion_offset), + slot); + } +#endif /* ACE_ENABLE_SWAP_ON_WRITE */ + } + } + + if (no_matching_id && offset_map != 0) + { + (void) offset_map->bind (member_id, offset_list); + } + } +} + #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) template class ACE_Hash_Map_Entry<ACE_CString, int>; -template class ACE_Hash_Map_Iterator_Base_Ex<ACE_CString, int, ACE_Hash<ACE_CString>, ACE_Equal_To<ACE_CString>, ACE_Null_Mutex>; -template class ACE_Hash_Map_Iterator_Ex<ACE_CString, int, ACE_Hash<ACE_CString>, ACE_Equal_To<ACE_CString>, ACE_Null_Mutex>; +template class ACE_Hash_Map_Iterator_Base_Ex<ACE_CString, + int, + ACE_Hash<ACE_CString>, + ACE_Equal_To<ACE_CString>, + ACE_Null_Mutex>; +template class ACE_Hash_Map_Iterator_Ex<ACE_CString, + int, + ACE_Hash<ACE_CString>, + ACE_Equal_To<ACE_CString>, + ACE_Null_Mutex>; template class ACE_Equal_To<ACE_CString>; -template class ACE_Hash_Map_Reverse_Iterator_Ex<ACE_CString, int, ACE_Hash<ACE_CString>, ACE_Equal_To<ACE_CString>, ACE_Null_Mutex>; +template class ACE_Hash_Map_Reverse_Iterator_Ex<ACE_CString, + int, + ACE_Hash<ACE_CString>, + ACE_Equal_To<ACE_CString>, + ACE_Null_Mutex>; template class ACE_Hash<ACE_CString>; -template class ACE_Hash_Map_Manager_Ex<ACE_CString, int, ACE_Hash<ACE_CString>, ACE_Equal_To<ACE_CString>, ACE_Null_Mutex>; +template class ACE_Hash_Map_Manager_Ex<ACE_CString, + int, + ACE_Hash<ACE_CString>, + ACE_Equal_To<ACE_CString>, + ACE_Null_Mutex>; template class ACE_Hash_Map_Manager<ACE_CString, int, ACE_Null_Mutex>; template class ACE_Bounded_Set<CORBA::Long>; template class ACE_Bounded_Set<CORBA::ULong>; diff --git a/TAO/tao/TypeCodeFactory/TypeCodeFactory_i.h b/TAO/tao/TypeCodeFactory/TypeCodeFactory_i.h index a8a4df8d808..d3268d08692 100644 --- a/TAO/tao/TypeCodeFactory/TypeCodeFactory_i.h +++ b/TAO/tao/TypeCodeFactory/TypeCodeFactory_i.h @@ -211,6 +211,12 @@ private: const CORBA::UnionMemberSeq &members, TAO_OutputCDR &cdr); + /// Insert a non-default label value into the typecode being created. + CORBA::Boolean insert_label_value (CORBA::TCKind kind, + const CORBA::Any &any, + TAO_OutputCDR &cdr + ACE_ENV_ARG_DECL); + /// Called for all types that take just an id and a name. CORBA::TypeCode_ptr create_tc_common ( const char *id, @@ -283,9 +289,16 @@ private: /// Common code for allocating and doing the final assembly of a typecode. CORBA::TypeCode_ptr assemble_tc (TAO_OutputCDR &cdr, - CORBA::TCKind kind + CORBA::TCKind kind, + CORBA::TypeCode::OFFSET_MAP *map ACE_ENV_ARG_DECL); + /// Update the offset map we will pass to the typecode we are constructing. + void update_map (CORBA::TypeCode::OFFSET_MAP *&offset_map, + CORBA::TypeCode_ptr member_tc, + const char *id, + TAO_OutputCDR &cdr); + /// Prohibited TAO_TypeCodeFactory_i (const TAO_TypeCodeFactory_i &src); TAO_TypeCodeFactory_i &operator= (const TAO_TypeCodeFactory_i &src); diff --git a/TAO/tao/Typecode.cpp b/TAO/tao/Typecode.cpp index 5e6430130c5..bfc100d37c8 100644 --- a/TAO/tao/Typecode.cpp +++ b/TAO/tao/Typecode.cpp @@ -153,7 +153,8 @@ CORBA_TypeCode::CORBA_TypeCode (CORBA::TCKind kind) refcount_ (1), orb_owns_ (1), private_state_ (new TC_Private_State (kind)), - non_aligned_buffer_ (0) + non_aligned_buffer_ (0), + offset_map_ (0) { } @@ -169,7 +170,8 @@ CORBA_TypeCode::CORBA_TypeCode (CORBA::TCKind kind, refcount_ (1), orb_owns_ (orb_owns_tc), private_state_ (new TC_Private_State (kind)), - non_aligned_buffer_ (0) + non_aligned_buffer_ (0), + offset_map_ (0) { // The CDR code used to interpret TypeCodes requires in-memory // alignments to match the "on-the-wire" alignments, simplifying @@ -274,6 +276,8 @@ CORBA_TypeCode::~CORBA_TypeCode (void) delete this->private_state_; this->private_state_ = 0; + delete this->offset_map_; + this->offset_map_ = 0; } @@ -1125,7 +1129,7 @@ CORBA_TypeCode::private_equal_struct ( if (ACE_OS::strlen (my_member_name) > 1 && ACE_OS::strlen (tc_member_name) > 1 - && ACE_OS::strcmp (my_member_name, tc_member_name) !=0) + && ACE_OS::strcmp (my_member_name, tc_member_name) != 0) { return 0; } @@ -1712,6 +1716,33 @@ CORBA_TypeCode::private_equal_valuetype ( return 0; // number of members don't match } + // The checks below indicate that we have a recursive union. + CORBA::TypeCode_ptr par = this->parent_; + + if (par != 0) + { + if (this->tc_base_ == this->root_tc_base_) + { + return 1; + } + + CORBA::TypeCode_ptr tc_par = tc->parent_; + + if (tc_par) + { + CORBA::TypeCode_ptr gpar = par->parent_; + CORBA::TypeCode_ptr tc_gpar = tc_par->parent_; + + if (gpar != 0 + && tc_gpar != 0 + && this->tc_base_ == gpar->tc_base_ + && tc->tc_base_ == tc_gpar->tc_base_) + { + return 1; + } + } + } + for (CORBA::ULong i = 0; i < my_count; ++i) { // Check if the member visibilities are the same. @@ -3548,16 +3579,22 @@ operator<< (TAO_OutputCDR& cdr, const CORBA::TypeCode *x) default: break; - // Indirected typecodes can't occur at "top level" like - // this, only nested inside others! + // Indirected typecodes can occur at "top level" like + // this only when constructing a recursive typecode in the + // TypeCodeFactory. The check for non-null offset map suffices. case ~0u: - if (TAO_debug_level > 0) + if (x->offset_map () == 0) { - ACE_DEBUG ((LM_DEBUG, - "indirected typecode at top level!\n")); + return 0; } - return 0; + if (!cdr.write_octet_array ((CORBA::Octet*)x->buffer_, + 4)) + { + return 0; + } + + break; // A few have "simple" parameter lists case CORBA::tk_string: @@ -3626,10 +3663,48 @@ operator>> (TAO_InputCDR& cdr, CORBA::TypeCode *&x) #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) -template class TAO_Pseudo_Object_Manager<CORBA_TypeCode, CORBA_TypeCode_var>; - +template class TAO_Pseudo_Object_Manager<CORBA_TypeCode, + CORBA_TypeCode_var>; + +template class ACE_Node<CORBA::Long>; +template class ACE_Unbounded_Queue<CORBA::Long>; +template class ACE_Unbounded_Queue_Iterator<CORBA::Long>; + +template class ACE_Hash_Map_Entry<const char *, + ACE_Unbounded_Queue<CORBA::Long> *>; +template class ACE_Hash_Map_Manager_Ex<const char *, + ACE_Unbounded_Queue<CORBA::Long> *, + ACE_Hash<const char *>, + ACE_Equal_To<const char *>, + ACE_Null_Mutex>; +template class ACE_Hash_Map_Iterator_Base_Ex<const char *, + ACE_Unbounded_Queue<CORBA::Long> *, + ACE_Hash<const char *>, + ACE_Equal_To<const char *>, + ACE_Null_Mutex>; +template class ACE_Hash_Map_Reverse_Iterator_Ex<const char *, + ACE_Unbounded_Queue<CORBA::Long> *, + ACE_Hash<const char *>, + ACE_Equal_To<const char *>, + ACE_Null_Mutex>; +template class ACE_Hash_Map_Iterator_Ex<const char *, + ACE_Unbounded_Queue<CORBA::Long> *, + ACE_Hash<const char *>, + ACE_Equal_To<const char *>, + ACE_Null_Mutex>; + #elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) #pragma instantiate TAO_Pseudo_Object_Manager<CORBA_TypeCode, CORBA_TypeCode_var> +#pragma instantiate ACE_Node<CORBA::Long> +#pragma instantiate ACE_Unbounded_Queue<CORBA::Long> +#pragma instantiate ACE_Unbounded_Queue_Iterator<CORBA::Long> + +#pragma instantiate ACE_Hash_Map_Entry<const char *, ACE_Unbounded_Queue<CORBA::Long> *> +#pragma instantiate ACE_Hash_Map_Manager_Ex<const char *, ACE_Unbounded_Queue<CORBA::Long> *, ACE_Hash<const char *>, ACE_Equal_To<const char *>, ACE_Null_Mutex> +#pragma instantiate ACE_Hash_Map_Iterator_Base_Ex<const char *, ACE_Unbounded_Queue<CORBA::Long> *, ACE_Hash<const char *>, ACE_Equal_To<const char *>, ACE_Null_Mutex> +#pragma instantiate ACE_Hash_Map_Reverse_Iterator_Ex<const char *, ACE_Unbounded_Queue<CORBA::Long> *, ACE_Hash<const char *>, ACE_Equal_To<const char *>, ACE_Null_Mutex> +#pragma instantiate ACE_Hash_Map_Iterator_Ex<const char *, ACE_Unbounded_Queue<CORBA::Long> *, ACE_Hash<const char *>, ACE_Equal_To<const char *>, ACE_Null_Mutex> + #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ diff --git a/TAO/tao/Typecode.h b/TAO/tao/Typecode.h index 4e1d0a98896..92ea5d98688 100644 --- a/TAO/tao/Typecode.h +++ b/TAO/tao/Typecode.h @@ -17,7 +17,7 @@ #define TAO_TYPECODE_H #include "ace/pre.h" -#include "ace/Synch.h" +#include "ace/Hash_Map_Manager_T.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -290,10 +290,28 @@ public: /// helper function. static CORBA::Boolean skip_typecode (TAO_InputCDR &stream); -#if !defined(__GNUC__) || __GNUC__ > 2 || __GNUC_MINOR__ >= 8 + typedef ACE_Unbounded_Queue<CORBA::Long> OFFSET_LIST; + typedef ACE_Unbounded_Queue_Iterator<CORBA::Long> OFFSET_LIST_ITERATOR; + typedef ACE_Hash_Map_Entry<const char *, OFFSET_LIST *> OFFSET_MAP_ENTRY; + typedef ACE_Hash_Map_Manager_Ex<const char *, + OFFSET_LIST *, + ACE_Hash<const char *>, + ACE_Equal_To<const char *>, + ACE_Null_Mutex> + OFFSET_MAP; + + typedef ACE_Hash_Map_Iterator_Ex<const char *, + OFFSET_LIST *, + ACE_Hash<const char *>, + ACE_Equal_To<const char *>, + ACE_Null_Mutex> + OFFSET_MAP_ITERATOR; + + OFFSET_MAP *offset_map (void) const; + void offset_map (OFFSET_MAP *map); + typedef CORBA_TypeCode_ptr _ptr_type; typedef CORBA_TypeCode_var _var_type; -#endif /* __GNUC__ */ // Useful for template programming. private: @@ -481,6 +499,8 @@ private: * the destructor. */ char *non_aligned_buffer_; + + OFFSET_MAP *offset_map_; }; /** diff --git a/TAO/tao/Typecode.i b/TAO/tao/Typecode.i index 06df6cd888b..4b051b6a026 100644 --- a/TAO/tao/Typecode.i +++ b/TAO/tao/Typecode.i @@ -98,6 +98,18 @@ CORBA_TypeCode::member_count (ACE_ENV_SINGLE_ARG_DECL) const return this->private_member_count (ACE_ENV_SINGLE_ARG_PARAMETER); } +ACE_INLINE CORBA::TypeCode::OFFSET_MAP * +CORBA_TypeCode::offset_map (void) const +{ + return this->offset_map_; +} + +ACE_INLINE void +CORBA_TypeCode::offset_map (CORBA::TypeCode::OFFSET_MAP *map) +{ + this->offset_map_ = map; +} + // ************************************************************ // These are in CORBA namespace |