summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/be
diff options
context:
space:
mode:
authornanbor <nanbor@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-05-10 20:52:46 +0000
committernanbor <nanbor@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-05-10 20:52:46 +0000
commit8106ea1d9086cb17eabe748f3ff9e2cf54dfe3b3 (patch)
treebe85e81fc3d095096de97257ce22aab45e3d4a58 /TAO/TAO_IDL/be
parent73344b57d62f785899c966d7cf81c70029918ebe (diff)
downloadATCD-8106ea1d9086cb17eabe748f3ff9e2cf54dfe3b3.tar.gz
ChangeLogTag:Wed May 10 15:44:23 2000 Nanbor Wang <nanbor@cs.wustl.edu>
Diffstat (limited to 'TAO/TAO_IDL/be')
-rw-r--r--TAO/TAO_IDL/be/be_array.cpp9
-rw-r--r--TAO/TAO_IDL/be/be_attribute.cpp17
-rw-r--r--TAO/TAO_IDL/be/be_exception.cpp38
-rw-r--r--TAO/TAO_IDL/be/be_field.cpp3
-rw-r--r--TAO/TAO_IDL/be/be_generator.cpp59
-rw-r--r--TAO/TAO_IDL/be/be_operation.cpp27
-rw-r--r--TAO/TAO_IDL/be/be_structure.cpp40
-rw-r--r--TAO/TAO_IDL/be/be_typedef.cpp8
-rw-r--r--TAO/TAO_IDL/be/be_union.cpp36
-rw-r--r--TAO/TAO_IDL/be/be_union_branch.cpp13
-rw-r--r--TAO/TAO_IDL/be/be_visitor_ami_pre_proc.cpp20
-rw-r--r--TAO/TAO_IDL/be/be_visitor_attribute/attribute.cpp20
-rw-r--r--TAO/TAO_IDL/be/be_visitor_exception/any_op_ch.cpp10
-rw-r--r--TAO/TAO_IDL/be/be_visitor_exception/any_op_cs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_exception/cdr_op_ch.cpp10
-rw-r--r--TAO/TAO_IDL/be/be_visitor_exception/cdr_op_ci.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_exception/cdr_op_cs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_factory.cpp8
-rw-r--r--TAO/TAO_IDL/be/be_visitor_interface/interface.cpp28
-rw-r--r--TAO/TAO_IDL/be/be_visitor_module/module.cpp10
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/arglist.cpp11
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/operation_ch.cpp5
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/operation_cs.cpp2
-rw-r--r--TAO/TAO_IDL/be/be_visitor_root/root.cpp10
-rw-r--r--TAO/TAO_IDL/be/be_visitor_structure/any_op_ch.cpp10
-rw-r--r--TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_structure/cdr_op_ch.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_structure/cdr_op_ci.cpp6
-rw-r--r--TAO/TAO_IDL/be/be_visitor_structure/cdr_op_cs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_union/any_op_ch.cpp10
-rw-r--r--TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_union/cdr_op_ch.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_union/cdr_op_ci.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_union/cdr_op_cs.cpp4
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp16
35 files changed, 192 insertions, 274 deletions
diff --git a/TAO/TAO_IDL/be/be_array.cpp b/TAO/TAO_IDL/be/be_array.cpp
index 3d299062f36..7eb49d2fe58 100644
--- a/TAO/TAO_IDL/be/be_array.cpp
+++ b/TAO/TAO_IDL/be/be_array.cpp
@@ -33,9 +33,14 @@ be_array::be_array (void)
{
}
-be_array::be_array (UTL_ScopedName *n, unsigned long ndims, UTL_ExprList *dims)
- : AST_Array (n, ndims, dims),
+be_array::be_array (UTL_ScopedName *n,
+ unsigned long ndims,
+ UTL_ExprList *dims,
+ idl_bool local,
+ idl_bool abstract)
+ : AST_Array (n, ndims, dims, local, abstract),
AST_Decl (AST_Decl::NT_array, n, NULL),
+ COMMON_Base (local, abstract),
tao_name_ (0)
{
}
diff --git a/TAO/TAO_IDL/be/be_attribute.cpp b/TAO/TAO_IDL/be/be_attribute.cpp
index f2a399b9f70..c14b4a2d366 100644
--- a/TAO/TAO_IDL/be/be_attribute.cpp
+++ b/TAO/TAO_IDL/be/be_attribute.cpp
@@ -19,9 +19,9 @@
//
// ============================================================================
-#include "idl.h"
-#include "idl_extern.h"
-#include "be.h"
+#include "idl.h"
+#include "idl_extern.h"
+#include "be.h"
ACE_RCSID(be, be_attribute, "$Id$")
@@ -34,11 +34,16 @@ be_attribute::be_attribute (void)
{
}
-be_attribute::be_attribute (idl_bool ro, AST_Type *ft, UTL_ScopedName *n,
- UTL_StrList *p)
- : AST_Attribute (ro, ft, n, p),
+be_attribute::be_attribute (idl_bool ro,
+ AST_Type *ft,
+ UTL_ScopedName *n,
+ UTL_StrList *p,
+ idl_bool local,
+ idl_bool abstract)
+ : AST_Attribute (ro, ft, n, p, local, abstract),
AST_Field (AST_Decl::NT_attr, ft, n, p),
AST_Decl (AST_Decl::NT_attr, n, p),
+ COMMON_Base (local, abstract),
get_strategy_ (new be_operation_default_strategy (0)),
set_strategy_ (new be_operation_default_strategy (0))
{
diff --git a/TAO/TAO_IDL/be/be_exception.cpp b/TAO/TAO_IDL/be/be_exception.cpp
index 7de0b3cdfe9..e4d1db32990 100644
--- a/TAO/TAO_IDL/be/be_exception.cpp
+++ b/TAO/TAO_IDL/be/be_exception.cpp
@@ -41,47 +41,11 @@ be_exception::be_exception (UTL_ScopedName *n,
: AST_Decl (AST_Decl::NT_except, n, p),
AST_Structure (AST_Decl::NT_except, n, p, local, abstract),
UTL_Scope (AST_Decl::NT_except),
- COMMON_Base (local, abstract),
- member_count_ (-1)
+ COMMON_Base (local, abstract)
{
this->size_type (be_decl::VARIABLE); // always the case
}
-// compute total number of members
-int
-be_exception::compute_member_count (void)
-{
- UTL_ScopeActiveIterator *si; // iterator
-
- this->member_count_ = 0;
-
- // if there are elements in this scope
- if (this->nmembers () > 0)
- {
- // instantiate a scope iterator.
- si = new UTL_ScopeActiveIterator (this, UTL_Scope::IK_decls);
-
- while (!(si->is_done ()))
- {
- // get the next AST decl node
- this->member_count_++;
- si->next ();
- } // end of while
- delete si; // free the iterator object
- }
- return 0;
-}
-
-// return the member count
-int
-be_exception::member_count (void)
-{
- if (this->member_count_ == -1)
- this->compute_member_count ();
-
- return this->member_count_;
-}
-
// Are we or the parameter node involved in any recursion
idl_bool
be_exception::in_recursion (be_type *node)
diff --git a/TAO/TAO_IDL/be/be_field.cpp b/TAO/TAO_IDL/be/be_field.cpp
index e0db61e127f..379bf29f363 100644
--- a/TAO/TAO_IDL/be/be_field.cpp
+++ b/TAO/TAO_IDL/be/be_field.cpp
@@ -34,7 +34,8 @@ be_field::be_field (void)
be_field::be_field (AST_Type *ft, UTL_ScopedName *n, UTL_StrList *p, Visibility vis)
: AST_Field (ft, n, p, vis),
- AST_Decl (AST_Decl::NT_field, n, p)
+ AST_Decl (AST_Decl::NT_field, n, p),
+ COMMON_Base (ft->is_local (), ft->is_abstract ())
{
}
diff --git a/TAO/TAO_IDL/be/be_generator.cpp b/TAO/TAO_IDL/be/be_generator.cpp
index 132b4b8828a..eb828868fcc 100644
--- a/TAO/TAO_IDL/be/be_generator.cpp
+++ b/TAO/TAO_IDL/be/be_generator.cpp
@@ -236,16 +236,17 @@ be_generator::create_interface_fwd (UTL_ScopedName *n,
idl_bool local,
idl_bool abstract)
{
- return (AST_InterfaceFwd *) new be_interface_fwd (this->create_interface (n,
- 0,
- -1,
- 0,
- 0,
- p,
- local,
- abstract),
- n,
- p);
+ return
+ (AST_InterfaceFwd *) new be_interface_fwd (this->create_interface (n,
+ 0,
+ -1,
+ 0,
+ 0,
+ p,
+ local,
+ abstract),
+ n,
+ p);
}
/*
@@ -329,17 +330,26 @@ AST_Operation *
be_generator::create_operation(AST_Type *rt,
AST_Operation::Flags fl,
UTL_ScopedName *n,
- UTL_StrList *p)
+ UTL_StrList *p,
+ idl_bool local,
+ idl_bool abstract)
{
- return (AST_Operation *) new be_operation(rt, fl, n, p);
+ return (AST_Operation *) new be_operation(rt,
+ fl,
+ n,
+ p,
+ local,
+ abstract);
}
/*
* Create a BE_Field node
*/
AST_Field *
-be_generator::create_field(AST_Type *ft, UTL_ScopedName *n, UTL_StrList *p,
- AST_Field::Visibility vis)
+be_generator::create_field(AST_Type *ft,
+ UTL_ScopedName *n,
+ UTL_StrList *p,
+ AST_Field::Visibility vis)
{
return (AST_Field *) new be_field(ft, n, p, vis);
}
@@ -363,9 +373,16 @@ AST_Attribute *
be_generator::create_attribute(idl_bool ro,
AST_Type *ft,
UTL_ScopedName *n,
- UTL_StrList *p)
+ UTL_StrList *p,
+ idl_bool local,
+ idl_bool abstract)
{
- return (AST_Attribute *) new be_attribute(ro, ft, n, p);
+ return (AST_Attribute *) new be_attribute(ro,
+ ft,
+ n,
+ p,
+ local,
+ abstract);
}
/*
@@ -537,9 +554,15 @@ be_generator::create_enum_val(unsigned long v,
AST_Array *
be_generator::create_array(UTL_ScopedName *n,
unsigned long ndims,
- UTL_ExprList *dims)
+ UTL_ExprList *dims,
+ idl_bool local,
+ idl_bool abstract)
{
- return (AST_Array *) new be_array(n, ndims, dims);
+ return (AST_Array *) new be_array(n,
+ ndims,
+ dims,
+ local,
+ abstract);
}
/*
diff --git a/TAO/TAO_IDL/be/be_operation.cpp b/TAO/TAO_IDL/be/be_operation.cpp
index 3020dc22673..9e1e3fef24f 100644
--- a/TAO/TAO_IDL/be/be_operation.cpp
+++ b/TAO/TAO_IDL/be/be_operation.cpp
@@ -19,9 +19,9 @@
//
// ============================================================================
-#include "idl.h"
-#include "idl_extern.h"
-#include "be.h"
+#include "idl.h"
+#include "idl_extern.h"
+#include "be.h"
ACE_RCSID(be, be_operation, "$Id$")
@@ -35,11 +35,16 @@ be_operation::be_operation (void)
{
}
-be_operation::be_operation (AST_Type *rt, AST_Operation::Flags fl,
- UTL_ScopedName *n, UTL_StrList *p)
- : AST_Operation (rt, fl, n, p),
+be_operation::be_operation (AST_Type *rt,
+ AST_Operation::Flags fl,
+ UTL_ScopedName *n,
+ UTL_StrList *p,
+ idl_bool local,
+ idl_bool abstract)
+ : AST_Operation (rt, fl, n, p, local, abstract),
AST_Decl (AST_Decl::NT_op, n, p),
UTL_Scope (AST_Decl::NT_op),
+ COMMON_Base (local, abstract),
argument_count_ (-1),
has_native_ (0),
strategy_ (new be_operation_default_strategy (this))
@@ -69,15 +74,15 @@ be_operation::compute_argument_attr (void)
{
// instantiate a scope iterator.
UTL_ScopeActiveIterator *si =
- new UTL_ScopeActiveIterator (this, UTL_Scope::IK_decls);
+ new UTL_ScopeActiveIterator (this, UTL_Scope::IK_decls);
while (!(si->is_done ()))
{
// get the next AST decl node
- AST_Decl *d = si->item ();
+ AST_Decl *d = si->item ();
if (d->node_type () == AST_Decl::NT_argument)
- {
+ {
this->argument_count_++;
be_argument *arg = be_argument::narrow_from_decl (d);
be_type* type =
@@ -99,7 +104,7 @@ be_operation::compute_argument_attr (void)
}
-int
+int
be_operation::void_return_type ()
{
be_type* type = be_type::narrow_from_decl (this->return_type ());
@@ -199,7 +204,7 @@ TAO_CodeGen::CG_STATE
be_operation::next_state (TAO_CodeGen::CG_STATE current_state,
int is_extra_state)
{
- return this->strategy_->next_state (current_state, is_extra_state);
+ return this->strategy_->next_state (current_state, is_extra_state);
}
int
diff --git a/TAO/TAO_IDL/be/be_structure.cpp b/TAO/TAO_IDL/be/be_structure.cpp
index ee43f3e90d6..4a21b786284 100644
--- a/TAO/TAO_IDL/be/be_structure.cpp
+++ b/TAO/TAO_IDL/be/be_structure.cpp
@@ -39,48 +39,10 @@ be_structure::be_structure (UTL_ScopedName *n,
idl_bool abstract)
: AST_Decl (AST_Decl::NT_struct, n, p),
UTL_Scope (AST_Decl::NT_struct),
- COMMON_Base (local, abstract),
- member_count_ (-1)
+ COMMON_Base (local, abstract)
{
}
-// compute total number of members
-int
-be_structure::compute_member_count (void)
-{
- UTL_ScopeActiveIterator *si; // iterator
-
- this->member_count_ = 0;
-
- // if there are elements in this scope
- if (this->nmembers () > 0)
- {
- // instantiate a scope iterator.
- si = new UTL_ScopeActiveIterator (this,
- UTL_Scope::IK_decls);
-
- while (!(si->is_done ()))
- {
- this->member_count_++;
- si->next ();
- } // end of while
-
- delete si; // free the iterator object
- }
-
- return 0;
-}
-
-// return the member count
-int
-be_structure::member_count (void)
-{
- if (this->member_count_ == -1)
- this->compute_member_count ();
-
- return this->member_count_;
-}
-
// generate the _var definition for ourself
int
be_structure::gen_var_defn (char *)
diff --git a/TAO/TAO_IDL/be/be_typedef.cpp b/TAO/TAO_IDL/be/be_typedef.cpp
index 0f978f30de8..aaefcccf9c2 100644
--- a/TAO/TAO_IDL/be/be_typedef.cpp
+++ b/TAO/TAO_IDL/be/be_typedef.cpp
@@ -19,9 +19,9 @@
//
// ============================================================================
-#include "idl.h"
-#include "idl_extern.h"
-#include "be.h"
+#include "idl.h"
+#include "idl_extern.h"
+#include "be.h"
ACE_RCSID(be, be_typedef, "$Id$")
@@ -35,7 +35,7 @@ be_typedef::be_typedef (AST_Type *bt,
UTL_StrList *p,
idl_bool local,
idl_bool abstract)
- : AST_Typedef (bt, n, p, local, abstract),
+ : AST_Typedef (bt, n, p, bt->is_local () || local, abstract),
AST_Decl (AST_Decl::NT_typedef, n, p),
COMMON_Base (local, abstract)
{
diff --git a/TAO/TAO_IDL/be/be_union.cpp b/TAO/TAO_IDL/be/be_union.cpp
index 73a8a843105..e6a8cf60ab7 100644
--- a/TAO/TAO_IDL/be/be_union.cpp
+++ b/TAO/TAO_IDL/be/be_union.cpp
@@ -45,7 +45,6 @@ be_union::be_union (AST_ConcreteType *dt,
AST_Decl (AST_Decl::NT_union, n, p),
UTL_Scope (AST_Decl::NT_union),
COMMON_Base (local, abstract),
- member_count_ (-1),
default_index_ (-2)
{
this->default_value_.computed_ = -2;
@@ -54,31 +53,6 @@ be_union::be_union (AST_ConcreteType *dt,
// compute total number of members
int
-be_union::compute_member_count (void)
-{
- UTL_ScopeActiveIterator *si; // iterator
-
- this->member_count_ = 0;
-
- // if there are elements in this scope
- if (this->nmembers () > 0)
- {
- // instantiate a scope iterator.
- si = new UTL_ScopeActiveIterator (this,
- UTL_Scope::IK_decls);
-
- while (!(si->is_done ()))
- {
- this->member_count_++;
- si->next ();
- } // end of while
- delete si; // free the iterator object
- }
- return 0;
-}
-
-// compute total number of members
-int
be_union::compute_default_index (void)
{
UTL_ScopeActiveIterator *si; // iterator
@@ -122,16 +96,6 @@ be_union::compute_default_index (void)
return 0;
}
-// return the member count
-int
-be_union::member_count (void)
-{
- if (this->member_count_ == -1)
- this->compute_member_count ();
-
- return this->member_count_;
-}
-
// return the default_index
int
be_union::default_index (void)
diff --git a/TAO/TAO_IDL/be/be_union_branch.cpp b/TAO/TAO_IDL/be/be_union_branch.cpp
index 620185d6920..1c45b78dda8 100644
--- a/TAO/TAO_IDL/be/be_union_branch.cpp
+++ b/TAO/TAO_IDL/be/be_union_branch.cpp
@@ -19,9 +19,9 @@
//
// ============================================================================
-#include "idl.h"
-#include "idl_extern.h"
-#include "be.h"
+#include "idl.h"
+#include "idl_extern.h"
+#include "be.h"
ACE_RCSID(be, be_union_branch, "$Id$")
@@ -33,13 +33,14 @@ be_union_branch::be_union_branch (void)
{
}
-be_union_branch::be_union_branch (UTL_LabelList *ll,
+be_union_branch::be_union_branch (UTL_LabelList *ll,
AST_Type *ft,
- UTL_ScopedName *n,
+ UTL_ScopedName *n,
UTL_StrList *p)
: AST_UnionBranch (ll, ft, n, p),
AST_Field (AST_Decl::NT_union_branch, ft, n, p),
- AST_Decl (AST_Decl::NT_union_branch, n, p)
+ AST_Decl (AST_Decl::NT_union_branch, n, p),
+ COMMON_Base (ft->is_local (), ft->is_abstract ())
{
}
diff --git a/TAO/TAO_IDL/be/be_visitor_ami_pre_proc.cpp b/TAO/TAO_IDL/be/be_visitor_ami_pre_proc.cpp
index 0e41fc0f1d5..9d3b213d645 100644
--- a/TAO/TAO_IDL/be/be_visitor_ami_pre_proc.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_ami_pre_proc.cpp
@@ -528,6 +528,8 @@ be_visitor_ami_pre_proc::create_raise_operation (be_decl *node,
be_operation *operation = new be_operation (rt,
AST_Operation::OP_noflags,
op_name,
+ 0,
+ 0,
0);
operation->set_name (op_name);
operation->set_defined_in (excep_holder);
@@ -588,6 +590,8 @@ be_visitor_ami_pre_proc::create_sendc_operation (be_operation *node,
be_operation * op = new be_operation (rt,
AST_Operation::OP_noflags,
op_name,
+ 0,
+ 0,
0);
// Create the first argument, which is a Reply Handler
@@ -720,6 +724,8 @@ be_visitor_ami_pre_proc::create_reply_handler_operation (be_operation *node,
be_operation *operation = new be_operation (rt,
AST_Operation::OP_noflags,
op_name,
+ 0,
+ 0,
0);
operation->set_name (op_name);
@@ -839,15 +845,17 @@ be_visitor_ami_pre_proc::create_excep_operation (be_operation *node,
ACE_CString new_op_name = original_op_name + ACE_CString ("_excep");
UTL_ScopedName *op_name = ACE_static_cast (UTL_ScopedName *, reply_handler->name ()-> copy ());
- op_name->nconc (new UTL_ScopedName (
- new Identifier (
- new_op_name.rep (), 1, 0, I_FALSE),
- 0));
+ op_name->nconc (new UTL_ScopedName
+ (new Identifier
+ (new_op_name.rep (), 1, 0, I_FALSE),
+ 0));
// create the operation
be_operation *operation = new be_operation (rt,
AST_Operation::OP_noflags,
op_name,
+ 0,
+ 0,
0);
operation->set_name (op_name);
operation->add_argument_to_scope (arg);
@@ -986,6 +994,8 @@ be_visitor_ami_pre_proc::generate_get_operation (be_attribute *node)
new be_operation (node->field_type (),
AST_Operation::OP_noflags,
get_name,
+ 0,
+ 0,
0);
operation->set_name (get_name);
operation->set_defined_in (node->defined_in ());
@@ -1024,6 +1034,8 @@ be_visitor_ami_pre_proc::generate_set_operation (be_attribute *node)
be_operation *operation = new be_operation (rt,
AST_Operation::OP_noflags,
set_name,
+ 0,
+ 0,
0);
operation->set_name (set_name);
operation->set_defined_in (node->defined_in ());
diff --git a/TAO/TAO_IDL/be/be_visitor_attribute/attribute.cpp b/TAO/TAO_IDL/be/be_visitor_attribute/attribute.cpp
index c4ebeaef775..0edde660232 100644
--- a/TAO/TAO_IDL/be/be_visitor_attribute/attribute.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_attribute/attribute.cpp
@@ -73,7 +73,9 @@ be_visitor_attribute::visit_attribute (be_attribute *node)
be_operation *op = new be_operation (node->field_type (),
AST_Operation::OP_noflags,
node->name (),
- 0);
+ 0,
+ node->is_local (),
+ node->is_abstract ());
op->set_name ((UTL_IdList *) node->name ()->copy ());
op->set_defined_in (node->defined_in ());
@@ -87,12 +89,6 @@ be_visitor_attribute::visit_attribute (be_attribute *node)
// exactly the same code except different states.
switch (this->ctx_->state ())
{
- case TAO_CodeGen::TAO_LOCAL_ATTRIBUTE_H:
- ctx.state (TAO_CodeGen::TAO_LOCAL_OPERATION_H);
- break;
- case TAO_CodeGen::TAO_LOCAL_ATTRIBUTE_S:
- ctx.state (TAO_CodeGen::TAO_LOCAL_OPERATION_S);
- break;
case TAO_CodeGen::TAO_ATTRIBUTE_CH:
ctx.state (TAO_CodeGen::TAO_OPERATION_CH);
break;
@@ -208,7 +204,9 @@ be_visitor_attribute::visit_attribute (be_attribute *node)
op = new be_operation (rt,
AST_Operation::OP_noflags,
node->name (),
- 0);
+ 0,
+ node->is_local (),
+ node->is_abstract ());
op->set_name ((UTL_IdList *) node->name ()->copy ());
op->set_defined_in (node->defined_in ());
op->add_argument_to_scope (arg);
@@ -225,15 +223,9 @@ be_visitor_attribute::visit_attribute (be_attribute *node)
case TAO_CodeGen::TAO_ATTRIBUTE_CH:
ctx.state (TAO_CodeGen::TAO_OPERATION_CH);
break;
- case TAO_CodeGen::TAO_LOCAL_ATTRIBUTE_H:
- ctx.state (TAO_CodeGen::TAO_LOCAL_OPERATION_H);
- break;
case TAO_CodeGen::TAO_ATTRIBUTE_CS:
ctx.state (TAO_CodeGen::TAO_OPERATION_CS);
break;
- case TAO_CodeGen::TAO_LOCAL_ATTRIBUTE_S:
- ctx.state (TAO_CodeGen::TAO_LOCAL_OPERATION_S);
- break;
case TAO_CodeGen::TAO_ATTRIBUTE_SH:
ctx.state (TAO_CodeGen::TAO_OPERATION_SH);
break;
diff --git a/TAO/TAO_IDL/be/be_visitor_exception/any_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_exception/any_op_ch.cpp
index 74fd57808b7..19ca3242e47 100644
--- a/TAO/TAO_IDL/be/be_visitor_exception/any_op_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_exception/any_op_ch.cpp
@@ -18,9 +18,9 @@
//
// ============================================================================
-#include "idl.h"
-#include "idl_extern.h"
-#include "be.h"
+#include "idl.h"
+#include "idl_extern.h"
+#include "be.h"
#include "be_visitor_exception.h"
@@ -44,7 +44,9 @@ be_visitor_exception_any_op_ch::~be_visitor_exception_any_op_ch (void)
int
be_visitor_exception_any_op_ch::visit_exception (be_exception *node)
{
- if (node->cli_hdr_any_op_gen () || node->imported ())
+ if (node->cli_hdr_any_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
TAO_OutStream *os = this->ctx_->stream ();
diff --git a/TAO/TAO_IDL/be/be_visitor_exception/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_exception/any_op_cs.cpp
index 0adeb3c242a..45c68895da9 100644
--- a/TAO/TAO_IDL/be/be_visitor_exception/any_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_exception/any_op_cs.cpp
@@ -45,7 +45,9 @@ be_visitor_exception_any_op_cs::~be_visitor_exception_any_op_cs (void)
int
be_visitor_exception_any_op_cs::visit_exception (be_exception *node)
{
- if (node->cli_stub_any_op_gen () || node->imported ())
+ if (node->cli_stub_any_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
TAO_OutStream *os = this->ctx_->stream ();
diff --git a/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_ch.cpp
index 68e0d6f5c1a..0b1149ebfa9 100644
--- a/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_ch.cpp
@@ -19,9 +19,9 @@
//
// ============================================================================
-#include "idl.h"
-#include "idl_extern.h"
-#include "be.h"
+#include "idl.h"
+#include "idl_extern.h"
+#include "be.h"
#include "be_visitor_exception.h"
@@ -44,7 +44,9 @@ be_visitor_exception_cdr_op_ch::~be_visitor_exception_cdr_op_ch (void)
int
be_visitor_exception_cdr_op_ch::visit_exception (be_exception *node)
{
- if (node->cli_hdr_cdr_op_gen () || node->imported ())
+ if (node->cli_hdr_cdr_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
TAO_OutStream *os = this->ctx_->stream ();
diff --git a/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_ci.cpp b/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_ci.cpp
index 2df15c83c41..c680b523c51 100644
--- a/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_ci.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_ci.cpp
@@ -46,7 +46,9 @@ int
be_visitor_exception_cdr_op_ci::visit_exception (be_exception *node)
{
// already generated and/or we are imported. Don't do anything.
- if (node->cli_inline_cdr_op_gen () || node->imported ())
+ if (node->cli_inline_cdr_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
TAO_OutStream *os = this->ctx_->stream ();
diff --git a/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_cs.cpp
index 22ddc620bcf..fe2f0d85230 100644
--- a/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_exception/cdr_op_cs.cpp
@@ -39,7 +39,9 @@ be_visitor_exception_cdr_op_cs::~be_visitor_exception_cdr_op_cs (void)
int
be_visitor_exception_cdr_op_cs::visit_exception (be_exception *node)
{
- if (node->cli_stub_cdr_op_gen () || node->imported ())
+ if (node->cli_stub_cdr_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
// set the substate as generating code for the types defined in our
diff --git a/TAO/TAO_IDL/be/be_visitor_factory.cpp b/TAO/TAO_IDL/be/be_visitor_factory.cpp
index f4e1adf042b..c47177253dd 100644
--- a/TAO/TAO_IDL/be/be_visitor_factory.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_factory.cpp
@@ -143,15 +143,12 @@ TAO_Common_Visitor_Factory::make_visitor (be_visitor_context *ctx)
return new be_visitor_module_cdr_op (new_ctx);
case TAO_CodeGen::TAO_INTERFACE_CH:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_H:
return new be_visitor_interface_ch (new_ctx);
case TAO_CodeGen::TAO_INTERFACE_CI:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_I:
return new be_visitor_interface_ci (new_ctx);
case TAO_CodeGen::TAO_INTERFACE_CS:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_S:
return new be_visitor_interface_cs (new_ctx);
case TAO_CodeGen::TAO_INTERFACE_SH:
@@ -417,9 +414,7 @@ TAO_Common_Visitor_Factory::make_visitor (be_visitor_context *ctx)
return new be_visitor_decl (new_ctx);
case TAO_CodeGen::TAO_ATTRIBUTE_CH:
- case TAO_CodeGen::TAO_LOCAL_ATTRIBUTE_H:
case TAO_CodeGen::TAO_ATTRIBUTE_CS:
- case TAO_CodeGen::TAO_LOCAL_ATTRIBUTE_S:
case TAO_CodeGen::TAO_ATTRIBUTE_SH:
case TAO_CodeGen::TAO_ATTRIBUTE_IH:
case TAO_CodeGen::TAO_ATTRIBUTE_SS:
@@ -507,10 +502,8 @@ TAO_Compiled_Visitor_Factory::make_visitor (be_visitor_context *ctx)
case TAO_CodeGen::TAO_UNION_ANY_OP_CS:
return new be_visitor_union_any_op_cs (new_ctx);
case TAO_CodeGen::TAO_OPERATION_CH:
- case TAO_CodeGen::TAO_LOCAL_OPERATION_H:
return new be_visitor_operation_ch (new_ctx);
case TAO_CodeGen::TAO_OPERATION_CS:
- case TAO_CodeGen::TAO_LOCAL_OPERATION_S:
return new be_visitor_operation_cs (new_ctx);
case TAO_CodeGen::TAO_OPERATION_SH:
return new be_visitor_operation_sh (new_ctx);
@@ -562,7 +555,6 @@ TAO_Compiled_Visitor_Factory::make_visitor (be_visitor_context *ctx)
return new be_visitor_operation_rettype_assign_ss (new_ctx);
case TAO_CodeGen::TAO_OPERATION_ARGLIST_CH:
- case TAO_CodeGen::TAO_LOCAL_OPERATION_ARGLIST_H:
case TAO_CodeGen::TAO_OPERATION_ARGLIST_SH:
case TAO_CodeGen::TAO_OPERATION_ARGLIST_IH:
case TAO_CodeGen::TAO_OPERATION_ARGLIST_IS:
diff --git a/TAO/TAO_IDL/be/be_visitor_interface/interface.cpp b/TAO/TAO_IDL/be/be_visitor_interface/interface.cpp
index 75e3a678f84..b1978a7c830 100644
--- a/TAO/TAO_IDL/be/be_visitor_interface/interface.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_interface/interface.cpp
@@ -67,15 +67,9 @@ be_visitor_interface::visit_attribute (be_attribute *node)
case TAO_CodeGen::TAO_INTERFACE_CH:
ctx.state (TAO_CodeGen::TAO_ATTRIBUTE_CH);
break;
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_H:
- ctx.state (TAO_CodeGen::TAO_LOCAL_ATTRIBUTE_H);
- break;
case TAO_CodeGen::TAO_INTERFACE_CS:
ctx.state (TAO_CodeGen::TAO_ATTRIBUTE_CS);
break;
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_S:
- ctx.state (TAO_CodeGen::TAO_LOCAL_ATTRIBUTE_S);
- break;
case TAO_CodeGen::TAO_INTERFACE_SH:
ctx.state (TAO_CodeGen::TAO_ATTRIBUTE_SH);
break;
@@ -169,11 +163,9 @@ be_visitor_interface::visit_constant (be_constant *node)
switch (this->ctx_->state ())
{
case TAO_CodeGen::TAO_INTERFACE_CH:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_H:
ctx.state (TAO_CodeGen::TAO_CONSTANT_CH);
break;
case TAO_CodeGen::TAO_INTERFACE_CS:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_S:
ctx.state (TAO_CodeGen::TAO_CONSTANT_CS);
break;
case TAO_CodeGen::TAO_INTERFACE_ANY_OP_CH:
@@ -245,11 +237,9 @@ be_visitor_interface::visit_enum (be_enum *node)
switch (this->ctx_->state ())
{
case TAO_CodeGen::TAO_INTERFACE_CH:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_H:
ctx.state (TAO_CodeGen::TAO_ENUM_CH);
break;
case TAO_CodeGen::TAO_INTERFACE_CS:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_S:
ctx.state (TAO_CodeGen::TAO_ENUM_CS);
break;
case TAO_CodeGen::TAO_INTERFACE_ANY_OP_CH:
@@ -331,15 +321,12 @@ be_visitor_interface::visit_exception (be_exception *node)
switch (this->ctx_->state ())
{
case TAO_CodeGen::TAO_INTERFACE_CH:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_H:
ctx.state (TAO_CodeGen::TAO_EXCEPTION_CH);
break;
case TAO_CodeGen::TAO_INTERFACE_CI:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_I:
ctx.state (TAO_CodeGen::TAO_EXCEPTION_CI);
break;
case TAO_CodeGen::TAO_INTERFACE_CS:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_S:
ctx.state (TAO_CodeGen::TAO_EXCEPTION_CS);
break;
case TAO_CodeGen::TAO_INTERFACE_ANY_OP_CH:
@@ -426,12 +413,6 @@ be_visitor_interface::visit_operation (be_operation *node)
case TAO_CodeGen::TAO_INTERFACE_CS:
ctx.state (TAO_CodeGen::TAO_OPERATION_CS);
break;
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_H:
- ctx.state (TAO_CodeGen::TAO_LOCAL_OPERATION_H);
- break;
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_S:
- ctx.state (TAO_CodeGen::TAO_LOCAL_OPERATION_S);
- break;
case TAO_CodeGen::TAO_INTERFACE_SH:
ctx.state (TAO_CodeGen::TAO_OPERATION_SH);
break;
@@ -564,15 +545,12 @@ be_visitor_interface::visit_structure (be_structure *node)
switch (this->ctx_->state ())
{
case TAO_CodeGen::TAO_INTERFACE_CH:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_H:
ctx.state (TAO_CodeGen::TAO_STRUCT_CH);
break;
case TAO_CodeGen::TAO_INTERFACE_CI:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_I:
ctx.state (TAO_CodeGen::TAO_STRUCT_CI);
break;
case TAO_CodeGen::TAO_INTERFACE_CS:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_S:
ctx.state (TAO_CodeGen::TAO_STRUCT_CS);
break;
case TAO_CodeGen::TAO_INTERFACE_ANY_OP_CH:
@@ -653,15 +631,12 @@ be_visitor_interface::visit_union (be_union *node)
switch (this->ctx_->state ())
{
case TAO_CodeGen::TAO_INTERFACE_CH:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_H:
ctx.state (TAO_CodeGen::TAO_UNION_CH);
break;
case TAO_CodeGen::TAO_INTERFACE_CI:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_I:
ctx.state (TAO_CodeGen::TAO_UNION_CI);
break;
case TAO_CodeGen::TAO_INTERFACE_CS:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_S:
ctx.state (TAO_CodeGen::TAO_UNION_CS);
break;
case TAO_CodeGen::TAO_INTERFACE_ANY_OP_CH:
@@ -742,15 +717,12 @@ be_visitor_interface::visit_typedef (be_typedef *node)
switch (this->ctx_->state ())
{
case TAO_CodeGen::TAO_INTERFACE_CH:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_H:
ctx.state (TAO_CodeGen::TAO_TYPEDEF_CH);
break;
case TAO_CodeGen::TAO_INTERFACE_CI:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_I:
ctx.state (TAO_CodeGen::TAO_TYPEDEF_CI);
break;
case TAO_CodeGen::TAO_INTERFACE_CS:
- case TAO_CodeGen::TAO_LOCAL_INTERFACE_S:
ctx.state (TAO_CodeGen::TAO_TYPEDEF_CS);
break;
case TAO_CodeGen::TAO_INTERFACE_ANY_OP_CH:
diff --git a/TAO/TAO_IDL/be/be_visitor_module/module.cpp b/TAO/TAO_IDL/be/be_visitor_module/module.cpp
index 248841f6667..3e61eedc658 100644
--- a/TAO/TAO_IDL/be/be_visitor_module/module.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_module/module.cpp
@@ -292,19 +292,13 @@ be_visitor_module::visit_interface (be_interface *node)
switch (this->ctx_->state ())
{
case TAO_CodeGen::TAO_MODULE_CH:
- if (! node->is_local ())
- ctx.state (TAO_CodeGen::TAO_INTERFACE_CH);
- else
- ctx.state (TAO_CodeGen::TAO_LOCAL_INTERFACE_H);
+ ctx.state (TAO_CodeGen::TAO_INTERFACE_CH);
break;
case TAO_CodeGen::TAO_MODULE_CI:
ctx.state (TAO_CodeGen::TAO_INTERFACE_CI);
break;
case TAO_CodeGen::TAO_MODULE_CS:
- if (! node->is_local ())
- ctx.state (TAO_CodeGen::TAO_INTERFACE_CS);
- else
- ctx.state (TAO_CodeGen::TAO_LOCAL_INTERFACE_S);
+ ctx.state (TAO_CodeGen::TAO_INTERFACE_CS);
break;
case TAO_CodeGen::TAO_MODULE_SH:
ctx.state (TAO_CodeGen::TAO_INTERFACE_SH);
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/arglist.cpp b/TAO/TAO_IDL/be/be_visitor_operation/arglist.cpp
index bc66c21e7cf..58f8e68eba5 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/arglist.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/arglist.cpp
@@ -71,7 +71,6 @@ be_visitor_operation_arglist::visit_operation (be_operation *node)
switch (this->ctx_->state ())
{
case TAO_CodeGen::TAO_OPERATION_ARGLIST_CH:
- case TAO_CodeGen::TAO_LOCAL_OPERATION_ARGLIST_H:
case TAO_CodeGen::TAO_OPERATION_ARGLIST_COLLOCATED_SH:
case TAO_CodeGen::TAO_OPERATION_ARGLIST_SH:
// last argument - is always CORBA::Environment
@@ -104,14 +103,13 @@ be_visitor_operation_arglist::visit_operation (be_operation *node)
switch (this->ctx_->state ())
{
- case TAO_CodeGen::TAO_LOCAL_OPERATION_ARGLIST_H:
- *os << " = 0;\n\n";
- break;
- // Fall thru.
case TAO_CodeGen::TAO_OPERATION_ARGLIST_CH:
case TAO_CodeGen::TAO_OPERATION_ARGLIST_COLLOCATED_SH:
case TAO_CodeGen::TAO_OPERATION_ARGLIST_IH:
- *os << ";\n\n";
+ if (node->is_local ())
+ *os << " = 0;\n\n";
+ else
+ *os << ";\n\n";
break;
case TAO_CodeGen::TAO_OPERATION_ARGLIST_SH:
// each method is pure virtual in the server header
@@ -167,7 +165,6 @@ be_visitor_operation_arglist::visit_argument (be_argument *node)
switch (this->ctx_->state ())
{
case TAO_CodeGen::TAO_OPERATION_ARGLIST_CH:
- case TAO_CodeGen::TAO_LOCAL_OPERATION_ARGLIST_H:
ctx.state (TAO_CodeGen::TAO_ARGUMENT_ARGLIST_CH);
break;
case TAO_CodeGen::TAO_OPERATION_ARGLIST_OTHERS:
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/operation_ch.cpp b/TAO/TAO_IDL/be/be_visitor_operation/operation_ch.cpp
index 1bfcf3a5f98..ab6e43918d2 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/operation_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/operation_ch.cpp
@@ -96,10 +96,7 @@ be_visitor_operation_ch::visit_operation (be_operation *node)
// STEP 3: generate the argument list with the appropriate mapping. For these
// we grab a visitor that generates the parameter listing
ctx = *this->ctx_;
- if (this->ctx_->state () == TAO_CodeGen::TAO_LOCAL_OPERATION_H)
- ctx.state (TAO_CodeGen::TAO_LOCAL_OPERATION_ARGLIST_H);
- else
- ctx.state (TAO_CodeGen::TAO_OPERATION_ARGLIST_CH);
+ ctx.state (TAO_CodeGen::TAO_OPERATION_ARGLIST_CH);
visitor = tao_cg->make_visitor (&ctx);
if (!visitor)
{
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/operation_cs.cpp b/TAO/TAO_IDL/be/be_visitor_operation/operation_cs.cpp
index 870767c23c6..69d4c2dfac9 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/operation_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/operation_cs.cpp
@@ -64,7 +64,7 @@ be_visitor_operation_cs::visit_operation (be_operation *node)
os = this->ctx_->stream ();
this->ctx_->node (node); // save the node for future use
- if (this->ctx_->state () == TAO_CodeGen::TAO_LOCAL_OPERATION_S)
+ if (node->is_local ())
return 0;
os->indent (); // start with the current indentation level
diff --git a/TAO/TAO_IDL/be/be_visitor_root/root.cpp b/TAO/TAO_IDL/be/be_visitor_root/root.cpp
index 9618d5d4fb6..0c8b7af6ac0 100644
--- a/TAO/TAO_IDL/be/be_visitor_root/root.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_root/root.cpp
@@ -492,19 +492,13 @@ be_visitor_root::visit_interface (be_interface *node)
switch (this->ctx_->state ())
{
case TAO_CodeGen::TAO_ROOT_CH:
- if (! node->is_local ())
- ctx.state (TAO_CodeGen::TAO_INTERFACE_CH);
- else
- ctx.state (TAO_CodeGen::TAO_LOCAL_INTERFACE_H);
+ ctx.state (TAO_CodeGen::TAO_INTERFACE_CH);
break;
case TAO_CodeGen::TAO_ROOT_CI:
ctx.state (TAO_CodeGen::TAO_INTERFACE_CI);
break;
case TAO_CodeGen::TAO_ROOT_CS:
- if (! node->is_local ())
- ctx.state (TAO_CodeGen::TAO_INTERFACE_CS);
- else
- ctx.state (TAO_CodeGen::TAO_LOCAL_INTERFACE_S);
+ ctx.state (TAO_CodeGen::TAO_INTERFACE_CS);
break;
case TAO_CodeGen::TAO_ROOT_SH:
ctx.state (TAO_CodeGen::TAO_INTERFACE_SH);
diff --git a/TAO/TAO_IDL/be/be_visitor_structure/any_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_structure/any_op_ch.cpp
index 77311da083d..ca1eecdeb61 100644
--- a/TAO/TAO_IDL/be/be_visitor_structure/any_op_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_structure/any_op_ch.cpp
@@ -18,9 +18,9 @@
//
// ============================================================================
-#include "idl.h"
-#include "idl_extern.h"
-#include "be.h"
+#include "idl.h"
+#include "idl_extern.h"
+#include "be.h"
#include "be_visitor_structure.h"
@@ -44,7 +44,9 @@ be_visitor_structure_any_op_ch::~be_visitor_structure_any_op_ch (void)
int
be_visitor_structure_any_op_ch::visit_structure (be_structure *node)
{
- if (node->cli_hdr_any_op_gen () || node->imported ())
+ if (node->cli_hdr_any_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
TAO_OutStream *os = this->ctx_->stream ();
diff --git a/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp
index 88b6eaaa3c8..04dbfab0d22 100644
--- a/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_structure/any_op_cs.cpp
@@ -45,7 +45,9 @@ be_visitor_structure_any_op_cs::~be_visitor_structure_any_op_cs (void)
int
be_visitor_structure_any_op_cs::visit_structure (be_structure *node)
{
- if (node->cli_stub_any_op_gen () || node->imported ())
+ if (node->cli_stub_any_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
TAO_OutStream *os = this->ctx_->stream ();
diff --git a/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_ch.cpp
index 966a56f29a4..4aed27f26e2 100644
--- a/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_ch.cpp
@@ -44,7 +44,9 @@ be_visitor_structure_cdr_op_ch::~be_visitor_structure_cdr_op_ch (void)
int
be_visitor_structure_cdr_op_ch::visit_structure (be_structure *node)
{
- if (node->cli_hdr_cdr_op_gen () || node->imported ())
+ if (node->cli_hdr_cdr_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
TAO_OutStream *os = this->ctx_->stream ();
diff --git a/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_ci.cpp b/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_ci.cpp
index b3fc996b4cd..395750ef6a2 100644
--- a/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_ci.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_ci.cpp
@@ -46,7 +46,9 @@ int
be_visitor_structure_cdr_op_ci::visit_structure (be_structure *node)
{
// already generated and/or we are imported. Don't do anything.
- if (node->cli_inline_cdr_op_gen () || node->imported ())
+ if (node->cli_inline_cdr_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
TAO_OutStream *os = this->ctx_->stream ();
@@ -133,7 +135,7 @@ be_visitor_structure_cdr_op_ci::post_process (be_decl *bd)
{
TAO_OutStream *os = this->ctx_->stream ();
- if (!this->last_node (bd)
+ if (!this->last_node (bd)
&& bd->node_type () != AST_Decl::NT_enum_val)
{
switch (this->ctx_->sub_state ())
diff --git a/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_cs.cpp
index 6c7c0174899..db7f2e7cbc6 100644
--- a/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_structure/cdr_op_cs.cpp
@@ -39,7 +39,9 @@ be_visitor_structure_cdr_op_cs::~be_visitor_structure_cdr_op_cs (void)
int
be_visitor_structure_cdr_op_cs::visit_structure (be_structure *node)
{
- if (node->cli_stub_cdr_op_gen () || node->imported ())
+ if (node->cli_stub_cdr_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
// set the substate as generating code for the types defined in our scope
diff --git a/TAO/TAO_IDL/be/be_visitor_union/any_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_union/any_op_ch.cpp
index b2ead4bea61..9075cb591a5 100644
--- a/TAO/TAO_IDL/be/be_visitor_union/any_op_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_union/any_op_ch.cpp
@@ -18,9 +18,9 @@
//
// ============================================================================
-#include "idl.h"
-#include "idl_extern.h"
-#include "be.h"
+#include "idl.h"
+#include "idl_extern.h"
+#include "be.h"
#include "be_visitor_union.h"
@@ -44,7 +44,9 @@ be_visitor_union_any_op_ch::~be_visitor_union_any_op_ch (void)
int
be_visitor_union_any_op_ch::visit_union (be_union *node)
{
- if (node->cli_hdr_any_op_gen () || node->imported ())
+ if (node->cli_hdr_any_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
TAO_OutStream *os = this->ctx_->stream ();
diff --git a/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp
index 1ae318512d6..e8ad42ab833 100644
--- a/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_union/any_op_cs.cpp
@@ -45,7 +45,9 @@ be_visitor_union_any_op_cs::~be_visitor_union_any_op_cs (void)
int
be_visitor_union_any_op_cs::visit_union (be_union *node)
{
- if (node->cli_stub_any_op_gen () || node->imported ())
+ if (node->cli_stub_any_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
TAO_OutStream *os = this->ctx_->stream ();
diff --git a/TAO/TAO_IDL/be/be_visitor_union/cdr_op_ch.cpp b/TAO/TAO_IDL/be/be_visitor_union/cdr_op_ch.cpp
index 0f883e1d480..95b1d63d3dd 100644
--- a/TAO/TAO_IDL/be/be_visitor_union/cdr_op_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_union/cdr_op_ch.cpp
@@ -44,7 +44,9 @@ be_visitor_union_cdr_op_ch::~be_visitor_union_cdr_op_ch (void)
int
be_visitor_union_cdr_op_ch::visit_union (be_union *node)
{
- if (node->cli_hdr_cdr_op_gen () || node->imported ())
+ if (node->cli_hdr_cdr_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
TAO_OutStream *os = this->ctx_->stream ();
diff --git a/TAO/TAO_IDL/be/be_visitor_union/cdr_op_ci.cpp b/TAO/TAO_IDL/be/be_visitor_union/cdr_op_ci.cpp
index 80e978244ad..314d324164e 100644
--- a/TAO/TAO_IDL/be/be_visitor_union/cdr_op_ci.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_union/cdr_op_ci.cpp
@@ -45,7 +45,9 @@ int
be_visitor_union_cdr_op_ci::visit_union (be_union *node)
{
// already generated and/or we are imported. Don't do anything.
- if (node->cli_inline_cdr_op_gen () || node->imported ())
+ if (node->cli_inline_cdr_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
// set the substate as generating code for the types defined in our scope
diff --git a/TAO/TAO_IDL/be/be_visitor_union/cdr_op_cs.cpp b/TAO/TAO_IDL/be/be_visitor_union/cdr_op_cs.cpp
index f62a2206f04..507a62dd743 100644
--- a/TAO/TAO_IDL/be/be_visitor_union/cdr_op_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_union/cdr_op_cs.cpp
@@ -45,7 +45,9 @@ int
be_visitor_union_cdr_op_cs::visit_union (be_union *node)
{
// already generated and/or we are imported. Don't do anything.
- if (node->cli_stub_cdr_op_gen () || node->imported ())
+ if (node->cli_stub_cdr_op_gen () ||
+ node->imported () ||
+ node->is_local ())
return 0;
// set the substate as generating code for the types defined in our scope
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp
index b5dee89d924..b4dec51679e 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype.cpp
@@ -184,8 +184,12 @@ be_visitor_valuetype::visit_attribute (be_attribute *node)
be_operation *op;
// first the "get" operation
- op = new be_operation (node->field_type (), AST_Operation::OP_noflags,
- node->name (), 0);
+ op = new be_operation (node->field_type (),
+ AST_Operation::OP_noflags,
+ node->name (),
+ 0,
+ 0,
+ 0);
op->set_name ((UTL_IdList *) node->name ()->copy ());
if (!op || this->visit_operation (op) == -1)
{
@@ -214,8 +218,12 @@ be_visitor_valuetype::visit_attribute (be_attribute *node)
0);
arg->set_name ((UTL_IdList *) node->name ()->copy ());
// create the operation
- op = new be_operation (rt, AST_Operation::OP_noflags,
- node->name (), 0);
+ op = new be_operation (rt,
+ AST_Operation::OP_noflags,
+ node->name (),
+ 0,
+ 0,
+ 0);
op->set_name ((UTL_IdList *) node->name ()->copy ());
op->add_argument_to_scope (arg);