summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFred Hornsey <hornseyf@objectcomputing.com>2019-01-31 16:36:19 -0600
committerFred Hornsey <hornseyf@objectcomputing.com>2019-01-31 16:36:19 -0600
commitd5fdc518fa8ee1bd9c86891b42ce0ad7b32259ff (patch)
tree8ac0df76ba9b9b4e29281c1f644d5ab08097b8d9
parent307761bd15ca8f93be6af30d56a44f80885dddf7 (diff)
downloadATCD-d5fdc518fa8ee1bd9c86891b42ce0ad7b32259ff.tar.gz
TAO_IDL: Fix Memory Leaks Caused By Annotations
At least as far as Valgrind running annotest_idl is concerned. The majority of fixes were many missing destroys and deletes. The biggest change is AST_Annotation_Appls are now stored in a class of that name and managed using ACE_Bounded_Strong_Ptr because they can be shared between AST_Decls.
-rw-r--r--TAO/TAO_IDL/ast/ast_annotation_appl.cpp33
-rw-r--r--TAO/TAO_IDL/ast/ast_annotation_member.cpp1
-rw-r--r--TAO/TAO_IDL/ast/ast_array.cpp9
-rw-r--r--TAO/TAO_IDL/ast/ast_decl.cpp129
-rw-r--r--TAO/TAO_IDL/ast/ast_expression.cpp9
-rw-r--r--TAO/TAO_IDL/ast/ast_sequence.cpp23
-rw-r--r--TAO/TAO_IDL/ast/ast_structure.cpp1
-rw-r--r--TAO/TAO_IDL/ast/ast_type.cpp1
-rw-r--r--TAO/TAO_IDL/ast/ast_typedef.cpp28
-rw-r--r--TAO/TAO_IDL/ast/ast_union.cpp23
-rw-r--r--TAO/TAO_IDL/fe/fe_declarator.cpp9
-rw-r--r--TAO/TAO_IDL/fe/fe_lookup.cpp2
-rw-r--r--TAO/TAO_IDL/fe/idl.tab.cpp2146
-rw-r--r--TAO/TAO_IDL/fe/idl.ypp72
-rw-r--r--TAO/TAO_IDL/include/ast_annotation_appl.h4
-rw-r--r--TAO/TAO_IDL/include/ast_array.h6
-rw-r--r--TAO/TAO_IDL/include/ast_decl.h56
-rw-r--r--TAO/TAO_IDL/include/ast_sequence.h6
-rw-r--r--TAO/TAO_IDL/include/ast_typedef.h5
-rw-r--r--TAO/TAO_IDL/include/ast_union.h6
-rw-r--r--TAO/TAO_IDL/include/utl_annotations.h8
-rw-r--r--TAO/TAO_IDL/include/utl_identifier.h2
-rw-r--r--TAO/TAO_IDL/util/utl_annotations.cpp16
-rw-r--r--TAO/TAO_IDL/util/utl_identifier.cpp9
-rw-r--r--TAO/tests/IDLv4/annotations/be_init.cpp37
25 files changed, 1430 insertions, 1211 deletions
diff --git a/TAO/TAO_IDL/ast/ast_annotation_appl.cpp b/TAO/TAO_IDL/ast/ast_annotation_appl.cpp
index d5987c7d6a0..0d974b79465 100644
--- a/TAO/TAO_IDL/ast/ast_annotation_appl.cpp
+++ b/TAO/TAO_IDL/ast/ast_annotation_appl.cpp
@@ -8,6 +8,37 @@ AST_Annotation_Appl::Param::Param ()
{
}
+AST_Annotation_Appl::Param::~Param ()
+{
+ if (id)
+ {
+ id->destroy ();
+ }
+ delete id;
+ if (expr)
+ {
+ expr->destroy ();
+ }
+ delete expr;
+}
+
+void
+AST_Annotation_Appl::delete_params (AST_Annotation_Appl::Params* params)
+{
+ if (params)
+ {
+ Params::ITERATOR iter (*params);
+ while (!iter.done ())
+ {
+ Param **i = 0;
+ iter.next (i);
+ delete *i;
+ iter.advance ();
+ }
+ delete params;
+ }
+}
+
AST_Decl::NodeType const AST_Annotation_Appl::NT = AST_Decl::NT_annotation_appl;
AST_Annotation_Appl::AST_Annotation_Appl (
@@ -27,6 +58,8 @@ AST_Annotation_Appl::AST_Annotation_Appl (
AST_Annotation_Appl::~AST_Annotation_Appl ()
{
delete [] original_name_;
+ delete_params (params_);
+ AST_Structure::destroy ();
}
void AST_Annotation_Appl::dump (ACE_OSTREAM_TYPE &o)
diff --git a/TAO/TAO_IDL/ast/ast_annotation_member.cpp b/TAO/TAO_IDL/ast/ast_annotation_member.cpp
index 40884ef5aae..d15d73b557a 100644
--- a/TAO/TAO_IDL/ast/ast_annotation_member.cpp
+++ b/TAO/TAO_IDL/ast/ast_annotation_member.cpp
@@ -54,6 +54,7 @@ AST_Annotation_Member::destroy ()
{
value_->destroy ();
}
+ AST_Field::destroy ();
}
IMPL_NARROW_FROM_DECL (AST_Annotation_Member);
diff --git a/TAO/TAO_IDL/ast/ast_array.cpp b/TAO/TAO_IDL/ast/ast_array.cpp
index a70329e4758..110279a2411 100644
--- a/TAO/TAO_IDL/ast/ast_array.cpp
+++ b/TAO/TAO_IDL/ast/ast_array.cpp
@@ -97,8 +97,7 @@ AST_Array::AST_Array (UTL_ScopedName *n,
n),
pd_n_dims (nd),
pd_base_type (0),
- owns_base_type_ (false),
- base_type_annotations_ (0)
+ owns_base_type_ (false)
{
this->pd_dims = this->compute_dims (ds,
nd);
@@ -273,14 +272,14 @@ AST_Array::set_dims (AST_Expression **ds,
IMPL_NARROW_FROM_DECL(AST_Array)
-AST_Annotation_Appls *
-AST_Array::base_type_annotations()
+AST_Annotation_Appls &
+AST_Array::base_type_annotations ()
{
return base_type_annotations_;
}
void
-AST_Array::base_type_annotations(AST_Annotation_Appls *annotations)
+AST_Array::base_type_annotations (const AST_Annotation_Appls &annotations)
{
base_type_annotations_ = annotations;
}
diff --git a/TAO/TAO_IDL/ast/ast_decl.cpp b/TAO/TAO_IDL/ast/ast_decl.cpp
index 34648949f09..2e117a429dc 100644
--- a/TAO/TAO_IDL/ast/ast_decl.cpp
+++ b/TAO/TAO_IDL/ast/ast_decl.cpp
@@ -84,6 +84,84 @@ trademarks or registered trademarks of Sun Microsystems, Inc.
// FUZZ: disable check_for_streams_include
#include "ace/streams.h"
+AST_Annotation_Appls::AST_Annotation_Appls ()
+{
+}
+
+AST_Annotation_Appls::AST_Annotation_Appls (const AST_Annotation_Appls& other)
+{
+ *this = other;
+}
+
+AST_Annotation_Appls::~AST_Annotation_Appls ()
+{
+}
+
+AST_Annotation_Appls &
+AST_Annotation_Appls::operator= (const AST_Annotation_Appls& other)
+{
+ vector_.clear ();
+ add (other);
+ return *this;
+}
+
+void
+AST_Annotation_Appls::add (AST_Annotation_Appl *appl)
+{
+ vector_.push_back (AST_Annotation_Appl_Ptr (appl));
+}
+
+void
+AST_Annotation_Appls::add (const AST_Annotation_Appls &other)
+{
+ for (const_iterator i = other.begin (); i != other.end (); ++i)
+ {
+ vector_.push_back (*i);
+ }
+}
+
+bool
+AST_Annotation_Appls::empty () const
+{
+ return !vector_.size ();
+}
+
+size_t
+AST_Annotation_Appls::size () const
+{
+ return vector_.size ();
+}
+
+AST_Annotation_Appls::iterator
+AST_Annotation_Appls::begin ()
+{
+ return vector_.begin ();
+}
+
+AST_Annotation_Appls::iterator
+AST_Annotation_Appls::end ()
+{
+ return vector_.end ();
+}
+
+AST_Annotation_Appls::const_iterator
+AST_Annotation_Appls::begin () const
+{
+ return vector_.begin ();
+}
+
+AST_Annotation_Appls::const_iterator
+AST_Annotation_Appls::end () const
+{
+ return vector_.end ();
+}
+
+AST_Annotation_Appl *
+AST_Annotation_Appls::operator[] (size_t index)
+{
+ return vector_[index].get ();
+}
+
COMMON_Base::COMMON_Base (bool local,
bool abstract)
: is_local_ (local),
@@ -268,6 +346,9 @@ AST_Decl::destroy (void)
delete [] this->flat_name_;
this->flat_name_ = 0;
+
+ delete annotation_appls_;
+ annotation_appls_ = 0;
}
AST_Decl *
@@ -1570,11 +1651,12 @@ AST_Decl::in_tmpl_mod_not_aliased (bool val)
IMPL_NARROW_FROM_DECL(AST_Decl)
-void AST_Decl::annotation_appls (AST_Annotation_Appls *annotations)
+void
+AST_Decl::annotation_appls (const AST_Annotation_Appls &annotations)
{
if (annotatable ())
{
- annotation_appls_ = annotations;
+ annotation_appls () = annotations;
}
else
{
@@ -1585,30 +1667,34 @@ void AST_Decl::annotation_appls (AST_Annotation_Appls *annotations)
}
}
-AST_Annotation_Appls *AST_Decl::annotation_appls ()
+AST_Annotation_Appls&
+AST_Decl::annotation_appls ()
{
- return annotation_appls_;
+ if (!annotation_appls_)
+ {
+ annotation_appls_ = new AST_Annotation_Appls ();
+ }
+ return *annotation_appls_;
}
void
AST_Decl::dump_annotations (ACE_OSTREAM_TYPE &o, bool print_inline)
{
- if (annotation_appls_)
+ AST_Annotation_Appls::iterator
+ i = annotation_appls_->begin (),
+ finished = annotation_appls_->end ();
+ for (; i != finished; ++i)
{
- for (size_t i = 0; i < annotation_appls_->size (); i++)
+ AST_Annotation_Appl* a = i->get ();
+ a->dump (o);
+ if (print_inline)
{
- AST_Annotation_Appl *a = (*annotation_appls_)[i];
- a->dump (o);
- if (print_inline)
- {
- dump_i (o, " ");
- }
- else
- {
- dump_i (o, "\n");
- // We need to indent the next line (or not if we are not indented)
- idl_global->indent ()->skip_to (o);
- }
+ dump_i (o, " ");
+ }
+ else
+ {
+ dump_i (o, "\n");
+ idl_global->indent ()->skip_to (o);
}
}
}
@@ -1665,12 +1751,7 @@ AST_Decl::should_be_dumped () const
AST_Annotation_Appls &
AST_Decl::annotations ()
{
- if (!annotation_appls_)
- {
- annotation_appls_ = new AST_Annotation_Appls;
- }
-
- return *annotation_appls_;
+ return annotation_appls ();
}
bool
diff --git a/TAO/TAO_IDL/ast/ast_expression.cpp b/TAO/TAO_IDL/ast/ast_expression.cpp
index 7a6bc510527..52b8e550289 100644
--- a/TAO/TAO_IDL/ast/ast_expression.cpp
+++ b/TAO/TAO_IDL/ast/ast_expression.cpp
@@ -511,6 +511,7 @@ AST_Expression::AST_Expression (const ACE_CDR::Fixed &f)
AST_Expression::~AST_Expression (void)
{
+ destroy ();
}
AST_Expression::AST_ExprValue::AST_ExprValue (void)
@@ -3193,7 +3194,6 @@ AST_Expression::destroy (void)
this->pd_ev->u.wstrval = 0;
}
}
-
delete this->pd_ev;
this->pd_ev = 0;
@@ -3201,15 +3201,13 @@ AST_Expression::destroy (void)
{
this->pd_v1->destroy ();
}
+ delete this->pd_v1;
+ this->pd_v1 = 0;
if (this->pd_v2 != 0)
{
this->pd_v2->destroy ();
}
-
- delete this->pd_v1;
- this->pd_v1 = 0;
-
delete this->pd_v2;
this->pd_v2 = 0;
@@ -3217,7 +3215,6 @@ AST_Expression::destroy (void)
{
this->pd_n->destroy ();
}
-
delete this->pd_n;
this->pd_n = 0;
diff --git a/TAO/TAO_IDL/ast/ast_sequence.cpp b/TAO/TAO_IDL/ast/ast_sequence.cpp
index 842129085ac..0ab4820c2da 100644
--- a/TAO/TAO_IDL/ast/ast_sequence.cpp
+++ b/TAO/TAO_IDL/ast/ast_sequence.cpp
@@ -105,8 +105,7 @@ AST_Sequence::AST_Sequence (AST_Expression *ms,
pd_max_size (ms),
pd_base_type (bt),
unbounded_ (true),
- owns_base_type_ (false),
- base_type_annotations_ (0)
+ owns_base_type_ (false)
{
FE_Utils::tmpl_mod_ref_check (this, bt);
@@ -213,15 +212,13 @@ void
AST_Sequence::dump (ACE_OSTREAM_TYPE &o)
{
this->dump_i (o, "sequence <");
- if (base_type_annotations ())
+ AST_Annotation_Appls::iterator i,
+ finished = base_type_annotations ().end ();
+ for (i = base_type_annotations ().begin (); i != finished; ++i)
{
- size_t count = base_type_annotations ()->size ();
- for (size_t i = 0; i < count; i++)
- {
- AST_Annotation_Appl *a = (*base_type_annotations ())[i];
- a->dump (o);
- dump_i (o, " ");
- }
+ AST_Annotation_Appl *a = i->get ();
+ a->dump (o);
+ dump_i (o, " ");
}
this->pd_base_type->dump (o);
this->dump_i (o, ", ");
@@ -286,14 +283,14 @@ AST_Sequence::destroy (void)
IMPL_NARROW_FROM_DECL(AST_Sequence)
-AST_Annotation_Appls *
-AST_Sequence::base_type_annotations()
+AST_Annotation_Appls &
+AST_Sequence::base_type_annotations ()
{
return base_type_annotations_;
}
void
-AST_Sequence::base_type_annotations(AST_Annotation_Appls *annotations)
+AST_Sequence::base_type_annotations (const AST_Annotation_Appls &annotations)
{
base_type_annotations_ = annotations;
}
diff --git a/TAO/TAO_IDL/ast/ast_structure.cpp b/TAO/TAO_IDL/ast/ast_structure.cpp
index 2a360d28c17..0bd62aa3c8c 100644
--- a/TAO/TAO_IDL/ast/ast_structure.cpp
+++ b/TAO/TAO_IDL/ast/ast_structure.cpp
@@ -120,6 +120,7 @@ AST_Structure::AST_Structure (AST_Decl::NodeType nt,
AST_Structure::~AST_Structure (void)
{
+ destroy ();
}
// Are we or the parameter node involved in any recursion?
diff --git a/TAO/TAO_IDL/ast/ast_type.cpp b/TAO/TAO_IDL/ast/ast_type.cpp
index b24c485bb43..899ab6257ca 100644
--- a/TAO/TAO_IDL/ast/ast_type.cpp
+++ b/TAO/TAO_IDL/ast/ast_type.cpp
@@ -93,6 +93,7 @@ AST_Type::AST_Type (AST_Decl::NodeType nt,
AST_Type::~AST_Type (void)
{
+ destroy ();
}
// Public operations.
diff --git a/TAO/TAO_IDL/ast/ast_typedef.cpp b/TAO/TAO_IDL/ast/ast_typedef.cpp
index 38fc2080164..4d682812334 100644
--- a/TAO/TAO_IDL/ast/ast_typedef.cpp
+++ b/TAO/TAO_IDL/ast/ast_typedef.cpp
@@ -93,16 +93,12 @@ AST_Typedef::AST_Typedef (AST_Type *bt,
AST_Field (AST_Decl::NT_typedef,
bt,
n),
- cached_annotations_ (0)
+ has_cached_annotations_ (false)
{
}
AST_Typedef::~AST_Typedef (void)
{
- if (!cached_annotations_)
- {
- delete cached_annotations_;
- }
}
// Given a typedef node, traverse the chain of base types until they are no
@@ -205,31 +201,21 @@ IMPL_NARROW_FROM_DECL(AST_Typedef)
AST_Annotation_Appls &
AST_Typedef::annotations ()
{
- if (!cached_annotations_)
+ if (!has_cached_annotations_)
{
- cached_annotations_ = new AST_Annotation_Appls;
-
if (base_type ())
{
- AST_Annotation_Appls &next = base_type ()->annotations ();
- for (size_t i = 0; i < next.size (); i++)
- {
- cached_annotations_->push_back (next[i]);
- }
+ cached_annotations_.add (base_type ()->annotations ());
}
/*
* Done after so it's easier for later annotations to override
* older ones.
*/
- if (annotation_appls ()) {
- AST_Annotation_Appls &appls = *annotation_appls ();
- for (size_t i = 0; i < appls.size (); i++)
- {
- cached_annotations_->push_back (appls[i]);
- }
- }
+ cached_annotations_.add (annotation_appls ());
+
+ has_cached_annotations_ = true;
}
- return *cached_annotations_;
+ return cached_annotations_;
}
diff --git a/TAO/TAO_IDL/ast/ast_union.cpp b/TAO/TAO_IDL/ast/ast_union.cpp
index 1d3c906c483..ba352d8d7e6 100644
--- a/TAO/TAO_IDL/ast/ast_union.cpp
+++ b/TAO/TAO_IDL/ast/ast_union.cpp
@@ -105,8 +105,7 @@ AST_Union::AST_Union (AST_ConcreteType *dt,
AST_Structure (n,
local,
abstract),
- default_index_ (-2),
- disc_annotations_ (0)
+ default_index_ (-2)
{
this->default_value_.computed_ = -2;
@@ -971,15 +970,13 @@ AST_Union::dump (ACE_OSTREAM_TYPE &o)
o << "union ";
this->local_name ()->dump (o);
o << " switch (";
- if (disc_annotations ())
+ AST_Annotation_Appls::iterator i,
+ finished = disc_annotations ().end ();
+ for (i = disc_annotations ().begin (); i != finished; ++i)
{
- size_t count = disc_annotations ()->size ();
- for (size_t i = 0; i < count; i++)
- {
- AST_Annotation_Appl *a = (*disc_annotations ())[i];
- a->dump (o);
- dump_i (o, " ");
- }
+ AST_Annotation_Appl *a = i->get ();
+ a->dump (o);
+ dump_i (o, " ");
}
this->pd_disc_type->local_name ()->dump (o);
o << ") {\n";
@@ -1049,14 +1046,14 @@ AST_Union::udisc_type (void)
IMPL_NARROW_FROM_DECL(AST_Union)
IMPL_NARROW_FROM_SCOPE(AST_Union)
-AST_Annotation_Appls *
-AST_Union::disc_annotations()
+AST_Annotation_Appls &
+AST_Union::disc_annotations ()
{
return disc_annotations_;
}
void
-AST_Union::disc_annotations(AST_Annotation_Appls *annotations)
+AST_Union::disc_annotations (const AST_Annotation_Appls &annotations)
{
disc_annotations_ = annotations;
}
diff --git a/TAO/TAO_IDL/fe/fe_declarator.cpp b/TAO/TAO_IDL/fe/fe_declarator.cpp
index bb62caa0a08..d0de342fbb5 100644
--- a/TAO/TAO_IDL/fe/fe_declarator.cpp
+++ b/TAO/TAO_IDL/fe/fe_declarator.cpp
@@ -200,9 +200,12 @@ FE_Declarator::compose (AST_Decl *d)
void
FE_Declarator::destroy (void)
{
- this->pd_name->destroy ();
- delete this->pd_name;
- this->pd_name = 0;
+ if (pd_name)
+ {
+ this->pd_name->destroy ();
+ delete this->pd_name;
+ this->pd_name = 0;
+ }
}
// Data accessors.
diff --git a/TAO/TAO_IDL/fe/fe_lookup.cpp b/TAO/TAO_IDL/fe/fe_lookup.cpp
index 406f071938b..02e266926e7 100644
--- a/TAO/TAO_IDL/fe/fe_lookup.cpp
+++ b/TAO/TAO_IDL/fe/fe_lookup.cpp
@@ -2,7 +2,7 @@
#include "ace/OS_NS_string.h"
/* C++ code produced by gperf version 2.8 (ACE version) */
-/* Command-line: /mnt/arch/data/work/oci/ace_tao/xtypes/ACE_TAO/ACE/bin/ace_gperf -M -J -c -C -D -E -T -f 0 -a -o -t -p -K keyword_ -L C++ -Z TAO_IDL_CPP_Keyword_Table -N lookup -k1,2,$ fe/keywords.dat */
+/* Command-line: /mnt/arch/data/work/oci/ace_tao/tao_idl_fixes/ACE_TAO/ACE/bin/ace_gperf -M -J -c -C -D -E -T -f 0 -a -o -t -p -K keyword_ -L C++ -Z TAO_IDL_CPP_Keyword_Table -N lookup -k1,2,$ fe/keywords.dat */
unsigned int
TAO_IDL_CPP_Keyword_Table::hash (const char *str, unsigned int len)
{
diff --git a/TAO/TAO_IDL/fe/idl.tab.cpp b/TAO/TAO_IDL/fe/idl.tab.cpp
index 5493bded1a1..ec67661f415 100644
--- a/TAO/TAO_IDL/fe/idl.tab.cpp
+++ b/TAO/TAO_IDL/fe/idl.tab.cpp
@@ -648,66 +648,66 @@ static const yytype_uint8 yytranslate[] =
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 387, 387, 390, 391, 399, 412, 418, 422, 426,
- 434, 433, 443, 442, 452, 451, 461, 460, 470, 469,
- 479, 478, 488, 487, 497, 496, 506, 505, 515, 514,
- 524, 523, 533, 532, 542, 541, 551, 550, 560, 559,
- 573, 572, 584, 623, 627, 583, 643, 651, 665, 675,
- 705, 709, 650, 732, 736, 737, 741, 742, 747, 752,
- 746, 838, 843, 837, 912, 913, 918, 956, 960, 917,
- 976, 975, 987, 1024, 1054, 1087, 1086, 1095, 1102, 1103,
- 1104, 1105, 1109, 1113, 1118, 1161, 1165, 1117, 1192, 1235,
- 1239, 1190, 1256, 1254, 1294, 1293, 1305, 1309, 1316, 1321,
- 1329, 1354, 1380, 1444, 1445, 1449, 1450, 1451, 1456, 1460,
- 1467, 1485, 1486, 1491, 1490, 1499, 1498, 1507, 1506, 1515,
- 1514, 1523, 1522, 1531, 1530, 1539, 1538, 1547, 1546, 1558,
- 1570, 1568, 1593, 1600, 1610, 1609, 1635, 1633, 1658, 1668,
- 1679, 1723, 1750, 1780, 1784, 1788, 1792, 1779, 1854, 1855,
- 1856, 1857, 1858, 1859, 1860, 1864, 1868, 1936, 1938, 1940,
- 1941, 1953, 1954, 1966, 1967, 1979, 1980, 1989, 2001, 2002,
- 2011, 2023, 2024, 2033, 2042, 2054, 2055, 2064, 2073, 2085,
- 2143, 2144, 2151, 2155, 2160, 2167, 2171, 2175, 2180, 2184,
- 2188, 2192, 2199, 2268, 2267, 2294, 2295, 2299, 2300, 2301,
- 2303, 2302, 2311, 2312, 2316, 2367, 2371, 2378, 2391, 2401,
- 2409, 2408, 2481, 2485, 2492, 2501, 2508, 2516, 2522, 2529,
- 2540, 2539, 2548, 2552, 2556, 2560, 2586, 2594, 2593, 2665,
- 2666, 2670, 2677, 2678, 2704, 2705, 2706, 2707, 2708, 2709,
- 2710, 2711, 2715, 2716, 2717, 2718, 2722, 2723, 2724, 2728,
- 2729, 2733, 2745, 2743, 2768, 2775, 2776, 2780, 2792, 2790,
- 2815, 2822, 2838, 2856, 2857, 2861, 2865, 2869, 2876, 2880,
- 2884, 2891, 2895, 2899, 2906, 2913, 2917, 2924, 2931, 2938,
- 2945, 2953, 2952, 2966, 2997, 3001, 2965, 3018, 3021, 3022,
- 3026, 3041, 3045, 3040, 3103, 3102, 3115, 3114, 3127, 3131,
- 3164, 3168, 3224, 3228, 3126, 3250, 3257, 3270, 3279, 3286,
- 3287, 3396, 3399, 3400, 3405, 3409, 3404, 3442, 3441, 3453,
- 3463, 3481, 3489, 3488, 3502, 3506, 3501, 3522, 3521, 3572,
- 3597, 3621, 3625, 3656, 3660, 3620, 3684, 3689, 3687, 3693,
- 3697, 3734, 3738, 3732, 3825, 3895, 3904, 3894, 3918, 3928,
- 3932, 3926, 3977, 4003, 4012, 4016, 4010, 4052, 4078, 4086,
- 4085, 4130, 4140, 4158, 4166, 4170, 4165, 4230, 4231, 4236,
- 4240, 4244, 4248, 4235, 4315, 4319, 4323, 4327, 4314, 4403,
- 4407, 4436, 4440, 4402, 4456, 4460, 4524, 4528, 4454, 4563,
- 4568, 4573, 4580, 4581, 4592, 4597, 4638, 4591, 4658, 4657,
- 4666, 4665, 4676, 4681, 4679, 4685, 4690, 4694, 4689, 4733,
- 4732, 4741, 4740, 4751, 4756, 4754, 4760, 4765, 4769, 4764,
- 4814, 4821, 4822, 4823, 4930, 4934, 4938, 4946, 4950, 4945,
- 4959, 4967, 4971, 4966, 4980, 4988, 4992, 4987, 5001, 5009,
- 5013, 5008, 5022, 5029, 5041, 5039, 5062, 5069, 5097, 5134,
- 5135, 5139, 5168, 5207, 5211, 5167, 5228, 5232, 5226, 5273,
- 5272, 5280, 5287, 5288, 5293, 5292, 5301, 5300, 5309, 5308,
- 5317, 5316, 5325, 5324, 5333, 5332, 5341, 5340, 5350, 5440,
- 5446, 5471, 5577, 5586, 5590, 5596, 5668, 5740, 5814, 5813,
- 5861, 5865, 5869, 5873, 5877, 5881, 5860, 5934, 5933, 5941,
- 5948, 5953, 5961, 5965, 5960, 5975, 5976, 5980, 5982, 5981,
- 5990, 5989, 6002, 6025, 6000, 6051, 6078, 6049, 6102, 6103,
- 6104, 6108, 6109, 6113, 6140, 6170, 6214, 6218, 6168, 6233,
- 6242, 6260, 6271, 6270, 6308, 6357, 6361, 6306, 6376, 6380,
- 6387, 6391, 6395, 6399, 6403, 6407, 6411, 6415, 6419, 6423,
- 6431, 6462, 6475, 6482, 6507, 6525, 6532, 6547, 6554, 6564,
- 6568, 6586, 6590, 6563, 6603, 6609, 6612, 6619, 6618, 6625,
- 6624, 6631, 6630, 6640, 6709, 6759, 6774, 6786, 6793, 6852,
- 6857, 6861, 6856, 6920, 6924, 6919, 6937, 6938, 6943, 6942,
- 6951, 6950, 6959, 6958, 6967, 6966
+ 0, 387, 387, 390, 391, 399, 414, 420, 424, 428,
+ 436, 435, 445, 444, 454, 453, 463, 462, 472, 471,
+ 481, 480, 490, 489, 499, 498, 508, 507, 517, 516,
+ 526, 525, 535, 534, 544, 543, 553, 552, 562, 561,
+ 575, 574, 586, 625, 629, 585, 645, 653, 667, 677,
+ 707, 711, 652, 734, 738, 739, 743, 744, 749, 754,
+ 748, 840, 845, 839, 914, 915, 920, 958, 962, 919,
+ 978, 977, 989, 1026, 1056, 1089, 1088, 1097, 1104, 1105,
+ 1106, 1107, 1111, 1115, 1120, 1163, 1167, 1119, 1194, 1237,
+ 1241, 1192, 1258, 1256, 1296, 1295, 1307, 1311, 1318, 1323,
+ 1331, 1356, 1382, 1446, 1447, 1451, 1452, 1453, 1458, 1462,
+ 1469, 1488, 1489, 1494, 1493, 1502, 1501, 1510, 1509, 1518,
+ 1517, 1526, 1525, 1534, 1533, 1542, 1541, 1550, 1549, 1561,
+ 1573, 1571, 1596, 1603, 1613, 1612, 1638, 1636, 1661, 1671,
+ 1682, 1726, 1753, 1783, 1787, 1791, 1795, 1782, 1857, 1858,
+ 1859, 1860, 1861, 1862, 1863, 1867, 1871, 1939, 1941, 1943,
+ 1944, 1956, 1957, 1969, 1970, 1982, 1983, 1992, 2004, 2005,
+ 2014, 2026, 2027, 2036, 2045, 2057, 2058, 2067, 2076, 2088,
+ 2146, 2147, 2154, 2158, 2163, 2170, 2174, 2178, 2183, 2187,
+ 2191, 2195, 2202, 2271, 2270, 2297, 2298, 2302, 2303, 2304,
+ 2306, 2305, 2314, 2315, 2319, 2373, 2377, 2384, 2397, 2407,
+ 2415, 2414, 2497, 2501, 2508, 2517, 2524, 2532, 2538, 2545,
+ 2556, 2555, 2564, 2568, 2572, 2576, 2602, 2610, 2609, 2681,
+ 2682, 2686, 2693, 2694, 2720, 2721, 2722, 2723, 2724, 2725,
+ 2726, 2727, 2731, 2732, 2733, 2734, 2738, 2739, 2740, 2744,
+ 2745, 2749, 2761, 2759, 2784, 2791, 2792, 2796, 2808, 2806,
+ 2831, 2838, 2854, 2872, 2873, 2877, 2881, 2885, 2892, 2896,
+ 2900, 2907, 2911, 2915, 2922, 2929, 2933, 2940, 2947, 2954,
+ 2961, 2969, 2968, 2982, 3013, 3017, 2981, 3034, 3037, 3038,
+ 3042, 3060, 3064, 3059, 3122, 3121, 3134, 3133, 3146, 3150,
+ 3183, 3187, 3246, 3250, 3145, 3272, 3279, 3292, 3301, 3308,
+ 3309, 3418, 3421, 3422, 3427, 3431, 3426, 3467, 3466, 3478,
+ 3488, 3506, 3514, 3513, 3527, 3531, 3526, 3547, 3546, 3597,
+ 3622, 3646, 3650, 3681, 3685, 3645, 3709, 3714, 3712, 3718,
+ 3722, 3762, 3766, 3760, 3854, 3925, 3934, 3924, 3948, 3958,
+ 3962, 3956, 4007, 4033, 4042, 4046, 4040, 4082, 4108, 4116,
+ 4115, 4162, 4172, 4190, 4198, 4202, 4197, 4262, 4263, 4268,
+ 4272, 4276, 4280, 4267, 4347, 4351, 4355, 4359, 4346, 4435,
+ 4439, 4468, 4472, 4434, 4488, 4492, 4558, 4562, 4486, 4597,
+ 4602, 4607, 4614, 4615, 4626, 4631, 4674, 4625, 4694, 4693,
+ 4702, 4701, 4712, 4717, 4715, 4721, 4726, 4730, 4725, 4769,
+ 4768, 4777, 4776, 4787, 4792, 4790, 4796, 4801, 4805, 4800,
+ 4850, 4857, 4858, 4859, 4966, 4970, 4974, 4982, 4986, 4981,
+ 4995, 5003, 5007, 5002, 5016, 5024, 5028, 5023, 5037, 5045,
+ 5049, 5044, 5058, 5065, 5077, 5075, 5098, 5105, 5133, 5170,
+ 5171, 5175, 5204, 5243, 5247, 5203, 5264, 5268, 5262, 5309,
+ 5308, 5316, 5323, 5324, 5329, 5328, 5337, 5336, 5345, 5344,
+ 5353, 5352, 5361, 5360, 5369, 5368, 5377, 5376, 5386, 5476,
+ 5482, 5507, 5613, 5622, 5626, 5632, 5704, 5776, 5850, 5849,
+ 5897, 5901, 5905, 5909, 5913, 5917, 5896, 5970, 5969, 5977,
+ 5984, 5989, 5997, 6001, 5996, 6011, 6012, 6016, 6018, 6017,
+ 6026, 6025, 6038, 6061, 6036, 6087, 6114, 6085, 6138, 6139,
+ 6140, 6144, 6145, 6149, 6176, 6206, 6250, 6254, 6204, 6269,
+ 6278, 6296, 6307, 6306, 6344, 6393, 6397, 6342, 6412, 6416,
+ 6423, 6427, 6431, 6435, 6439, 6443, 6447, 6451, 6455, 6459,
+ 6467, 6498, 6511, 6518, 6543, 6561, 6568, 6583, 6590, 6600,
+ 6604, 6624, 6628, 6599, 6641, 6647, 6650, 6657, 6656, 6663,
+ 6662, 6669, 6668, 6678, 6747, 6797, 6813, 6826, 6833, 6892,
+ 6897, 6901, 6896, 6962, 6966, 6961, 6979, 6980, 6985, 6984,
+ 6993, 6992, 7001, 7000, 7009, 7008
};
#endif
@@ -2355,324 +2355,326 @@ yyreduce:
#line 400 "fe/idl.ypp" /* yacc.c:1651 */
{
AST_Decl *d = (yyvsp[0].dcval);
+ AST_Annotation_Appls *annotations = (yyvsp[-1].annotations_val);
if (d)
{
- d->annotation_appls ((yyvsp[-1].annotations_val));
+ d->annotation_appls (*annotations);
}
else
{
idl_global->err ()-> unsupported_warning(
"Annotating this type of definition is not supported");
}
+ delete annotations;
}
-#line 2369 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2371 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 6:
-#line 413 "fe/idl.ypp" /* yacc.c:1651 */
+#line 415 "fe/idl.ypp" /* yacc.c:1651 */
{
}
-#line 2376 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2378 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 7:
-#line 419 "fe/idl.ypp" /* yacc.c:1651 */
+#line 421 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) = (yyvsp[0].dcval);
}
-#line 2384 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2386 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 8:
-#line 423 "fe/idl.ypp" /* yacc.c:1651 */
+#line 425 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) = 0;
}
-#line 2392 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2394 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 9:
-#line 427 "fe/idl.ypp" /* yacc.c:1651 */
+#line 429 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) = 0;
}
-#line 2400 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2402 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 10:
-#line 434 "fe/idl.ypp" /* yacc.c:1651 */
+#line 436 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AnnotationDeclSeen);
}
-#line 2408 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2410 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 11:
-#line 438 "fe/idl.ypp" /* yacc.c:1651 */
+#line 440 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = 0;
}
-#line 2417 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2419 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 12:
-#line 443 "fe/idl.ypp" /* yacc.c:1651 */
+#line 445 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TypeDeclSeen);
}
-#line 2425 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2427 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 13:
-#line 447 "fe/idl.ypp" /* yacc.c:1651 */
+#line 449 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = (yyvsp[-2].dcval);
}
-#line 2434 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2436 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 14:
-#line 452 "fe/idl.ypp" /* yacc.c:1651 */
+#line 454 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TypeIdDeclSeen);
}
-#line 2442 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2444 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 15:
-#line 456 "fe/idl.ypp" /* yacc.c:1651 */
+#line 458 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = 0;
}
-#line 2451 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2453 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 16:
-#line 461 "fe/idl.ypp" /* yacc.c:1651 */
+#line 463 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TypePrefixDeclSeen);
}
-#line 2459 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2461 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 17:
-#line 465 "fe/idl.ypp" /* yacc.c:1651 */
+#line 467 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = 0;
}
-#line 2468 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2470 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 18:
-#line 470 "fe/idl.ypp" /* yacc.c:1651 */
+#line 472 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConstDeclSeen);
}
-#line 2476 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2478 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 19:
-#line 474 "fe/idl.ypp" /* yacc.c:1651 */
+#line 476 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = (yyvsp[-2].dcval);
}
-#line 2485 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2487 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 20:
-#line 479 "fe/idl.ypp" /* yacc.c:1651 */
+#line 481 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ExceptDeclSeen);
}
-#line 2493 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2495 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 21:
-#line 483 "fe/idl.ypp" /* yacc.c:1651 */
+#line 485 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = 0;
}
-#line 2502 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2504 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 22:
-#line 488 "fe/idl.ypp" /* yacc.c:1651 */
+#line 490 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceDeclSeen);
}
-#line 2510 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2512 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 23:
-#line 492 "fe/idl.ypp" /* yacc.c:1651 */
+#line 494 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = 0;
}
-#line 2519 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2521 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 24:
-#line 497 "fe/idl.ypp" /* yacc.c:1651 */
+#line 499 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ModuleDeclSeen);
}
-#line 2527 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2529 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 25:
-#line 501 "fe/idl.ypp" /* yacc.c:1651 */
+#line 503 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = (yyvsp[-2].dcval);
}
-#line 2536 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2538 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 26:
-#line 506 "fe/idl.ypp" /* yacc.c:1651 */
+#line 508 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeDeclSeen);
}
-#line 2544 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2546 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 27:
-#line 510 "fe/idl.ypp" /* yacc.c:1651 */
+#line 512 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = 0;
}
-#line 2553 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2555 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 28:
-#line 515 "fe/idl.ypp" /* yacc.c:1651 */
+#line 517 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ComponentDeclSeen);
}
-#line 2561 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2563 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 29:
-#line 519 "fe/idl.ypp" /* yacc.c:1651 */
+#line 521 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = 0;
}
-#line 2570 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2572 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 30:
-#line 524 "fe/idl.ypp" /* yacc.c:1651 */
+#line 526 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_HomeDeclSeen);
}
-#line 2578 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2580 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 31:
-#line 528 "fe/idl.ypp" /* yacc.c:1651 */
+#line 530 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = 0;
}
-#line 2587 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2589 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 32:
-#line 533 "fe/idl.ypp" /* yacc.c:1651 */
+#line 535 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EventDeclSeen);
}
-#line 2595 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2597 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 33:
-#line 537 "fe/idl.ypp" /* yacc.c:1651 */
+#line 539 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = 0;
}
-#line 2604 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2606 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 34:
-#line 542 "fe/idl.ypp" /* yacc.c:1651 */
+#line 544 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeDeclSeen);
}
-#line 2612 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2614 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 35:
-#line 546 "fe/idl.ypp" /* yacc.c:1651 */
+#line 548 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = 0;
}
-#line 2621 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2623 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 36:
-#line 551 "fe/idl.ypp" /* yacc.c:1651 */
+#line 553 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorDeclSeen);
}
-#line 2629 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2631 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 37:
-#line 555 "fe/idl.ypp" /* yacc.c:1651 */
+#line 557 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
(yyval.dcval) = 0;
}
-#line 2638 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2640 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 38:
-#line 560 "fe/idl.ypp" /* yacc.c:1651 */
+#line 562 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->err()->syntax_error (idl_global->parse_state());
}
-#line 2646 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2648 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 39:
-#line 564 "fe/idl.ypp" /* yacc.c:1651 */
+#line 566 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
yyerrok;
(yyval.dcval) = 0;
}
-#line 2656 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2658 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 40:
-#line 573 "fe/idl.ypp" /* yacc.c:1651 */
+#line 575 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ModuleSeen);
}
-#line 2664 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2666 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 41:
-#line 577 "fe/idl.ypp" /* yacc.c:1651 */
+#line 579 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.idlist) = (yyvsp[0].idlist);
}
-#line 2672 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2674 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 42:
-#line 584 "fe/idl.ypp" /* yacc.c:1651 */
+#line 586 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ModuleIDSeen);
@@ -2711,27 +2713,27 @@ yyreduce:
(yyval.dcval) = m;
}
-#line 2715 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2717 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 43:
-#line 623 "fe/idl.ypp" /* yacc.c:1651 */
+#line 625 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ModuleSqSeen);
}
-#line 2723 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2725 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 44:
-#line 627 "fe/idl.ypp" /* yacc.c:1651 */
+#line 629 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ModuleBodySeen);
}
-#line 2731 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2733 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 45:
-#line 631 "fe/idl.ypp" /* yacc.c:1651 */
+#line 633 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ModuleQsSeen);
/*
@@ -2741,19 +2743,19 @@ yyreduce:
idl_global->scopes ().pop ();
(yyval.dcval) = (yyvsp[-5].dcval);
}
-#line 2745 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2747 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 46:
-#line 644 "fe/idl.ypp" /* yacc.c:1651 */
+#line 646 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleIDSeen);
}
-#line 2753 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2755 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 47:
-#line 651 "fe/idl.ypp" /* yacc.c:1651 */
+#line 653 "fe/idl.ypp" /* yacc.c:1651 */
{
// The module_header rule is common to template module, fixed
// module and instantiated template module. In the last
@@ -2767,11 +2769,11 @@ yyreduce:
IDL_GlobalData::PS_ModuleIDSeen);
}
}
-#line 2771 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2773 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 48:
-#line 665 "fe/idl.ypp" /* yacc.c:1651 */
+#line 667 "fe/idl.ypp" /* yacc.c:1651 */
{
if (FE_Utils::duplicate_param_id ((yyvsp[0].plval)))
{
@@ -2781,11 +2783,11 @@ yyreduce:
return 1;
}
}
-#line 2785 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2787 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 49:
-#line 675 "fe/idl.ypp" /* yacc.c:1651 */
+#line 677 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleParamsSeen);
@@ -2815,27 +2817,27 @@ yyreduce:
// of the template module.
idl_global->current_params ((yyvsp[-2].plval));
}
-#line 2819 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2821 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 50:
-#line 705 "fe/idl.ypp" /* yacc.c:1651 */
+#line 707 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleSqSeen);
}
-#line 2827 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2829 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 51:
-#line 709 "fe/idl.ypp" /* yacc.c:1651 */
+#line 711 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleBodySeen);
}
-#line 2835 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2837 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 52:
-#line 713 "fe/idl.ypp" /* yacc.c:1651 */
+#line 715 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleQsSeen);
@@ -2852,29 +2854,29 @@ yyreduce:
// that we are no longer in a template module scope.
idl_global->current_params (0);
}
-#line 2856 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2858 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 58:
-#line 747 "fe/idl.ypp" /* yacc.c:1651 */
+#line 749 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (
IDL_GlobalData::PS_ModuleRefSeen);
}
-#line 2865 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2867 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 59:
-#line 752 "fe/idl.ypp" /* yacc.c:1651 */
+#line 754 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (
IDL_GlobalData::PS_ModuleRefParamsSeen);
}
-#line 2874 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2876 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 60:
-#line 757 "fe/idl.ypp" /* yacc.c:1651 */
+#line 759 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (
IDL_GlobalData::PS_ModuleRefIDSeen);
@@ -2952,29 +2954,29 @@ yyreduce:
idl_global->in_tmpl_mod_no_alias (itmna_flag);
idl_global->in_tmpl_mod_alias (false);
}
-#line 2956 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2958 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 61:
-#line 838 "fe/idl.ypp" /* yacc.c:1651 */
+#line 840 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (
IDL_GlobalData::PS_InstModuleSeen);
}
-#line 2965 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2967 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 62:
-#line 843 "fe/idl.ypp" /* yacc.c:1651 */
+#line 845 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (
IDL_GlobalData::PS_InstModuleArgsSeen);
}
-#line 2974 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 2976 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 63:
-#line 848 "fe/idl.ypp" /* yacc.c:1651 */
+#line 850 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (
IDL_GlobalData::PS_InstModuleIDSeen);
@@ -3036,11 +3038,11 @@ yyreduce:
idl_global->set_err_count (idl_global->err_count () + 1);
}
}
-#line 3040 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3042 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 66:
-#line 918 "fe/idl.ypp" /* yacc.c:1651 */
+#line 920 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Interface *i = 0;
@@ -3078,27 +3080,27 @@ yyreduce:
*/
idl_global->scopes ().push (i);
}
-#line 3082 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3084 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 67:
-#line 956 "fe/idl.ypp" /* yacc.c:1651 */
+#line 958 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceSqSeen);
}
-#line 3090 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3092 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 68:
-#line 960 "fe/idl.ypp" /* yacc.c:1651 */
+#line 962 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceBodySeen);
}
-#line 3098 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3100 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 69:
-#line 964 "fe/idl.ypp" /* yacc.c:1651 */
+#line 966 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceQsSeen);
@@ -3107,28 +3109,28 @@ yyreduce:
*/
idl_global->scopes ().pop ();
}
-#line 3111 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3113 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 70:
-#line 976 "fe/idl.ypp" /* yacc.c:1651 */
+#line 978 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceSeen);
}
-#line 3119 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3121 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 71:
-#line 980 "fe/idl.ypp" /* yacc.c:1651 */
+#line 982 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceIDSeen);
(yyval.idval) = (yyvsp[0].idval);
}
-#line 3128 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3130 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 72:
-#line 988 "fe/idl.ypp" /* yacc.c:1651 */
+#line 990 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen);
@@ -3164,11 +3166,11 @@ yyreduce:
(yyvsp[0].nlval) = 0;
}
}
-#line 3168 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3170 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 73:
-#line 1025 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1027 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen);
@@ -3197,11 +3199,11 @@ yyreduce:
(yyvsp[0].nlval) = 0;
}
}
-#line 3201 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3203 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 74:
-#line 1055 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1057 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen);
@@ -3230,44 +3232,44 @@ yyreduce:
(yyvsp[0].nlval) = 0;
}
}
-#line 3234 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3236 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 75:
-#line 1087 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1089 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InheritColonSeen);
}
-#line 3242 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3244 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 76:
-#line 1091 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1093 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyvsp[0].nlval)->truncatable ((yyvsp[-2].bval));
(yyval.nlval) = (yyvsp[0].nlval);
}
-#line 3251 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3253 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 77:
-#line 1096 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1098 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.nlval) = 0;
}
-#line 3259 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3261 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 82:
-#line 1110 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1112 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->err ()->unsupported_error ("custom is not supported");
}
-#line 3267 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3269 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 84:
-#line 1118 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1120 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_ValueType *v = 0;
@@ -3310,27 +3312,27 @@ yyreduce:
*/
idl_global->scopes ().push (v);
}
-#line 3314 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3316 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 85:
-#line 1161 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1163 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeSqSeen);
}
-#line 3322 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3324 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 86:
-#line 1165 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1167 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeBodySeen);
}
-#line 3330 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3332 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 87:
-#line 1169 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1171 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeQsSeen);
@@ -3349,11 +3351,11 @@ yyreduce:
*/
idl_global->scopes ().pop ();
}
-#line 3353 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3355 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 88:
-#line 1192 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1194 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_ValueType *v = 0;
@@ -3396,27 +3398,27 @@ yyreduce:
*/
idl_global->scopes ().push (v);
}
-#line 3400 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3402 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 89:
-#line 1235 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1237 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeSqSeen);
}
-#line 3408 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3410 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 90:
-#line 1239 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1241 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeBodySeen);
}
-#line 3416 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3418 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 91:
-#line 1243 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1245 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeQsSeen);
@@ -3425,19 +3427,19 @@ yyreduce:
*/
idl_global->scopes ().pop ();
}
-#line 3429 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3431 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 92:
-#line 1256 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1258 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen);
}
-#line 3437 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3439 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 93:
-#line 1260 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1262 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SupportSpecSeen);
@@ -3468,61 +3470,61 @@ yyreduce:
(yyvsp[-2].nlval) = 0;
}
}
-#line 3472 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3474 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 94:
-#line 1294 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1296 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeSeen);
}
-#line 3480 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3482 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 95:
-#line 1298 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1300 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeIDSeen);
(yyval.idval) = (yyvsp[0].idval);
}
-#line 3489 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3491 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 96:
-#line 1306 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1308 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.bval) = true;
}
-#line 3497 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3499 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 97:
-#line 1310 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1312 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.bval) = false;
}
-#line 3505 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3507 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 98:
-#line 1318 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1320 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.nlval) = (yyvsp[0].nlval);
}
-#line 3513 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3515 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 99:
-#line 1322 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1324 "fe/idl.ypp" /* yacc.c:1651 */
{
/* | EMPTY */
(yyval.nlval) = 0;
}
-#line 3522 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3524 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 100:
-#line 1331 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1333 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -3545,11 +3547,11 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 3549 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3551 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 101:
-#line 1355 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1357 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -3572,11 +3574,11 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 3576 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3578 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 102:
-#line 1381 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1383 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ValueBoxDeclSeen);
@@ -3637,27 +3639,27 @@ yyreduce:
delete (yyvsp[-1].idval);
(yyvsp[-1].idval) = 0;
}
-#line 3641 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3643 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 108:
-#line 1457 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1459 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.vival) = AST_Field::vis_PUBLIC;
}
-#line 3649 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3651 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 109:
-#line 1461 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1463 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.vival) = AST_Field::vis_PRIVATE;
}
-#line 3657 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3659 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 110:
-#line 1468 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1470 "fe/idl.ypp" /* yacc.c:1651 */
{
if ((yyvsp[0].decls_val))
{
@@ -3671,160 +3673,161 @@ yyreduce:
}
}
}
+ delete (yyvsp[0].decls_val);
}
-#line 3676 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3679 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 113:
-#line 1491 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1494 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TypeDeclSeen);
}
-#line 3684 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3687 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 114:
-#line 1495 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1498 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 3692 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3695 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 115:
-#line 1499 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1502 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TypeIdDeclSeen);
}
-#line 3700 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3703 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 116:
-#line 1503 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1506 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 3708 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3711 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 117:
-#line 1507 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1510 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TypePrefixDeclSeen);
}
-#line 3716 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3719 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 118:
-#line 1511 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1514 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 3724 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3727 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 119:
-#line 1515 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1518 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConstDeclSeen);
}
-#line 3732 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3735 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 120:
-#line 1519 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1522 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state(IDL_GlobalData::PS_NoState);
}
-#line 3740 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3743 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 121:
-#line 1523 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1526 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ExceptDeclSeen);
}
-#line 3748 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3751 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 122:
-#line 1527 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1530 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 3756 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3759 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 123:
-#line 1531 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1534 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclSeen);
}
-#line 3764 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3767 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 124:
-#line 1535 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1538 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 3772 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3775 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 125:
-#line 1539 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1542 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpDeclSeen);
}
-#line 3780 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3783 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 126:
-#line 1543 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1546 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 3788 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3791 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 127:
-#line 1547 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1550 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->err()->syntax_error (idl_global->parse_state());
}
-#line 3796 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3799 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 128:
-#line 1551 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1554 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
yyerrok;
}
-#line 3805 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3808 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 129:
-#line 1559 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1562 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_NEW_RETURN ((yyval.nlval),
UTL_NameList ((yyvsp[-1].idlist),
(yyvsp[0].nlval)),
1);
}
-#line 3816 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3819 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 130:
-#line 1570 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1573 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SNListCommaSeen);
}
-#line 3824 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3827 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 131:
-#line 1574 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1577 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ScopedNameSeen);
@@ -3844,19 +3847,19 @@ yyreduce:
(yyval.nlval) = (yyvsp[-3].nlval);
}
}
-#line 3848 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3851 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 132:
-#line 1594 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1597 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.nlval) = 0;
}
-#line 3856 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3859 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 133:
-#line 1601 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1604 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SN_IDSeen);
@@ -3865,19 +3868,19 @@ yyreduce:
0),
1);
}
-#line 3869 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3872 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 134:
-#line 1610 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1613 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ScopeDelimSeen);
}
-#line 3877 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3880 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 135:
-#line 1614 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1617 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SN_IDSeen);
@@ -3897,11 +3900,11 @@ yyreduce:
sn),
1);
}
-#line 3901 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3904 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 136:
-#line 1635 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1638 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ScopeDelimSeen);
@@ -3911,11 +3914,11 @@ yyreduce:
ACE::strdelete ((yyvsp[0].strval));
(yyvsp[0].strval) = 0;
}
-#line 3915 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3918 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 137:
-#line 1645 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1648 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SN_IDSeen);
@@ -3927,11 +3930,11 @@ yyreduce:
(yyvsp[-3].idlist)->nconc (sn);
(yyval.idlist) = (yyvsp[-3].idlist);
}
-#line 3931 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3934 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 138:
-#line 1659 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1662 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_NEW_RETURN ((yyval.idval),
Identifier ((yyvsp[0].strval)),
@@ -3939,11 +3942,11 @@ yyreduce:
ACE::strdelete ((yyvsp[0].strval));
(yyvsp[0].strval) = 0;
}
-#line 3943 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3946 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 139:
-#line 1669 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1672 "fe/idl.ypp" /* yacc.c:1651 */
{
/* defining_id is a defining identifier
whereas id is usually a reference to a defining identifier */
@@ -3951,11 +3954,11 @@ yyreduce:
ACE::strdelete ((yyvsp[0].strval));
(yyvsp[0].strval) = 0;
}
-#line 3955 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 3958 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 140:
-#line 1680 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1683 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval), 0);
@@ -3998,11 +4001,11 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 4002 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4005 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 141:
-#line 1724 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1727 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -4028,11 +4031,11 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 4032 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4035 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 142:
-#line 1751 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1754 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -4058,43 +4061,43 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 4062 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4065 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 143:
-#line 1780 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1783 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConstSeen);
}
-#line 4070 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4073 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 144:
-#line 1784 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1787 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConstTypeSeen);
}
-#line 4078 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4081 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 145:
-#line 1788 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1791 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConstIDSeen);
}
-#line 4086 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4089 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 146:
-#line 1792 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1795 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConstAssignSeen);
}
-#line 4094 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4097 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 147:
-#line 1796 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1799 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) = 0;
UTL_ScopedName n ((yyvsp[-4].idval), 0);
@@ -4150,27 +4153,27 @@ yyreduce:
delete (yyvsp[-4].idval);
(yyvsp[-4].idval) = 0;
}
-#line 4154 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4157 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 154:
-#line 1861 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1864 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_string;
}
-#line 4162 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4165 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 155:
-#line 1865 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1868 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_wstring;
}
-#line 4170 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4173 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 156:
-#line 1869 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1872 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_PredefinedType *c = 0;
@@ -4236,11 +4239,11 @@ yyreduce:
sn = 0;
(yyvsp[0].idlist) = 0;
}
-#line 4240 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4243 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 160:
-#line 1942 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1945 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr (
@@ -4249,11 +4252,11 @@ yyreduce:
(yyvsp[0].exval)
);
}
-#line 4253 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4256 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 162:
-#line 1955 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1958 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr (
@@ -4262,11 +4265,11 @@ yyreduce:
(yyvsp[0].exval)
);
}
-#line 4266 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4269 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 164:
-#line 1968 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1971 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr (
@@ -4275,11 +4278,11 @@ yyreduce:
(yyvsp[0].exval)
);
}
-#line 4279 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4282 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 166:
-#line 1981 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1984 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr (
@@ -4288,11 +4291,11 @@ yyreduce:
(yyvsp[0].exval)
);
}
-#line 4292 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4295 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 167:
-#line 1990 "fe/idl.ypp" /* yacc.c:1651 */
+#line 1993 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr (
@@ -4301,11 +4304,11 @@ yyreduce:
(yyvsp[0].exval)
);
}
-#line 4305 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4308 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 169:
-#line 2003 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2006 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr (
@@ -4314,11 +4317,11 @@ yyreduce:
(yyvsp[0].exval)
);
}
-#line 4318 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4321 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 170:
-#line 2012 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2015 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr (
@@ -4327,11 +4330,11 @@ yyreduce:
(yyvsp[0].exval)
);
}
-#line 4331 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4334 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 172:
-#line 2025 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2028 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr (
@@ -4340,11 +4343,11 @@ yyreduce:
(yyvsp[0].exval)
);
}
-#line 4344 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4347 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 173:
-#line 2034 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2037 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr (
@@ -4353,11 +4356,11 @@ yyreduce:
(yyvsp[0].exval)
);
}
-#line 4357 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4360 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 174:
-#line 2043 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2046 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr (
@@ -4366,11 +4369,11 @@ yyreduce:
(yyvsp[0].exval)
);
}
-#line 4370 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4373 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 176:
-#line 2056 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2059 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr (
@@ -4379,11 +4382,11 @@ yyreduce:
0
);
}
-#line 4383 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4386 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 177:
-#line 2065 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2068 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen()->create_expr (
@@ -4392,11 +4395,11 @@ yyreduce:
0
);
}
-#line 4396 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4399 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 178:
-#line 2074 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2077 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen()->create_expr (
@@ -4405,11 +4408,11 @@ yyreduce:
0
);
}
-#line 4409 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4412 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 179:
-#line 2086 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2089 "fe/idl.ypp" /* yacc.c:1651 */
{
/*
* An expression which is a scoped name is not resolved now,
@@ -4467,104 +4470,104 @@ yyreduce:
delete (yyvsp[0].idlist);
(yyvsp[0].idlist) = 0;
}
-#line 4471 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4474 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 181:
-#line 2145 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2148 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) = (yyvsp[-1].exval);
}
-#line 4479 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4482 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 182:
-#line 2152 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2155 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].ival));
}
-#line 4487 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4490 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 183:
-#line 2156 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2159 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) =
idl_global->gen ()->create_expr ((yyvsp[0].uival));
}
-#line 4496 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4499 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 184:
-#line 2161 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2164 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].sval));
(yyvsp[0].sval)->destroy ();
delete (yyvsp[0].sval);
(yyvsp[0].sval) = 0;
}
-#line 4507 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4510 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 185:
-#line 2168 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2171 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].wsval));
}
-#line 4515 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4518 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 186:
-#line 2172 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2175 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].cval));
}
-#line 4523 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4526 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 187:
-#line 2176 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2179 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_OutputCDR::from_wchar wc ((yyvsp[0].wcval));
(yyval.exval) = idl_global->gen ()->create_expr (wc);
}
-#line 4532 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4535 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 188:
-#line 2181 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2184 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].fixval));
}
-#line 4540 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4543 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 189:
-#line 2185 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2188 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].dval));
}
-#line 4548 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4551 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 190:
-#line 2189 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2192 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) = idl_global->gen ()->create_expr (true);
}
-#line 4556 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4559 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 191:
-#line 2193 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2196 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) = idl_global->gen ()->create_expr (false);
}
-#line 4564 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4567 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 192:
-#line 2200 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2203 "fe/idl.ypp" /* yacc.c:1651 */
{
int good_expression = 1;
(yyvsp[0].exval)->evaluate (AST_Expression::EK_positive_int);
@@ -4629,11 +4632,11 @@ yyreduce:
idl_global->err ()->syntax_error (idl_global->parse_state ());
}
}
-#line 4633 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4636 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 193:
-#line 2268 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2271 "fe/idl.ypp" /* yacc.c:1651 */
{
if (idl_global->idl_version_ < IDL_VERSION_4)
{
@@ -4650,38 +4653,38 @@ yyreduce:
fe_add_annotation_decl (annotation_decl);
idl_global->scopes ().push (annotation_decl);
}
-#line 4654 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4657 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 194:
-#line 2285 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2288 "fe/idl.ypp" /* yacc.c:1651 */
{
Identifier *id = (yyvsp[-4].idval);
idl_global->scopes ().pop ();
id->destroy ();
delete id;
}
-#line 4665 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4668 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 200:
-#line 2303 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2306 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TypedefSeen);
idl_global->in_typedef (true);
}
-#line 4674 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4677 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 204:
-#line 2317 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2320 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *scope = idl_global->scopes ().top_non_null ();
UTL_Scope *root = idl_global->scopes ().bottom ();
AST_Expression::ExprType type = (yyvsp[-3].etval);
Identifier *name = (yyvsp[-2].idval);
- UTL_ScopedName scoped_name (name, 0);
+ UTL_ScopedName *scoped_name = new UTL_ScopedName (name, 0);
AST_Expression *default_value = (yyvsp[-1].exval);
AST_Decl * type_obj;
@@ -4699,12 +4702,15 @@ yyreduce:
}
FE_Declarator *declarator = new FE_Declarator (
- &scoped_name, FE_Declarator::FD_simple, 0);
+ scoped_name, FE_Declarator::FD_simple, 0);
AST_Annotation_Member *member = idl_global->gen ()->
create_annotation_member (
type, declarator->compose (type_obj), declarator->name ());
scope->fe_add_annotation_member (member);
+ declarator->destroy ();
+ delete declarator;
+
if (default_value)
{
// Check if types are compatible, else report error
@@ -4722,63 +4728,63 @@ yyreduce:
delete result;
}
}
-#line 4726 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4732 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 205:
-#line 2368 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2374 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) = (yyvsp[0].exval);
}
-#line 4734 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4740 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 206:
-#line 2372 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2378 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.exval) = 0;
}
-#line 4742 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4748 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 207:
-#line 2379 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2385 "fe/idl.ypp" /* yacc.c:1651 */
{
AST_Annotation_Appls *annotations = (yyvsp[-1].annotations_val);
AST_Annotation_Appl *annotation = (yyvsp[0].annotation_val);
if (annotation)
{
- annotations->push_back (annotation);
+ annotations->add (annotation);
}
(yyval.annotations_val) = annotations;
}
-#line 4756 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4762 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 208:
-#line 2392 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2398 "fe/idl.ypp" /* yacc.c:1651 */
{
AST_Annotation_Appls *annotations = (yyvsp[-1].annotations_val);
AST_Annotation_Appl *annotation = (yyvsp[0].annotation_val);
if (annotation)
{
- annotations->push_back (annotation);
+ annotations->add (annotation);
}
(yyval.annotations_val) = annotations;
}
-#line 4770 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4776 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 209:
-#line 2402 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2408 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.annotations_val) = new AST_Annotation_Appls ();
}
-#line 4778 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4784 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 210:
-#line 2409 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2415 "fe/idl.ypp" /* yacc.c:1651 */
{
if (idl_global->idl_version_ < IDL_VERSION_4)
{
@@ -4831,11 +4837,11 @@ yyreduce:
(yyval.annotation_decl_val) = decl;
}
-#line 4835 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4841 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 211:
-#line 2462 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2468 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->ignore_lookup_errors_ = false;
AST_Annotation_Appl *appl = 0;
@@ -4849,30 +4855,40 @@ yyreduce:
appl->apply_from (decl);
idl_global->scopes ().pop ();
}
+ else
+ {
+ AST_Annotation_Appl::delete_params (params);
+ }
+
+ if (name)
+ {
+ name->destroy ();
+ delete name;
+ }
(yyval.annotation_val) = appl;
}
-#line 4856 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4872 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 212:
-#line 2482 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2498 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.annotation_params_val) = (yyvsp[-1].annotation_params_val);
}
-#line 4864 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4880 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 213:
-#line 2486 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2502 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.annotation_params_val) = 0;
}
-#line 4872 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4888 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 214:
-#line 2493 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2509 "fe/idl.ypp" /* yacc.c:1651 */
{
AST_Annotation_Appl::Params *params = new AST_Annotation_Appl::Params;
AST_Annotation_Appl::Param *param = new AST_Annotation_Appl::Param;
@@ -4881,99 +4897,99 @@ yyreduce:
params->push (param);
(yyval.annotation_params_val) = params;
}
-#line 4885 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4901 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 215:
-#line 2502 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2518 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.annotation_params_val) = (yyvsp[0].annotation_params_val);
}
-#line 4893 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4909 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 216:
-#line 2509 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2525 "fe/idl.ypp" /* yacc.c:1651 */
{
AST_Annotation_Appl::Params *params = (yyvsp[0].annotation_params_val);
params->push ((yyvsp[-1].annotation_param_val));
(yyval.annotation_params_val) = params;
}
-#line 4903 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4919 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 217:
-#line 2517 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2533 "fe/idl.ypp" /* yacc.c:1651 */
{
AST_Annotation_Appl::Params *params = (yyvsp[0].annotation_params_val);
params->push ((yyvsp[-1].annotation_param_val));
(yyval.annotation_params_val) = params;
}
-#line 4913 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4929 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 218:
-#line 2523 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2539 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.annotation_params_val) = new AST_Annotation_Appl::Params;
}
-#line 4921 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4937 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 219:
-#line 2530 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2546 "fe/idl.ypp" /* yacc.c:1651 */
{
AST_Annotation_Appl::Param *param = new AST_Annotation_Appl::Param;
param->id = (yyvsp[-2].idval);
param->expr = (yyvsp[0].exval);
(yyval.annotation_param_val) = param;
}
-#line 4932 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4948 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 220:
-#line 2540 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2556 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TypedefSeen);
idl_global->in_typedef (true);
}
-#line 4941 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4957 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 221:
-#line 2545 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2561 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) = (yyvsp[0].dcval);
}
-#line 4949 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4965 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 222:
-#line 2549 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2565 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) = (yyvsp[0].dcval);
}
-#line 4957 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4973 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 223:
-#line 2553 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2569 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) = (yyvsp[0].dcval);
}
-#line 4965 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4981 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 224:
-#line 2557 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2573 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) = (yyvsp[0].dcval);
}
-#line 4973 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 4989 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 225:
-#line 2561 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2577 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Native *node = 0;
@@ -4999,27 +5015,27 @@ yyreduce:
delete (yyvsp[0].deval);
(yyvsp[0].deval) = 0;
}
-#line 5003 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5019 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 226:
-#line 2587 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2603 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) = 0;
}
-#line 5011 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5027 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 227:
-#line 2594 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2610 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_TypeSpecSeen);
}
-#line 5019 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5035 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 228:
-#line 2598 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2614 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
FE_Declarator *d = 0;
@@ -5084,22 +5100,22 @@ yyreduce:
(yyval.dcval) = t;
}
-#line 5088 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5104 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 231:
-#line 2671 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2687 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) =
idl_global->scopes ().bottom ()->lookup_primitive_type (
(yyvsp[0].etval)
);
}
-#line 5099 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5115 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 233:
-#line 2679 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2695 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Decl *d = 0;
@@ -5122,30 +5138,30 @@ yyreduce:
(yyval.dcval) = d;
}
-#line 5126 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5142 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 251:
-#line 2734 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2750 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_NEW_RETURN ((yyval.dlval),
UTL_DeclList ((yyvsp[-1].deval),
(yyvsp[0].dlval)),
1);
}
-#line 5137 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5153 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 252:
-#line 2745 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2761 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_DeclsCommaSeen);
}
-#line 5145 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5161 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 253:
-#line 2749 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2765 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_DeclsDeclSeen);
@@ -5165,38 +5181,38 @@ yyreduce:
(yyval.dlval) = (yyvsp[-3].dlval);
}
}
-#line 5169 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5185 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 254:
-#line 2769 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2785 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dlval) = 0;
}
-#line 5177 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5193 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 257:
-#line 2781 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2797 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_NEW_RETURN ((yyval.dlval),
UTL_DeclList ((yyvsp[-1].deval),
(yyvsp[0].dlval)),
1);
}
-#line 5188 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5204 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 258:
-#line 2792 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2808 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_DeclsCommaSeen);
}
-#line 5196 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5212 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 259:
-#line 2796 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2812 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_DeclsDeclSeen);
@@ -5216,19 +5232,19 @@ yyreduce:
(yyval.dlval) = (yyvsp[-3].dlval);
}
}
-#line 5220 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5236 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 260:
-#line 2816 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2832 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dlval) = 0;
}
-#line 5228 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5244 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 261:
-#line 2823 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2839 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_ScopedName *sn = 0;
ACE_NEW_RETURN (sn,
@@ -5241,11 +5257,11 @@ yyreduce:
0),
1);
}
-#line 5245 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5261 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 262:
-#line 2839 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2855 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_ScopedName *sn = 0;
ACE_NEW_RETURN (sn,
@@ -5260,156 +5276,156 @@ yyreduce:
(yyvsp[0].dcval)),
1);
}
-#line 5264 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5280 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 265:
-#line 2862 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2878 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_long;
}
-#line 5272 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5288 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 266:
-#line 2866 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2882 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_longlong;
}
-#line 5280 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5296 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 267:
-#line 2870 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2886 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_short;
}
-#line 5288 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5304 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 268:
-#line 2877 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2893 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_ulong;
}
-#line 5296 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5312 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 269:
-#line 2881 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2897 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_ulonglong;
}
-#line 5304 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5320 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 270:
-#line 2885 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2901 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_ushort;
}
-#line 5312 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5328 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 271:
-#line 2892 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2908 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_double;
}
-#line 5320 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5336 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 272:
-#line 2896 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2912 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_float;
}
-#line 5328 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5344 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 273:
-#line 2900 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2916 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_longdouble;
}
-#line 5336 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5352 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 274:
-#line 2907 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2923 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_fixed;
}
-#line 5344 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5360 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 275:
-#line 2914 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2930 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_char;
}
-#line 5352 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5368 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 276:
-#line 2918 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2934 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_wchar;
}
-#line 5360 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5376 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 277:
-#line 2925 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2941 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_octet;
}
-#line 5368 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5384 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 278:
-#line 2932 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2948 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_bool;
}
-#line 5376 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5392 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 279:
-#line 2939 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2955 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_any;
}
-#line 5384 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5400 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 280:
-#line 2946 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2962 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.etval) = AST_Expression::EV_object;
}
-#line 5392 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5408 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 281:
-#line 2953 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2969 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StructSeen);
}
-#line 5400 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5416 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 282:
-#line 2957 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2973 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StructIDSeen);
(yyval.idval) = (yyvsp[0].idval);
}
-#line 5409 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5425 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 283:
-#line 2966 "fe/idl.ypp" /* yacc.c:1651 */
+#line 2982 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval), 0);
@@ -5440,27 +5456,27 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 5444 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5460 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 284:
-#line 2997 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3013 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StructSqSeen);
}
-#line 5452 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5468 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 285:
-#line 3001 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3017 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StructBodySeen);
}
-#line 5460 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5476 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 286:
-#line 3005 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3021 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StructQsSeen);
@@ -5472,42 +5488,45 @@ yyreduce:
);
idl_global->scopes ().pop ();
}
-#line 5476 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5492 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 290:
-#line 3027 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3043 "fe/idl.ypp" /* yacc.c:1651 */
{
- if ((yyvsp[-1].annotations_val))
+ AST_Annotation_Appls *annotations = (yyvsp[-1].annotations_val);
+ AST_Decls *members = (yyvsp[0].decls_val);
+ if (annotations && members)
{
- AST_Decls &decls = *(yyvsp[0].decls_val);
- for (size_t i = 0; i < decls.size (); i++)
+ for (size_t i = 0; i < members->size (); i++)
{
- decls[i]->annotation_appls ((yyvsp[-1].annotations_val));
+ (*members)[i]->annotation_appls (*annotations);
}
}
+ delete annotations;
+ delete members;
}
-#line 5491 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5510 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 291:
-#line 3041 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3060 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_MemberTypeSeen);
}
-#line 5499 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5518 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 292:
-#line 3045 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3064 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_MemberDeclsSeen);
}
-#line 5507 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5526 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 293:
-#line 3049 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3068 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
FE_Declarator *d = 0;
@@ -5561,53 +5580,53 @@ yyreduce:
(yyval.decls_val) = members;
}
-#line 5565 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5584 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 294:
-#line 3103 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3122 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->err()->syntax_error (idl_global->parse_state ());
}
-#line 5573 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5592 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 295:
-#line 3107 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3126 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
yyerrok;
}
-#line 5582 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5601 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 296:
-#line 3115 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3134 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_UnionSeen);
}
-#line 5590 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5609 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 297:
-#line 3119 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3138 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_UnionIDSeen);
(yyval.idval) = (yyvsp[0].idval);
}
-#line 5599 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5618 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 298:
-#line 3127 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3146 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SwitchSeen);
}
-#line 5607 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5626 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 299:
-#line 3131 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3150 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[-3].idval), 0);
@@ -5640,19 +5659,19 @@ yyreduce:
* Don't delete $1 yet; we'll need it a bit later.
*/
}
-#line 5644 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5663 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 300:
-#line 3164 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3183 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SwitchTypeSeen);
}
-#line 5652 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5671 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 301:
-#line 3168 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3187 "fe/idl.ypp" /* yacc.c:1651 */
{
/*
* The top of the scopes must be an empty union we added after we
@@ -5662,6 +5681,7 @@ yyreduce:
*/
UTL_Scope *top = idl_global->scopes ().top_non_null ();
idl_global->scopes ().pop ();
+ AST_Annotation_Appls *disc_annotations = (yyvsp[-3].annotations_val);
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[-8].idval), 0);
@@ -5692,7 +5712,7 @@ yyreduce:
AST_Union *e = AST_Union::narrow_from_scope (top);
e->redefine (u);
- e->disc_annotations ((yyvsp[-3].annotations_val)); // Set Discriminator Annotations
+ e->disc_annotations (*disc_annotations); // Set Discriminator Annotations
u->destroy ();
delete u;
@@ -5707,28 +5727,30 @@ yyreduce:
(yyvsp[-8].idval)->destroy ();
delete (yyvsp[-8].idval);
(yyvsp[-8].idval) = 0;
+
+ delete disc_annotations;
}
-#line 5712 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5734 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 302:
-#line 3224 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3246 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_UnionSqSeen);
}
-#line 5720 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5742 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 303:
-#line 3228 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3250 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_UnionBodySeen);
}
-#line 5728 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5750 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 304:
-#line 3232 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3254 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_UnionQsSeen);
@@ -5744,22 +5766,22 @@ yyreduce:
idl_global->scopes ().pop ();
}
}
-#line 5748 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5770 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 305:
-#line 3251 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3273 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) =
idl_global->scopes ().bottom ()->lookup_primitive_type (
(yyvsp[0].etval)
);
}
-#line 5759 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5781 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 306:
-#line 3258 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3280 "fe/idl.ypp" /* yacc.c:1651 */
{
/* wchars are not allowed. */
if ((yyvsp[0].etval) == AST_Expression::EV_wchar)
@@ -5772,11 +5794,11 @@ yyreduce:
(yyvsp[0].etval)
);
}
-#line 5776 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5798 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 307:
-#line 3271 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3293 "fe/idl.ypp" /* yacc.c:1651 */
{
/* octets are not allowed. */
idl_global->err ()->error0 (UTL_Error::EIDL_DISC_TYPE);
@@ -5785,22 +5807,22 @@ yyreduce:
(yyvsp[0].etval)
);
}
-#line 5789 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5811 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 308:
-#line 3280 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3302 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) =
idl_global->scopes ().bottom ()->lookup_primitive_type (
(yyvsp[0].etval)
);
}
-#line 5800 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5822 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 310:
-#line 3288 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3310 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Decl *d = 0;
@@ -5907,30 +5929,31 @@ yyreduce:
delete (yyvsp[0].idlist);
(yyvsp[0].idlist) = 0;
}
-#line 5911 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5933 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 314:
-#line 3405 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3427 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_UnionLabelSeen);
}
-#line 5919 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5941 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 315:
-#line 3409 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3431 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_UnionElemSeen);
}
-#line 5927 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5949 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 316:
-#line 3413 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3435 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_UnionBranch *b = 0;
+ AST_Annotation_Appls *annotations = (yyvsp[-3].annotations_val);
AST_Field *f = (yyvsp[-2].ffval);
idl_global->set_parse_state (IDL_GlobalData::PS_UnionElemCompleted);
@@ -5946,7 +5969,7 @@ yyreduce:
f->field_type (),
f->name ()
);
- b->annotation_appls ((yyvsp[-3].annotations_val));
+ b->annotation_appls (*annotations);
(void) s->fe_add_union_branch (b);
// f has passed its field type to the union branch,
@@ -5955,40 +5978,42 @@ yyreduce:
delete f;
f = 0;
}
+
+ delete annotations;
}
-#line 5960 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5985 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 317:
-#line 3442 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3467 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->err()->syntax_error (idl_global->parse_state());
}
-#line 5968 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 5993 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 318:
-#line 3446 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3471 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
yyerrok;
}
-#line 5977 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6002 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 319:
-#line 3454 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3479 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_NEW_RETURN ((yyval.llval),
UTL_LabelList ((yyvsp[-1].ulval),
(yyvsp[0].llval)),
1);
}
-#line 5988 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6013 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 320:
-#line 3464 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3489 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_LabelList *ll = 0;
ACE_NEW_RETURN (ll,
@@ -6006,27 +6031,27 @@ yyreduce:
(yyval.llval) = (yyvsp[-1].llval);
}
}
-#line 6010 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6035 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 321:
-#line 3482 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3507 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.llval) = 0;
}
-#line 6018 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6043 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 322:
-#line 3489 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3514 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_DefaultSeen);
}
-#line 6026 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6051 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 323:
-#line 3493 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3518 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_LabelColonSeen);
@@ -6035,27 +6060,27 @@ yyreduce:
0
);
}
-#line 6039 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6064 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 324:
-#line 3502 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3527 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_CaseSeen);
}
-#line 6047 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6072 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 325:
-#line 3506 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3531 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_LabelExprSeen);
}
-#line 6055 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6080 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 326:
-#line 3510 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3535 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_LabelColonSeen);
@@ -6064,19 +6089,19 @@ yyreduce:
(yyvsp[-2].exval)
);
}
-#line 6068 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6093 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 327:
-#line 3522 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3547 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_UnionElemTypeSeen);
}
-#line 6076 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6101 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 328:
-#line 3526 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3551 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_UnionElemDeclSeen);
@@ -6120,11 +6145,11 @@ yyreduce:
(yyvsp[0].deval) = 0;
}
}
-#line 6124 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6149 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 329:
-#line 3573 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3598 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -6146,11 +6171,11 @@ yyreduce:
(yyval.dcval) = d;
}
-#line 6150 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6175 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 330:
-#line 3598 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3623 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -6170,19 +6195,19 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 6174 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6199 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 331:
-#line 3621 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3646 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EnumSeen);
}
-#line 6182 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6207 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 332:
-#line 3625 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3650 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval), 0);
@@ -6213,27 +6238,27 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 6217 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6242 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 333:
-#line 3656 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3681 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EnumSqSeen);
}
-#line 6225 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6250 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 334:
-#line 3660 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3685 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EnumBodySeen);
}
-#line 6233 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6258 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 335:
-#line 3664 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3689 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EnumQsSeen);
@@ -6252,21 +6277,22 @@ yyreduce:
idl_global->scopes ().pop ();
}
}
-#line 6256 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6281 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 337:
-#line 3689 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3714 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EnumCommaSeen);
}
-#line 6264 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6289 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 340:
-#line 3698 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3723 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
+ AST_Annotation_Appls *annotations = (yyvsp[-1].annotations_val);
Identifier id ((yyvsp[0].strval));
ACE::strdelete ((yyvsp[0].strval));
(yyvsp[0].strval) = 0;
@@ -6290,33 +6316,35 @@ yyreduce:
&n
);
e->enum_parent (c);
- e->annotation_appls ((yyvsp[-1].annotations_val));
+ e->annotation_appls (*annotations);
}
(void) s->fe_add_enum_val (e);
}
+
+ delete annotations;
}
-#line 6300 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6328 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 341:
-#line 3734 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3762 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SequenceCommaSeen);
}
-#line 6308 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6336 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 342:
-#line 3738 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3766 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SequenceExprSeen);
}
-#line 6316 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6344 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 343:
-#line 3742 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3770 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SequenceQsSeen);
@@ -6386,7 +6414,7 @@ yyreduce:
s->is_local (),
s->is_abstract ()
);
- seq->base_type_annotations (type_annotations);
+ seq->base_type_annotations (*type_annotations);
if (!idl_global->in_typedef ()
&& !idl_global->anon_silent ())
@@ -6396,15 +6424,16 @@ yyreduce:
}
}
+ delete type_annotations;
delete ev;
ev = 0;
(yyval.dcval) = seq;
}
-#line 6404 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6433 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 344:
-#line 3827 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3856 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SequenceQsSeen);
@@ -6457,7 +6486,7 @@ yyreduce:
s->is_local (),
s->is_abstract ()
);
- seq->base_type_annotations (type_annotations);
+ seq->base_type_annotations (*type_annotations);
if (!idl_global->in_typedef ()
&& !idl_global->anon_silent ())
@@ -6467,13 +6496,14 @@ yyreduce:
}
}
+ delete type_annotations;
(yyval.dcval) = seq;
}
-#line 6473 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6503 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 345:
-#line 3895 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3925 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SequenceSeen);
@@ -6482,19 +6512,19 @@ yyreduce:
*/
idl_global->scopes ().push (0);
}
-#line 6486 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6516 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 346:
-#line 3904 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3934 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SequenceSqSeen);
}
-#line 6494 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6524 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 347:
-#line 3908 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3938 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SequenceTypeSeen);
Decl_Annotations_Pair *seq_head = new Decl_Annotations_Pair;
@@ -6502,36 +6532,36 @@ yyreduce:
seq_head->annotations = (yyvsp[-1].annotations_val);
(yyval.decl_annotations_pair_val) = seq_head;
}
-#line 6506 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6536 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 348:
-#line 3919 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3949 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyvsp[-1].exval)->evaluate (AST_Expression::EK_positive_int);
(yyval.dcval) = idl_global->gen ()->create_fixed ((yyvsp[-3].exval), (yyvsp[-1].exval));
}
-#line 6515 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6545 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 349:
-#line 3928 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3958 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StringSqSeen);
}
-#line 6523 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6553 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 350:
-#line 3932 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3962 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StringExprSeen);
}
-#line 6531 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6561 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 351:
-#line 3936 "fe/idl.ypp" /* yacc.c:1651 */
+#line 3966 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StringQsSeen);
@@ -6573,11 +6603,11 @@ yyreduce:
delete ev;
ev = 0;
}
-#line 6577 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6607 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 352:
-#line 3978 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4008 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StringCompleted);
@@ -6600,35 +6630,35 @@ yyreduce:
(yyval.dcval) = tao_string_decl;
}
-#line 6604 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6634 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 353:
-#line 4004 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4034 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StringSeen);
}
-#line 6612 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6642 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 354:
-#line 4012 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4042 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StringSqSeen);
}
-#line 6620 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6650 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 355:
-#line 4016 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4046 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StringExprSeen);
}
-#line 6628 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6658 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 356:
-#line 4020 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4050 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StringQsSeen);
@@ -6661,11 +6691,11 @@ yyreduce:
(yyval.dcval) = string;
}
}
-#line 6665 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6695 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 357:
-#line 4053 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4083 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StringCompleted);
@@ -6688,27 +6718,27 @@ yyreduce:
(yyval.dcval) = string;
}
-#line 6692 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6722 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 358:
-#line 4079 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4109 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_StringSeen);
}
-#line 6700 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6730 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 359:
-#line 4086 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4116 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ArrayIDSeen);
}
-#line 6708 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6738 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 360:
-#line 4090 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4120 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ArrayCompleted);
@@ -6731,7 +6761,7 @@ yyreduce:
0,
0
);
- array->base_type_annotations (base_type_annotations);
+ array->base_type_annotations (*base_type_annotations);
sn.destroy ();
if (!idl_global->in_typedef ()
@@ -6744,24 +6774,26 @@ yyreduce:
array_dims->destroy ();
delete array_dims;
+ delete base_type_annotations;
+
(yyval.dcval) = array;
}
-#line 6750 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6782 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 361:
-#line 4131 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4163 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_NEW_RETURN ((yyval.elval),
UTL_ExprList ((yyvsp[-1].exval),
(yyvsp[0].elval)),
1);
}
-#line 6761 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6793 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 362:
-#line 4141 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4173 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_ExprList *el = 0;
ACE_NEW_RETURN (el,
@@ -6779,35 +6811,35 @@ yyreduce:
(yyval.elval) = (yyvsp[-1].elval);
}
}
-#line 6783 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6815 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 363:
-#line 4159 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4191 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.elval) = 0;
}
-#line 6791 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6823 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 364:
-#line 4166 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4198 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_DimSqSeen);
}
-#line 6799 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6831 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 365:
-#line 4170 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4202 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_DimExprSeen);
}
-#line 6807 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6839 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 366:
-#line 4174 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4206 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_DimQsSeen);
@@ -6861,43 +6893,43 @@ yyreduce:
delete ev;
ev = 0;
}
-#line 6865 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6897 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 369:
-#line 4236 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4268 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AttrROSeen);
}
-#line 6873 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6905 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 370:
-#line 4240 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4272 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AttrSeen);
}
-#line 6881 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6913 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 371:
-#line 4244 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4276 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AttrTypeSeen);
}
-#line 6889 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6921 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 372:
-#line 4248 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4280 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclsSeen);
}
-#line 6897 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6929 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 373:
-#line 4252 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4284 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Attribute *a = 0;
@@ -6957,43 +6989,43 @@ yyreduce:
delete (yyvsp[-2].dlval);
(yyvsp[-2].dlval) = 0;
}
-#line 6961 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 6993 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 374:
-#line 4315 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4347 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AttrSeen);
}
-#line 6969 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7001 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 375:
-#line 4319 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4351 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AttrTypeSeen);
}
-#line 6977 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7009 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 376:
-#line 4323 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4355 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclsSeen);
}
-#line 6985 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7017 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 377:
-#line 4327 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4359 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpGetRaiseCompleted);
}
-#line 6993 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7025 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 378:
-#line 4331 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4363 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Attribute *a = 0;
@@ -7062,19 +7094,19 @@ yyreduce:
delete (yyvsp[-4].dlval);
(yyvsp[-4].dlval) = 0;
}
-#line 7066 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7098 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 379:
-#line 4403 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4435 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ExceptSeen);
}
-#line 7074 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7106 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 380:
-#line 4407 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4439 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -7103,27 +7135,27 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 7107 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7139 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 381:
-#line 4436 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4468 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ExceptSqSeen);
}
-#line 7115 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7147 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 382:
-#line 4440 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4472 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ExceptBodySeen);
}
-#line 7123 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7155 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 383:
-#line 4444 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4476 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ExceptQsSeen);
/*
@@ -7131,19 +7163,19 @@ yyreduce:
*/
idl_global->scopes ().pop ();
}
-#line 7135 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7167 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 384:
-#line 4456 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4488 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpTypeSeen);
}
-#line 7143 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7175 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 385:
-#line 4460 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4492 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
Identifier id ((yyvsp[0].strval));
@@ -7206,28 +7238,30 @@ yyreduce:
* Push the operation scope onto the scopes stack.
*/
idl_global->scopes ().push (o);
+
+ delete (yyvsp[-1].annotations_val);
}
-#line 7211 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7245 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 386:
-#line 4524 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4558 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpParsCompleted);
}
-#line 7219 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7253 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 387:
-#line 4528 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4562 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseCompleted);
}
-#line 7227 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7261 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 388:
-#line 4532 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4566 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Operation *o = 0;
@@ -7256,57 +7290,57 @@ yyreduce:
*/
idl_global->scopes ().pop ();
}
-#line 7260 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7294 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 389:
-#line 4564 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4598 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpAttrSeen);
(yyval.ofval) = AST_Operation::OP_oneway;
}
-#line 7269 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7303 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 390:
-#line 4569 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4603 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpAttrSeen);
(yyval.ofval) = AST_Operation::OP_idempotent;
}
-#line 7278 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7312 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 391:
-#line 4574 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4608 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.ofval) = AST_Operation::OP_noflags;
}
-#line 7286 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7320 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 393:
-#line 4582 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4616 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) =
idl_global->scopes ().bottom ()->lookup_primitive_type (
AST_Expression::EV_void
);
}
-#line 7297 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7331 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 394:
-#line 4592 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4626 "fe/idl.ypp" /* yacc.c:1651 */
{
//@@ PS_FactorySeen?
idl_global->set_parse_state (IDL_GlobalData::PS_OpTypeSeen);
}
-#line 7306 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7340 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 395:
-#line 4597 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4631 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
@@ -7346,20 +7380,22 @@ yyreduce:
* Push the operation scope onto the scopes stack.
*/
idl_global->scopes ().push (factory);
+
+ delete (yyvsp[-1].annotations_val);
}
-#line 7351 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7387 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 396:
-#line 4638 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4674 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpParsCompleted);
}
-#line 7359 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7395 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 397:
-#line 4642 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4678 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseCompleted);
@@ -7372,67 +7408,67 @@ yyreduce:
idl_global->scopes ().pop ();
}
-#line 7376 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7412 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 398:
-#line 4658 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4694 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpSqSeen);
}
-#line 7384 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7420 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 399:
-#line 4662 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4698 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpQsSeen);
}
-#line 7392 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7428 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 400:
-#line 4666 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4702 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpSqSeen);
}
-#line 7400 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7436 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 401:
-#line 4671 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4707 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpQsSeen);
}
-#line 7408 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7444 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 403:
-#line 4681 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4717 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpParCommaSeen);
}
-#line 7416 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7452 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 406:
-#line 4690 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4726 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpParDirSeen);
}
-#line 7424 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7460 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 407:
-#line 4694 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4730 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpParTypeSeen);
}
-#line 7432 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7468 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 408:
-#line 4698 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4734 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Argument *a = 0;
@@ -7464,67 +7500,67 @@ yyreduce:
delete (yyvsp[0].deval);
(yyvsp[0].deval) = 0;
}
-#line 7468 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7504 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 409:
-#line 4733 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4769 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpSqSeen);
}
-#line 7476 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7512 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 410:
-#line 4737 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4773 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpQsSeen);
}
-#line 7484 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7520 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 411:
-#line 4741 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4777 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpSqSeen);
}
-#line 7492 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7528 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 412:
-#line 4746 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4782 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpQsSeen);
}
-#line 7500 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7536 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 414:
-#line 4756 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4792 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpParCommaSeen);
}
-#line 7508 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7544 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 417:
-#line 4765 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4801 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpParDirSeen);
}
-#line 7516 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7552 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 418:
-#line 4769 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4805 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpParTypeSeen);
}
-#line 7524 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7560 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 419:
-#line 4773 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4809 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Argument *a = 0;
@@ -7563,22 +7599,22 @@ yyreduce:
delete (yyvsp[0].deval);
(yyvsp[0].deval) = 0;
}
-#line 7567 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7603 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 420:
-#line 4815 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4851 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dcval) =
idl_global->scopes ().bottom ()->lookup_primitive_type (
(yyvsp[0].etval)
);
}
-#line 7578 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7614 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 423:
-#line 4824 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4860 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Decl *d = 0;
@@ -7682,186 +7718,186 @@ yyreduce:
(yyval.dcval) = d;
}
-#line 7686 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7722 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 424:
-#line 4931 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4967 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dival) = AST_Argument::dir_IN;
}
-#line 7694 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7730 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 425:
-#line 4935 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4971 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dival) = AST_Argument::dir_OUT;
}
-#line 7702 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7738 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 426:
-#line 4939 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4975 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.dival) = AST_Argument::dir_INOUT;
}
-#line 7710 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7746 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 427:
-#line 4946 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4982 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseSeen);
}
-#line 7718 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7754 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 428:
-#line 4950 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4986 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseSqSeen);
}
-#line 7726 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7762 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 429:
-#line 4955 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4991 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseQsSeen);
(yyval.nlval) = (yyvsp[-1].nlval);
}
-#line 7735 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7771 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 430:
-#line 4960 "fe/idl.ypp" /* yacc.c:1651 */
+#line 4996 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.nlval) = 0;
}
-#line 7743 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7779 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 431:
-#line 4967 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5003 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpGetRaiseSeen);
}
-#line 7751 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7787 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 432:
-#line 4971 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5007 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpGetRaiseSqSeen);
}
-#line 7759 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7795 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 433:
-#line 4976 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5012 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpGetRaiseQsSeen);
(yyval.nlval) = (yyvsp[-1].nlval);
}
-#line 7768 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7804 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 434:
-#line 4981 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5017 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.nlval) = 0;
}
-#line 7776 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7812 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 435:
-#line 4988 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5024 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpSetRaiseSeen);
}
-#line 7784 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7820 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 436:
-#line 4992 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5028 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpSetRaiseSqSeen);
}
-#line 7792 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7828 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 437:
-#line 4997 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5033 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpSetRaiseQsSeen);
(yyval.nlval) = (yyvsp[-1].nlval);
}
-#line 7801 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7837 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 438:
-#line 5002 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5038 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.nlval) = 0;
}
-#line 7809 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7845 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 439:
-#line 5009 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5045 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpContextSeen);
}
-#line 7817 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7853 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 440:
-#line 5013 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5049 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpContextSqSeen);
}
-#line 7825 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7861 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 441:
-#line 5018 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5054 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpContextQsSeen);
(yyval.slval) = (yyvsp[-1].slval);
}
-#line 7834 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7870 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 442:
-#line 5023 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5059 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.slval) = 0;
}
-#line 7842 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7878 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 443:
-#line 5030 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5066 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_NEW_RETURN ((yyval.slval),
UTL_StrList ((yyvsp[-1].sval),
(yyvsp[0].slval)),
1);
}
-#line 7853 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7889 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 444:
-#line 5041 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5077 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpContextCommaSeen);
}
-#line 7861 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7897 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 445:
-#line 5045 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5081 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_StrList *sl = 0;
ACE_NEW_RETURN (sl,
@@ -7879,19 +7915,19 @@ yyreduce:
(yyval.slval) = (yyvsp[-3].slval);
}
}
-#line 7883 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7919 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 446:
-#line 5063 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5099 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.slval) = 0;
}
-#line 7891 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7927 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 447:
-#line 5070 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5106 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Decl *d =
@@ -7916,11 +7952,11 @@ yyreduce:
delete (yyvsp[0].sval);
(yyvsp[0].sval) = 0;
}
-#line 7920 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7956 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 448:
-#line 5098 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5134 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Decl *d = ScopeAsDecl (s);
@@ -7954,11 +7990,11 @@ yyreduce:
delete (yyvsp[0].sval);
(yyvsp[0].sval) = 0;
}
-#line 7958 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 7994 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 451:
-#line 5141 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5177 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -7982,11 +8018,11 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 7986 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8022 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 452:
-#line 5168 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5204 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Component *c = 0;
@@ -8025,27 +8061,27 @@ yyreduce:
*/
idl_global->scopes ().push (c);
}
-#line 8029 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8065 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 453:
-#line 5207 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5243 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ComponentSqSeen);
}
-#line 8037 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8073 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 454:
-#line 5211 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5247 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ComponentBodySeen);
}
-#line 8045 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8081 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 455:
-#line 5215 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5251 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ComponentQsSeen);
@@ -8054,27 +8090,27 @@ yyreduce:
*/
idl_global->scopes ().pop ();
}
-#line 8058 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8094 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 456:
-#line 5228 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5264 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ComponentIDSeen);
}
-#line 8066 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8102 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 457:
-#line 5232 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5268 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen);
}
-#line 8074 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8110 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 458:
-#line 5236 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5272 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SupportSpecSeen);
@@ -8108,147 +8144,147 @@ yyreduce:
(yyvsp[-2].idlist) = 0;
}
}
-#line 8112 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8148 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 459:
-#line 5273 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5309 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InheritColonSeen);
}
-#line 8120 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8156 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 460:
-#line 5277 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5313 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.idlist) = (yyvsp[0].idlist);
}
-#line 8128 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8164 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 461:
-#line 5281 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5317 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.idlist) = 0;
}
-#line 8136 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8172 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 464:
-#line 5293 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5329 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ProvidesDeclSeen);
}
-#line 8144 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8180 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 465:
-#line 5297 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5333 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 8152 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8188 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 466:
-#line 5301 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5337 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_UsesDeclSeen);
}
-#line 8160 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8196 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 467:
-#line 5305 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5341 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 8168 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8204 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 468:
-#line 5309 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5345 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EmitsDeclSeen);
}
-#line 8176 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8212 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 469:
-#line 5313 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5349 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 8184 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8220 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 470:
-#line 5317 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5353 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_PublishesDeclSeen);
}
-#line 8192 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8228 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 471:
-#line 5321 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5357 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 8200 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8236 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 472:
-#line 5325 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5361 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConsumesDeclSeen);
}
-#line 8208 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8244 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 473:
-#line 5329 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5365 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 8216 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8252 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 474:
-#line 5333 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5369 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclSeen);
}
-#line 8224 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8260 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 475:
-#line 5337 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5373 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 8232 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8268 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 476:
-#line 5341 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5377 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ExtendedPortDeclSeen);
}
-#line 8240 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8276 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 477:
-#line 5345 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5381 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 8248 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8284 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 478:
-#line 5351 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5387 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
bool so_far_so_good = true;
@@ -8335,21 +8371,21 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 8339 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8375 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 479:
-#line 5441 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5477 "fe/idl.ypp" /* yacc.c:1651 */
{
// Lookups and checking are done where the 'interface_type'
// token is used, in 'provides_decl' and 'uses_decl'.
(yyval.idlist) = (yyvsp[0].idlist);
}
-#line 8349 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8385 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 480:
-#line 5447 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5483 "fe/idl.ypp" /* yacc.c:1651 */
{
Identifier *corba_id = 0;
@@ -8372,11 +8408,11 @@ yyreduce:
conc_name),
1);
}
-#line 8376 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8412 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 481:
-#line 5472 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5508 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
bool so_far_so_good = true;
@@ -8479,37 +8515,37 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 8483 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8519 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 482:
-#line 5578 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5614 "fe/idl.ypp" /* yacc.c:1651 */
{
// We use this extra rule here to use in both uses_decl and
// extended_uses_decl, so the LALR(1) parser can avoid conflicts.
(yyval.bval) = (yyvsp[0].bval);
}
-#line 8493 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8529 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 483:
-#line 5587 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5623 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.bval) = true;
}
-#line 8501 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8537 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 484:
-#line 5591 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5627 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.bval) = false;
}
-#line 8509 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8545 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 485:
-#line 5597 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5633 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
bool so_far_so_good = true;
@@ -8579,11 +8615,11 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 8583 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8619 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 486:
-#line 5669 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5705 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
bool so_far_so_good = true;
@@ -8653,11 +8689,11 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 8657 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8693 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 487:
-#line 5741 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5777 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
bool so_far_so_good = true;
@@ -8727,11 +8763,11 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 8731 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8767 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 488:
-#line 5814 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5850 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Home *h = 0;
@@ -8768,70 +8804,70 @@ yyreduce:
*/
idl_global->scopes ().push (h);
}
-#line 8772 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8808 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 489:
-#line 5851 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5887 "fe/idl.ypp" /* yacc.c:1651 */
{
/*
* Done with this component - pop it off the scopes stack.
*/
idl_global->scopes ().pop ();
}
-#line 8783 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8819 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 490:
-#line 5861 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5897 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_HomeSeen);
}
-#line 8791 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8827 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 491:
-#line 5865 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5901 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_HomeIDSeen);
}
-#line 8799 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8835 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 492:
-#line 5869 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5905 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen);
}
-#line 8807 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8843 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 493:
-#line 5873 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5909 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SupportSpecSeen);
}
-#line 8815 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8851 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 494:
-#line 5877 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5913 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ManagesSeen);
}
-#line 8823 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8859 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 495:
-#line 5881 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5917 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ManagesIDSeen);
}
-#line 8831 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8867 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 496:
-#line 5885 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5921 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_PrimaryKeySpecSeen);
@@ -8877,107 +8913,107 @@ yyreduce:
(yyvsp[-6].nlval) = 0;
}
}
-#line 8881 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8917 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 497:
-#line 5934 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5970 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InheritColonSeen);
}
-#line 8889 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8925 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 498:
-#line 5938 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5974 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.idlist) = (yyvsp[0].idlist);
}
-#line 8897 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8933 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 499:
-#line 5942 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5978 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.idlist) = 0;
}
-#line 8905 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8941 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 500:
-#line 5950 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5986 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.idlist) = (yyvsp[0].idlist);
}
-#line 8913 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8949 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 501:
-#line 5954 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5990 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.idlist) = 0;
}
-#line 8921 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8957 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 502:
-#line 5961 "fe/idl.ypp" /* yacc.c:1651 */
+#line 5997 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_HomeSqSeen);
}
-#line 8929 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8965 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 503:
-#line 5965 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6001 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_HomeBodySeen);
}
-#line 8937 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8973 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 504:
-#line 5969 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6005 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_HomeQsSeen);
}
-#line 8945 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8981 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 508:
-#line 5982 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6018 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_FactoryDeclSeen);
}
-#line 8953 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8989 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 509:
-#line 5986 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6022 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 8961 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 8997 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 510:
-#line 5990 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6026 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_FinderDeclSeen);
}
-#line 8969 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9005 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 511:
-#line 5994 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6030 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 8977 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9013 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 512:
-#line 6002 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6038 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -9000,19 +9036,19 @@ yyreduce:
*/
idl_global->scopes ().push (f);
}
-#line 9004 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9040 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 513:
-#line 6025 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6061 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpParsCompleted);
}
-#line 9012 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9048 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 514:
-#line 6029 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6065 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseCompleted);
@@ -9030,11 +9066,11 @@ yyreduce:
*/
idl_global->scopes ().pop ();
}
-#line 9034 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9070 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 515:
-#line 6051 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6087 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -9061,19 +9097,19 @@ yyreduce:
*/
idl_global->scopes ().push (f);
}
-#line 9065 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9101 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 516:
-#line 6078 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6114 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_OpParsCompleted);
}
-#line 9073 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9109 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 517:
-#line 6082 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6118 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseCompleted);
@@ -9091,11 +9127,11 @@ yyreduce:
*/
idl_global->scopes ().pop ();
}
-#line 9095 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9131 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 523:
-#line 6115 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6151 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -9118,11 +9154,11 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 9122 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9158 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 524:
-#line 6143 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6179 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ((yyvsp[0].idval),
@@ -9145,11 +9181,11 @@ yyreduce:
delete (yyvsp[0].idval);
(yyvsp[0].idval) = 0;
}
-#line 9149 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9185 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 525:
-#line 6170 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6206 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_EventType *e = 0;
@@ -9193,27 +9229,27 @@ yyreduce:
delete (yyvsp[-1].idval);
(yyvsp[-1].idval) = 0;
}
-#line 9197 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9233 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 526:
-#line 6214 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6250 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeSqSeen);
}
-#line 9205 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9241 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 527:
-#line 6218 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6254 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeBodySeen);
}
-#line 9213 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9249 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 528:
-#line 6222 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6258 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeQsSeen);
@@ -9222,19 +9258,19 @@ yyreduce:
*/
idl_global->scopes ().pop ();
}
-#line 9226 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9262 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 529:
-#line 6236 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6272 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.idval) = (yyvsp[0].idval);
}
-#line 9234 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9270 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 530:
-#line 6245 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6281 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeIDSeen);
@@ -9247,29 +9283,29 @@ yyreduce:
ACE_TEXT (" custom yet\n")));
(yyval.idval) = 0;
}
-#line 9251 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9287 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 531:
-#line 6262 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6298 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeIDSeen);
(yyval.idval) = (yyvsp[0].idval);
}
-#line 9261 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9297 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 532:
-#line 6271 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6307 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen);
}
-#line 9269 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9305 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 533:
-#line 6275 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6311 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_SupportSpecSeen);
@@ -9298,11 +9334,11 @@ yyreduce:
(yyvsp[-2].nlval) = 0;
}
}
-#line 9302 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9338 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 534:
-#line 6308 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6344 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_EventType *e = 0;
@@ -9351,27 +9387,27 @@ yyreduce:
*/
idl_global->scopes ().push (e);
}
-#line 9355 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9391 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 535:
-#line 6357 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6393 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeSqSeen);
}
-#line 9363 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9399 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 536:
-#line 6361 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6397 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeBodySeen);
}
-#line 9371 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9407 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 537:
-#line 6365 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6401 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeQsSeen);
@@ -9380,108 +9416,108 @@ yyreduce:
*/
idl_global->scopes ().pop ();
}
-#line 9384 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9420 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 538:
-#line 6377 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6413 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.idval) = (yyvsp[0].idval);
}
-#line 9392 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9428 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 539:
-#line 6381 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6417 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.idval) = (yyvsp[0].idval);
}
-#line 9400 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9436 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 540:
-#line 6388 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6424 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.ntval) = AST_Decl::NT_type;
}
-#line 9408 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9444 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 541:
-#line 6392 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6428 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.ntval) = AST_Decl::NT_struct;
}
-#line 9416 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9452 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 542:
-#line 6396 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6432 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.ntval) = AST_Decl::NT_union;
}
-#line 9424 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9460 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 543:
-#line 6400 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6436 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.ntval) = AST_Decl::NT_eventtype;
}
-#line 9432 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9468 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 544:
-#line 6404 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6440 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.ntval) = AST_Decl::NT_sequence;
}
-#line 9440 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9476 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 545:
-#line 6408 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6444 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.ntval) = AST_Decl::NT_interface;
}
-#line 9448 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9484 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 546:
-#line 6412 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6448 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.ntval) = AST_Decl::NT_valuetype;
}
-#line 9456 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9492 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 547:
-#line 6416 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6452 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.ntval) = AST_Decl::NT_enum;
}
-#line 9464 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9500 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 548:
-#line 6420 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6456 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.ntval) = AST_Decl::NT_except;
}
-#line 9472 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9508 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 549:
-#line 6424 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6460 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.ntval) = AST_Decl::NT_const;
t_param_const_type = (yyvsp[0].etval);
}
-#line 9481 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9517 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 550:
-#line 6432 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6468 "fe/idl.ypp" /* yacc.c:1651 */
{
if ((yyvsp[0].plval) == 0)
{
@@ -9509,11 +9545,11 @@ yyreduce:
(yyval.plval) = (yyvsp[0].plval);
}
-#line 9513 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9549 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 551:
-#line 6463 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6499 "fe/idl.ypp" /* yacc.c:1651 */
{
if ((yyvsp[-2].plval) == 0)
{
@@ -9526,19 +9562,19 @@ yyreduce:
delete (yyvsp[0].pival);
(yyvsp[0].pival) = 0;
}
-#line 9530 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9566 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 552:
-#line 6476 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6512 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.plval) = 0;
}
-#line 9538 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9574 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 553:
-#line 6483 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6519 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_NEW_RETURN ((yyval.pival),
@@ -9563,11 +9599,11 @@ yyreduce:
tao_enum_constant_decl = 0;
}
}
-#line 9567 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9603 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 554:
-#line 6508 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6544 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_NEW_RETURN ((yyval.pival),
FE_Utils::T_Param_Info,
@@ -9582,19 +9618,19 @@ yyreduce:
ACE::strdelete ((yyvsp[0].strval));
(yyvsp[0].strval) = 0;
}
-#line 9586 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9622 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 555:
-#line 6526 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6562 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_NEW_RETURN ((yyval.slval), UTL_StrList ((yyvsp[-1].sval), (yyvsp[0].slval)), 1);
}
-#line 9594 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9630 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 556:
-#line 6533 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6569 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_StrList *sl = 0;
ACE_NEW_RETURN (sl, UTL_StrList ((yyvsp[0].sval), 0), 1);
@@ -9609,37 +9645,37 @@ yyreduce:
(yyval.slval) = (yyvsp[-2].slval);
}
}
-#line 9613 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9649 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 557:
-#line 6548 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6584 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.slval) = 0;
}
-#line 9621 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9657 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 558:
-#line 6555 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6591 "fe/idl.ypp" /* yacc.c:1651 */
{
ACE_NEW_RETURN ((yyval.sval),
UTL_String ((yyvsp[0].strval), true),
1);
}
-#line 9631 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9667 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 559:
-#line 6564 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6600 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeSeen);
}
-#line 9639 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9675 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 560:
-#line 6568 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6604 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeIDSeen);
UTL_Scope *s = idl_global->scopes ().top_non_null ();
@@ -9656,103 +9692,105 @@ yyreduce:
// Push it on the scopes stack.
idl_global->scopes ().push (p);
+
+ delete (yyvsp[-1].annotations_val);
}
-#line 9661 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9699 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 561:
-#line 6586 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6624 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeSqSeen);
}
-#line 9669 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9707 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 562:
-#line 6590 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6628 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeBodySeen);
}
-#line 9677 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9715 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 563:
-#line 6594 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6632 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeQsSeen);
// Done with this port type - pop it off the scopes stack.
idl_global->scopes ().pop ();
}
-#line 9688 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9726 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 564:
-#line 6604 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6642 "fe/idl.ypp" /* yacc.c:1651 */
{
}
-#line 9695 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9733 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 565:
-#line 6610 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6648 "fe/idl.ypp" /* yacc.c:1651 */
{
}
-#line 9702 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9740 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 566:
-#line 6613 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6651 "fe/idl.ypp" /* yacc.c:1651 */
{
}
-#line 9709 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9747 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 567:
-#line 6619 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6657 "fe/idl.ypp" /* yacc.c:1651 */
{
}
-#line 9716 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9754 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 568:
-#line 6622 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6660 "fe/idl.ypp" /* yacc.c:1651 */
{
}
-#line 9723 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9761 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 569:
-#line 6625 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6663 "fe/idl.ypp" /* yacc.c:1651 */
{
}
-#line 9730 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9768 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 570:
-#line 6628 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6666 "fe/idl.ypp" /* yacc.c:1651 */
{
}
-#line 9737 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9775 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 571:
-#line 6631 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6669 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclSeen);
}
-#line 9745 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9783 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 572:
-#line 6635 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6673 "fe/idl.ypp" /* yacc.c:1651 */
{
}
-#line 9752 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9790 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 573:
-#line 6641 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6679 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ExtendedPortDeclSeen);
UTL_Scope *s = idl_global->scopes ().top_non_null ();
@@ -9821,11 +9859,11 @@ yyreduce:
delete (yyvsp[-1].idlist);
(yyvsp[-1].idlist) = 0;
}
-#line 9825 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9863 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 574:
-#line 6710 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6748 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_MirrorPortDeclSeen);
UTL_Scope *s = idl_global->scopes ().top_non_null ();
@@ -9872,11 +9910,11 @@ yyreduce:
delete (yyvsp[-1].idlist);
(yyvsp[-1].idlist) = 0;
}
-#line 9876 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9914 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 575:
-#line 6760 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6798 "fe/idl.ypp" /* yacc.c:1651 */
{
if ((yyvsp[0].alval) == 0)
{
@@ -9885,14 +9923,15 @@ yyreduce:
1);
}
+ delete (yyvsp[-2].annotations_val);
(yyvsp[0].alval)->enqueue_head ((yyvsp[-1].dcval));
(yyval.alval) = (yyvsp[0].alval);
}
-#line 9892 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9931 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 576:
-#line 6775 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6814 "fe/idl.ypp" /* yacc.c:1651 */
{
if ((yyvsp[-3].alval) == 0)
{
@@ -9901,22 +9940,23 @@ yyreduce:
1);
}
+ delete (yyvsp[-1].annotations_val);
(yyvsp[-3].alval)->enqueue_tail ((yyvsp[0].dcval));
(yyval.alval) = (yyvsp[-3].alval);
}
-#line 9908 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9948 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 577:
-#line 6787 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6827 "fe/idl.ypp" /* yacc.c:1651 */
{
(yyval.alval) = 0;
}
-#line 9916 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 9956 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 578:
-#line 6794 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6834 "fe/idl.ypp" /* yacc.c:1651 */
{
// To avoid grammar conflicts with this LALR(1) parser,
// we take advantage of the fact that an expression can
@@ -9972,27 +10012,27 @@ yyreduce:
0);
}
}
-#line 9976 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10016 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 580:
-#line 6857 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6897 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorSeen);
}
-#line 9984 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10024 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 581:
-#line 6861 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6901 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorIDSeen);
}
-#line 9992 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10032 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 582:
-#line 6865 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6905 "fe/idl.ypp" /* yacc.c:1651 */
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_Connector *parent = 0;
@@ -10043,103 +10083,105 @@ yyreduce:
// Push it on the scopes stack.
idl_global->scopes ().push (c);
}
+
+ delete (yyvsp[-3].annotations_val);
}
-#line 10048 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10090 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 583:
-#line 6920 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6962 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorSqSeen);
}
-#line 10056 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10098 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 584:
-#line 6924 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6966 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorBodySeen);
}
-#line 10064 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10106 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 585:
-#line 6928 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6970 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorQsSeen);
// Done with this connector - pop it off the scope stack.
idl_global->scopes ().pop ();
}
-#line 10075 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10117 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 588:
-#line 6943 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6985 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ProvidesDeclSeen);
}
-#line 10083 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10125 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 589:
-#line 6947 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6989 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 10091 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10133 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 590:
-#line 6951 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6993 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_UsesDeclSeen);
}
-#line 10099 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10141 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 591:
-#line 6955 "fe/idl.ypp" /* yacc.c:1651 */
+#line 6997 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 10107 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10149 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 592:
-#line 6959 "fe/idl.ypp" /* yacc.c:1651 */
+#line 7001 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclSeen);
}
-#line 10115 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10157 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 593:
-#line 6963 "fe/idl.ypp" /* yacc.c:1651 */
+#line 7005 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 10123 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10165 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 594:
-#line 6967 "fe/idl.ypp" /* yacc.c:1651 */
+#line 7009 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_ExtendedPortDeclSeen);
}
-#line 10131 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10173 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
case 595:
-#line 6971 "fe/idl.ypp" /* yacc.c:1651 */
+#line 7013 "fe/idl.ypp" /* yacc.c:1651 */
{
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
-#line 10139 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10181 "fe/idl.tab.cpp" /* yacc.c:1651 */
break;
-#line 10143 "fe/idl.tab.cpp" /* yacc.c:1651 */
+#line 10185 "fe/idl.tab.cpp" /* yacc.c:1651 */
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
@@ -10367,7 +10409,7 @@ yyreturn:
#endif
return yyresult;
}
-#line 6976 "fe/idl.ypp" /* yacc.c:1910 */
+#line 7018 "fe/idl.ypp" /* yacc.c:1910 */
/* programs */
diff --git a/TAO/TAO_IDL/fe/idl.ypp b/TAO/TAO_IDL/fe/idl.ypp
index 923357f130c..f0b51967b8b 100644
--- a/TAO/TAO_IDL/fe/idl.ypp
+++ b/TAO/TAO_IDL/fe/idl.ypp
@@ -399,15 +399,17 @@ at_least_one_definition
: definitions at_least_one_annotation definition
{
AST_Decl *d = $3;
+ AST_Annotation_Appls *annotations = $2;
if (d)
{
- d->annotation_appls ($2);
+ d->annotation_appls (*annotations);
}
else
{
idl_global->err ()-> unsupported_warning(
"Annotating this type of definition is not supported");
}
+ delete annotations;
}
| definitions definition
{
@@ -1478,6 +1480,7 @@ state_member
}
}
}
+ delete $2;
}
;
@@ -2320,7 +2323,7 @@ annotation_member
AST_Expression::ExprType type = $1;
Identifier *name = $2;
- UTL_ScopedName scoped_name (name, 0);
+ UTL_ScopedName *scoped_name = new UTL_ScopedName (name, 0);
AST_Expression *default_value = $3;
AST_Decl * type_obj;
@@ -2338,12 +2341,15 @@ annotation_member
}
FE_Declarator *declarator = new FE_Declarator (
- &scoped_name, FE_Declarator::FD_simple, 0);
+ scoped_name, FE_Declarator::FD_simple, 0);
AST_Annotation_Member *member = idl_global->gen ()->
create_annotation_member (
type, declarator->compose (type_obj), declarator->name ());
scope->fe_add_annotation_member (member);
+ declarator->destroy ();
+ delete declarator;
+
if (default_value)
{
// Check if types are compatible, else report error
@@ -2381,7 +2387,7 @@ at_least_one_annotation
AST_Annotation_Appl *annotation = $2;
if (annotation)
{
- annotations->push_back (annotation);
+ annotations->add (annotation);
}
$$ = annotations;
}
@@ -2394,7 +2400,7 @@ annotations_maybe
AST_Annotation_Appl *annotation = $2;
if (annotation)
{
- annotations->push_back (annotation);
+ annotations->add (annotation);
}
$$ = annotations;
}
@@ -2472,6 +2478,16 @@ annotation_appl
appl->apply_from (decl);
idl_global->scopes ().pop ();
}
+ else
+ {
+ AST_Annotation_Appl::delete_params (params);
+ }
+
+ if (name)
+ {
+ name->destroy ();
+ delete name;
+ }
$$ = appl;
}
@@ -3025,14 +3041,17 @@ members
member
: annotations_maybe member_i
{
- if ($1)
+ AST_Annotation_Appls *annotations = $1;
+ AST_Decls *members = $2;
+ if (annotations && members)
{
- AST_Decls &decls = *$2;
- for (size_t i = 0; i < decls.size (); i++)
+ for (size_t i = 0; i < members->size (); i++)
{
- decls[i]->annotation_appls ($1);
+ (*members)[i]->annotation_appls (*annotations);
}
}
+ delete annotations;
+ delete members;
}
;
@@ -3174,6 +3193,7 @@ union_type
*/
UTL_Scope *top = idl_global->scopes ().top_non_null ();
idl_global->scopes ().pop ();
+ AST_Annotation_Appls *disc_annotations = $6;
UTL_Scope *s = idl_global->scopes ().top_non_null ();
UTL_ScopedName n ($1, 0);
@@ -3204,7 +3224,7 @@ union_type
AST_Union *e = AST_Union::narrow_from_scope (top);
e->redefine (u);
- e->disc_annotations ($6); // Set Discriminator Annotations
+ e->disc_annotations (*disc_annotations); // Set Discriminator Annotations
u->destroy ();
delete u;
@@ -3219,6 +3239,8 @@ union_type
$1->destroy ();
delete $1;
$1 = 0;
+
+ delete disc_annotations;
}
'{'
{
@@ -3413,6 +3435,7 @@ case_branch :
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
AST_UnionBranch *b = 0;
+ AST_Annotation_Appls *annotations = $3;
AST_Field *f = $4;
idl_global->set_parse_state (IDL_GlobalData::PS_UnionElemCompleted);
@@ -3428,7 +3451,7 @@ case_branch :
f->field_type (),
f->name ()
);
- b->annotation_appls ($3);
+ b->annotation_appls (*annotations);
(void) s->fe_add_union_branch (b);
// f has passed its field type to the union branch,
@@ -3437,6 +3460,8 @@ case_branch :
delete f;
f = 0;
}
+
+ delete annotations;
}
| error
{
@@ -3697,6 +3722,7 @@ enumerator :
annotations_maybe IDENTIFIER
{
UTL_Scope *s = idl_global->scopes ().top_non_null ();
+ AST_Annotation_Appls *annotations = $1;
Identifier id ($2);
ACE::strdelete ($2);
$2 = 0;
@@ -3720,11 +3746,13 @@ enumerator :
&n
);
e->enum_parent (c);
- e->annotation_appls ($1);
+ e->annotation_appls (*annotations);
}
(void) s->fe_add_enum_val (e);
}
+
+ delete annotations;
}
;
@@ -3808,7 +3836,7 @@ sequence_type_spec
s->is_local (),
s->is_abstract ()
);
- seq->base_type_annotations (type_annotations);
+ seq->base_type_annotations (*type_annotations);
if (!idl_global->in_typedef ()
&& !idl_global->anon_silent ())
@@ -3818,6 +3846,7 @@ sequence_type_spec
}
}
+ delete type_annotations;
delete ev;
ev = 0;
$$ = seq;
@@ -3876,7 +3905,7 @@ sequence_type_spec
s->is_local (),
s->is_abstract ()
);
- seq->base_type_annotations (type_annotations);
+ seq->base_type_annotations (*type_annotations);
if (!idl_global->in_typedef ()
&& !idl_global->anon_silent ())
@@ -3886,6 +3915,7 @@ sequence_type_spec
}
}
+ delete type_annotations;
$$ = seq;
}
;
@@ -4109,7 +4139,7 @@ array_declarator :
0,
0
);
- array->base_type_annotations (base_type_annotations);
+ array->base_type_annotations (*base_type_annotations);
sn.destroy ();
if (!idl_global->in_typedef ()
@@ -4122,6 +4152,8 @@ array_declarator :
array_dims->destroy ();
delete array_dims;
+ delete base_type_annotations;
+
$$ = array;
}
;
@@ -4519,6 +4551,8 @@ operation :
* Push the operation scope onto the scopes stack.
*/
idl_global->scopes ().push (o);
+
+ delete $4;
}
parameter_list
{
@@ -4633,6 +4667,8 @@ init_decl
* Push the operation scope onto the scopes stack.
*/
idl_global->scopes ().push (factory);
+
+ delete $3;
}
init_parameter_list
{
@@ -6581,6 +6617,8 @@ porttype_decl
// Push it on the scopes stack.
idl_global->scopes ().push (p);
+
+ delete $3;
}
'{'
{
@@ -6765,6 +6803,7 @@ at_least_one_actual_parameter
1);
}
+ delete $1;
$3->enqueue_head ($2);
$<alval>$ = $3;
}
@@ -6780,6 +6819,7 @@ actual_parameters
1);
}
+ delete $3;
$1->enqueue_tail ($4);
$<alval>$ = $1;
}
@@ -6912,6 +6952,8 @@ connector_header
// Push it on the scopes stack.
idl_global->scopes ().push (c);
}
+
+ delete $3;
}
;
diff --git a/TAO/TAO_IDL/include/ast_annotation_appl.h b/TAO/TAO_IDL/include/ast_annotation_appl.h
index 75b6e0fa84d..85567255021 100644
--- a/TAO/TAO_IDL/include/ast_annotation_appl.h
+++ b/TAO/TAO_IDL/include/ast_annotation_appl.h
@@ -28,6 +28,7 @@ public:
///{
struct Param {
Param ();
+ ~Param ();
Identifier *id;
AST_Expression *expr;
bool used;
@@ -36,6 +37,9 @@ public:
typedef ACE_Unbounded_Stack<Param*> Params;
///}
+ /// Delete Annotation Parameters
+ static void delete_params (Params* params);
+
/**
* Create an Annotation using it's name and parameters
*/
diff --git a/TAO/TAO_IDL/include/ast_array.h b/TAO/TAO_IDL/include/ast_array.h
index affd6681d5c..2eb72f84859 100644
--- a/TAO/TAO_IDL/include/ast_array.h
+++ b/TAO/TAO_IDL/include/ast_array.h
@@ -124,8 +124,8 @@ public:
* Get and Set Annotations on the base type
*/
///{
- AST_Annotation_Appls *base_type_annotations ();
- void base_type_annotations (AST_Annotation_Appls *annotations);
+ AST_Annotation_Appls &base_type_annotations ();
+ void base_type_annotations (const AST_Annotation_Appls &annotations);
///}
protected:
@@ -155,7 +155,7 @@ private:
/**
* Annotations on the base type
*/
- AST_Annotation_Appls *base_type_annotations_;
+ AST_Annotation_Appls base_type_annotations_;
};
#endif // _AST_ARRAY_AST_ARRAY_HH
diff --git a/TAO/TAO_IDL/include/ast_decl.h b/TAO/TAO_IDL/include/ast_decl.h
index f11e4a2f610..50d58adf975 100644
--- a/TAO/TAO_IDL/include/ast_decl.h
+++ b/TAO/TAO_IDL/include/ast_decl.h
@@ -72,6 +72,8 @@ trademarks or registered trademarks of Sun Microsystems, Inc.
#include "ace/os_include/sys/os_types.h"
#include "ace/SString.h"
#include "ace/Vector_T.h"
+#include "ace/Mutex.h"
+#include "ace/Bound_Ptr.h"
// This is for AIX w/IBM C++
class Identifier;
@@ -81,7 +83,51 @@ class UTL_String;
class ast_visitor;
class AST_Annotation_Appl;
-typedef ACE_Vector<AST_Annotation_Appl*> AST_Annotation_Appls;
+
+/**
+ * Container for AST_Annotation_Appl
+ *
+ * Uses ACE_Strong_Bound_Ptr because they can be shared between AST_Decl
+ */
+class TAO_IDL_FE_Export AST_Annotation_Appls {
+public:
+ typedef ACE_Strong_Bound_Ptr<AST_Annotation_Appl, ACE_Mutex> AST_Annotation_Appl_Ptr;
+ typedef ACE_Vector<AST_Annotation_Appl_Ptr> AST_Annotation_Appl_Ptrs;
+ typedef AST_Annotation_Appl_Ptrs::iterator iterator;
+ typedef AST_Annotation_Appl_Ptrs::const_iterator const_iterator;
+
+ AST_Annotation_Appls ();
+ AST_Annotation_Appls (const AST_Annotation_Appls& other);
+ ~AST_Annotation_Appls ();
+
+ /**
+ * Releases any Appls we have and copies the other vector.
+ */
+ AST_Annotation_Appls &operator= (const AST_Annotation_Appls& other);
+
+ /**
+ * Add a Appl to the vector. This class assumes ownership of the pointer
+ * which is managed by ACE_Strong_Bound_Ptr.
+ */
+ void add (AST_Annotation_Appl *appl);
+
+ /**
+ * Add all the Appls from another AST_Annotation_Appls to the this one.
+ */
+ void add (const AST_Annotation_Appls& other);
+
+ bool empty () const;
+ size_t size () const;
+
+ iterator begin ();
+ iterator end ();
+ const_iterator begin () const;
+ const_iterator end () const;
+ AST_Annotation_Appl *operator[](size_t index);
+
+private:
+ AST_Annotation_Appl_Ptrs vector_;
+};
/**
* This class is needed (only for g++) to get around a bug in g++ which
@@ -333,8 +379,8 @@ public:
/// Set and get annotations for this IDL element
///{
- virtual void annotation_appls (AST_Annotation_Appls *annotations);
- AST_Annotation_Appls *annotation_appls ();
+ void annotation_appls (const AST_Annotation_Appls &annotations);
+ AST_Annotation_Appls &annotation_appls ();
///}
/**
@@ -385,7 +431,7 @@ public:
virtual bool should_be_dumped () const;
/**
- * Get Annotation Vector Reference.
+ * Get Annotation Vector
* If this is a typedef, it includes recursively acquired annotations from
* the possible chain of direct typedefs.
*/
@@ -425,7 +471,7 @@ protected:
// Convert a NodeType to a string for dumping.
/// Annotations applied to this IDL element
- AST_Annotation_Appls* annotation_appls_;
+ AST_Annotation_Appls *annotation_appls_;
/**
* True if defined using idl_global->eval()
diff --git a/TAO/TAO_IDL/include/ast_sequence.h b/TAO/TAO_IDL/include/ast_sequence.h
index f91dc3a0087..228a579dd43 100644
--- a/TAO/TAO_IDL/include/ast_sequence.h
+++ b/TAO/TAO_IDL/include/ast_sequence.h
@@ -122,8 +122,8 @@ public:
* Get and Set Annotations on the base type
*/
///{
- AST_Annotation_Appls *base_type_annotations ();
- void base_type_annotations (AST_Annotation_Appls *annotations);
+ AST_Annotation_Appls &base_type_annotations ();
+ void base_type_annotations (const AST_Annotation_Appls &annotations);
///}
private:
@@ -144,7 +144,7 @@ private:
/**
* Annotations on the base type
*/
- AST_Annotation_Appls *base_type_annotations_;
+ AST_Annotation_Appls base_type_annotations_;
};
#endif // _AST_SEQUENCE_AST_SEQUENCE_HH
diff --git a/TAO/TAO_IDL/include/ast_typedef.h b/TAO/TAO_IDL/include/ast_typedef.h
index ea1f28cba3b..91a3819f840 100644
--- a/TAO/TAO_IDL/include/ast_typedef.h
+++ b/TAO/TAO_IDL/include/ast_typedef.h
@@ -130,7 +130,10 @@ protected:
/**
* Cache of Recursively acquired annotations from typedefs.
*/
- AST_Annotation_Appls *cached_annotations_;
+ ///{
+ AST_Annotation_Appls cached_annotations_;
+ bool has_cached_annotations_;
+ ///}
};
#endif // _AST_TYPEDEF_AST_TYPEDEF_HH
diff --git a/TAO/TAO_IDL/include/ast_union.h b/TAO/TAO_IDL/include/ast_union.h
index 75000af257f..4aada429a1b 100644
--- a/TAO/TAO_IDL/include/ast_union.h
+++ b/TAO/TAO_IDL/include/ast_union.h
@@ -142,8 +142,8 @@ public:
* Get and Set Annotations on the discriminator
*/
///{
- AST_Annotation_Appls *disc_annotations ();
- void disc_annotations (AST_Annotation_Appls *annotations);
+ AST_Annotation_Appls &disc_annotations ();
+ void disc_annotations (const AST_Annotation_Appls &annotations);
///}
protected:
@@ -207,7 +207,7 @@ private:
/**
* Annotations on the discriminator
*/
- AST_Annotation_Appls *disc_annotations_;
+ AST_Annotation_Appls disc_annotations_;
};
#endif // _AST_UNION_AST_UNION_HH
diff --git a/TAO/TAO_IDL/include/utl_annotations.h b/TAO/TAO_IDL/include/utl_annotations.h
index 5b542528266..1a83c84eb7c 100644
--- a/TAO/TAO_IDL/include/utl_annotations.h
+++ b/TAO/TAO_IDL/include/utl_annotations.h
@@ -14,13 +14,9 @@
*/
///{
TAO_IDL_FE_Export AST_Annotation_Appl *UTL_find_annotation (
- AST_Annotation_Appls &annotations, AST_Annotation_Decl *annotation);
+ AST_Annotation_Appls& annotations, AST_Annotation_Decl *annotation);
TAO_IDL_FE_Export AST_Annotation_Appl *UTL_find_annotation (
- AST_Annotation_Appls *annotations, AST_Annotation_Decl *annotation);
-TAO_IDL_FE_Export AST_Annotation_Appl *UTL_find_annotation (
- AST_Annotation_Appls &annotations, const char *annotation);
-TAO_IDL_FE_Export AST_Annotation_Appl *UTL_find_annotation (
- AST_Annotation_Appls *annotations, const char *annotation);
+ AST_Annotation_Appls& annotations, const char *annotation);
///}
#endif
diff --git a/TAO/TAO_IDL/include/utl_identifier.h b/TAO/TAO_IDL/include/utl_identifier.h
index e6ce80ead3f..bae3e637400 100644
--- a/TAO/TAO_IDL/include/utl_identifier.h
+++ b/TAO/TAO_IDL/include/utl_identifier.h
@@ -121,6 +121,8 @@ public:
bool operator== (const Identifier &other) const;
+ Identifier &operator= (const Identifier &other);
+
private:
// Storage for data.
char *pv_string;
diff --git a/TAO/TAO_IDL/util/utl_annotations.cpp b/TAO/TAO_IDL/util/utl_annotations.cpp
index 36dfa07c704..1cf5cf1e660 100644
--- a/TAO/TAO_IDL/util/utl_annotations.cpp
+++ b/TAO/TAO_IDL/util/utl_annotations.cpp
@@ -9,7 +9,7 @@ AST_Annotation_Appl *UTL_find_annotation (
for (AST_Annotation_Appls::iterator i = annotations.begin ();
i != annotations.end (); ++i)
{
- AST_Annotation_Appl *appl = *i;
+ AST_Annotation_Appl *appl = i->get ();
if (appl && appl->annotation_decl () == annotation)
{
result = appl;
@@ -20,27 +20,15 @@ AST_Annotation_Appl *UTL_find_annotation (
}
AST_Annotation_Appl *UTL_find_annotation (
- AST_Annotation_Appls *annotations, AST_Annotation_Decl *annotation)
-{
- return annotations ? UTL_find_annotation (*annotations, annotation) : 0;
-}
-
-AST_Annotation_Appl *UTL_find_annotation (
AST_Annotation_Appls &annotations, const char *annotation)
{
AST_Annotation_Appl *result = 0;
if (annotation)
{
- return UTL_find_annotation (
+ result = UTL_find_annotation (
annotations,
AST_Annotation_Decl::narrow_from_decl (
idl_global->scopes ().bottom ()->lookup_by_name (annotation)));
}
return result;
}
-
-AST_Annotation_Appl *UTL_find_annotation (
- AST_Annotation_Appls *annotations, const char *annotation)
-{
- return annotations ? UTL_find_annotation (*annotations, annotation) : 0;
-}
diff --git a/TAO/TAO_IDL/util/utl_identifier.cpp b/TAO/TAO_IDL/util/utl_identifier.cpp
index 8f3929d0c8f..9ee1561e12b 100644
--- a/TAO/TAO_IDL/util/utl_identifier.cpp
+++ b/TAO/TAO_IDL/util/utl_identifier.cpp
@@ -89,7 +89,7 @@ Identifier::Identifier (const Identifier &other)
: pv_string (0),
escaped_ (other.escaped ())
{
- replace_string (other.get_string ());
+ *this = other;
}
Identifier::~Identifier (void)
@@ -250,3 +250,10 @@ Identifier::operator== (const Identifier &other) const
{
return !ACE_OS::strcmp (pv_string, other.get_string ());
}
+
+Identifier &
+Identifier::operator= (const Identifier &other)
+{
+ replace_string (other.get_string ());
+ return *this;
+}
diff --git a/TAO/tests/IDLv4/annotations/be_init.cpp b/TAO/tests/IDLv4/annotations/be_init.cpp
index 2d7124c7182..cdde0a1562e 100644
--- a/TAO/tests/IDLv4/annotations/be_init.cpp
+++ b/TAO/tests/IDLv4/annotations/be_init.cpp
@@ -229,7 +229,12 @@ public:
failed ();
}
- delete scoped_name;
+ if (scoped_name)
+ {
+ scoped_name->destroy ();
+ delete scoped_name;
+ }
+
return node;
}
@@ -808,12 +813,8 @@ BE_post_init (char *[], long)
}
// Verify Annotation on Base Type
- AST_Annotation_Appls *annotations = seq->base_type_annotations ();
- if (!annotations)
- {
- t.failed ("base_type_annotations() for test_seq_t returned null!");
- }
- size_t count = annotations->size ();
+ AST_Annotation_Appls &annotations = seq->base_type_annotations ();
+ size_t count = annotations.size ();
if (count != 1)
{
ACE_ERROR ((LM_ERROR, ACE_TEXT ("Annotation Test Error: %C:\n")
@@ -822,7 +823,7 @@ BE_post_init (char *[], long)
t.name_, count));
t.failed ();
}
- AST_Annotation_Appl *annotation = (*annotations)[0];
+ AST_Annotation_Appl *annotation = annotations[0];
if (!annotation)
{
t.failed ("annotation for test_seq_t base type is null!");
@@ -947,12 +948,8 @@ BE_post_init (char *[], long)
t.assert_annotation_appl (test_union_decl, 0, test_annotation_1);
// Annotation On Discriminator
- AST_Annotation_Appls *annotations = test_union->disc_annotations ();
- if (!annotations)
- {
- t.failed ("test_union discriminator annotations is null!");
- }
- size_t count = annotations->size ();
+ AST_Annotation_Appls &annotations = test_union->disc_annotations ();
+ size_t count = annotations.size ();
if (count != 1)
{
ACE_ERROR ((LM_ERROR, ACE_TEXT ("Annotation Test Error: %C:\n")
@@ -961,7 +958,7 @@ BE_post_init (char *[], long)
t.name_, count));
t.failed ();
}
- AST_Annotation_Appl *annotation = (*annotations)[0];
+ AST_Annotation_Appl *annotation = annotations[0];
if (!annotation)
{
t.failed ("annotation for test_seq_t base type is null!");
@@ -1139,13 +1136,9 @@ BE_post_init (char *[], long)
dynamic_cast<AST_Array *> (thetypedef->base_type ());
// Verify Annotation on Base Type
- AST_Annotation_Appls *annotations =
+ AST_Annotation_Appls &annotations =
struct12Array->base_type_annotations ();
- if (!annotations)
- {
- t.failed ("base_type_annotations() for struct12Array returned null!");
- }
- size_t count = annotations->size ();
+ size_t count = annotations.size ();
if (count != 1)
{
ACE_ERROR ((LM_ERROR, ACE_TEXT ("Annotation Test Error: %C:\n")
@@ -1154,7 +1147,7 @@ BE_post_init (char *[], long)
t.name_, count));
t.failed ();
}
- AST_Annotation_Appl *annotation = (*annotations)[0];
+ AST_Annotation_Appl *annotation = annotations[0];
if (!annotation)
{
t.failed ("annotation for struct12Array base type is null!");