diff options
author | mk1 <mk1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-06-23 02:25:52 +0000 |
---|---|---|
committer | mk1 <mk1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1998-06-23 02:25:52 +0000 |
commit | 49b5ad6117f6b10dd1402dbaa2fa9e596c015f09 (patch) | |
tree | c9c6ef09e7a64efebd01cd6ff81472b7cd2e6b8a /TAO/TAO_IDL/be/be_sequence.cpp | |
parent | f984f8ef05832860b8aaa46976cf44b70a5b774c (diff) | |
download | ATCD-49b5ad6117f6b10dd1402dbaa2fa9e596c015f09.tar.gz |
Mon Jun 22 21:30:00 1998 Michael Kircher <mk1@cs.wustl.edu>
Diffstat (limited to 'TAO/TAO_IDL/be/be_sequence.cpp')
-rw-r--r-- | TAO/TAO_IDL/be/be_sequence.cpp | 31 |
1 files changed, 27 insertions, 4 deletions
diff --git a/TAO/TAO_IDL/be/be_sequence.cpp b/TAO/TAO_IDL/be/be_sequence.cpp index 9f7cd0c1082..f52c40ed49c 100644 --- a/TAO/TAO_IDL/be/be_sequence.cpp +++ b/TAO/TAO_IDL/be/be_sequence.cpp @@ -376,10 +376,33 @@ be_sequence::instance_name () break; default: // not a managed type if (this->unbounded ()) - ACE_OS::sprintf (namebuf, - "_TAO_Unbounded_Sequence_%s", - this->flatname()); - //prim_type->flatname ()); + { + // @@ This needs to be fixed. (Michael) + //determine if it is a primitive type, if yes do all of that + be_predefined_type * bpt = + be_predefined_type::narrow_from_decl (this->base_type()); + if (bpt) + { + /*ACE_DEBUG ((LM_ERROR, + "(%N:%l) be_visitor_sequence_ch::" + "gen_instantiate_name - " + "Bad element type\n")); + return 0;*/ + if (bpt->pt() == AST_PredefinedType::PT_octet) + ACE_OS::sprintf (namebuf, + "TAO_Unbounded_Sequence<CORBA::Octet>"); + else + ACE_OS::sprintf (namebuf, + "_TAO_Unbounded_Sequence_%s", + this->flatname()); + // or prim_type->flatname ()); + } + else + ACE_OS::sprintf (namebuf, + "_TAO_Unbounded_Sequence_%s", + this->flatname()); + // or prim_type->flatname ()); + } else ACE_OS::sprintf (namebuf, "_TAO_Bounded_Sequence_%s_%d", |