diff options
author | Steve Huston <shuston@riverace.com> | 2018-02-28 19:02:06 -0500 |
---|---|---|
committer | Steve Huston <shuston@riverace.com> | 2018-02-28 19:02:06 -0500 |
commit | 1fee8620f369c4699a3ab44144a9d19a1e510303 (patch) | |
tree | 4c8614916b744c1568ef0f61b74dd545146c8f02 | |
parent | 296d82b7a2fcff3d9cc704039a25fb0189669c17 (diff) | |
parent | 71a517bfb38858939cecc4e021dc3805663ff07a (diff) | |
download | ATCD-1fee8620f369c4699a3ab44144a9d19a1e510303.tar.gz |
Merge out from master
35 files changed, 3781 insertions, 3304 deletions
@@ -12,6 +12,16 @@ USER VISIBLE CHANGES BETWEEN ACE-6.4.6 and ACE-6.4.7 This behavior only applies when ACE_HAS_IPV6 is true and the local-side IP address is the generic localhost IP address. +. Integrated some changes from XSC into XML Utils + +. Enable ACE_HAS_CPP11 when we have clang with C++11 enabled + +. Added support for cross compiling using MinGW on a Linux host + +. Added support for FreeBSD 11 + +. Fixed issue ACE_Singleton was broken after ACE::fini, ACE::init (GitHub #554) + USER VISIBLE CHANGES BETWEEN ACE-6.4.5 and ACE-6.4.6 ==================================================== diff --git a/ACE/ace/ETCL/ETCL.ll b/ACE/ace/ETCL/ETCL.ll index 7cbc0c47828..fde5839ac57 100644 --- a/ACE/ace/ETCL/ETCL.ll +++ b/ACE/ace/ETCL/ETCL.ll @@ -1,7 +1,6 @@ %option noyywrap %{ -// ETCL.ll,v 1.5 2005/11/16 07:53:24 ossama Exp // ======================================================================== // // = LIBRARY @@ -156,4 +155,4 @@ yywrap (void) return 1; } -ACE_END_VERSIONED_NAMESPACE_DECL
\ No newline at end of file +ACE_END_VERSIONED_NAMESPACE_DECL diff --git a/ACE/ace/WFMO_Reactor.h b/ACE/ace/WFMO_Reactor.h index 0841641d217..b85cb152b6d 100644 --- a/ACE/ace/WFMO_Reactor.h +++ b/ACE/ace/WFMO_Reactor.h @@ -71,11 +71,10 @@ int WSAEnumNetworkEvents (SOCKET s, #endif /* !defined ACE_HAS_WINSOCK2 */ -class ACE_WFMO_Reactor_Test; // Must be out of versioned namespace. - ACE_BEGIN_VERSIONED_NAMESPACE_DECL // Forward decl. +class ACE_WFMO_Reactor_Test; class ACE_WFMO_Reactor; class ACE_Handle_Set; diff --git a/ACE/ace/XML_Utils/XMLSchema/id_map.hpp b/ACE/ace/XML_Utils/XMLSchema/id_map.hpp index 2803a5a85be..6cdcbe45a13 100644 --- a/ACE/ace/XML_Utils/XMLSchema/id_map.hpp +++ b/ACE/ace/XML_Utils/XMLSchema/id_map.hpp @@ -54,7 +54,18 @@ //Unresolved_IDREF thrown when there are IDREF's in the //XML document. - class Unresolved_IDREF {}; + class Unresolved_IDREF { + public: + explicit Unresolved_IDREF(const std::basic_string<ACE_TCHAR> &message) : message(message) + {} + ~Unresolved_IDREF(){} + std::basic_string<ACE_TCHAR> get_message ( void ) + { + return message; + } + private: + std::basic_string<ACE_TCHAR> message; + }; //Only a default constructor and destructor are needed //Constructor @@ -67,8 +78,8 @@ { } - //Add an ID to the ID map - void add_id (std::basic_string<ACE_TCHAR> id, XSCRT::Type *obj_ref) + // Add an ID to the ID map + void add_id (const std::basic_string<ACE_TCHAR>& id, XSCRT::Type *obj_ref) { if (obj_ref) { @@ -81,8 +92,8 @@ return; } - //Add an IDREF to the IDREF map - void add_idref (std::basic_string<ACE_TCHAR> idref, XSCRT::Type *obj_ref) + // Add an IDREF to the IDREF map + void add_idref (const std::basic_string<ACE_TCHAR>& idref, XSCRT::Type *obj_ref) { if (obj_ref) { @@ -95,6 +106,19 @@ return; } + void resolve_single_idref (const std::basic_string<ACE_TCHAR>& idref, ::XSCRT::Type * element) + { + ID_Map::id_iterator id_iterator = this->id_map_.find(idref); + if (id_iterator != this->id_map_.end()) + { + element->set_idref(idref, id_iterator->second); + } + else + { + throw Unresolved_IDREF(idref); + } + } + //Sets the referencing elements XSCRT::Type::idref_ to point to the //referenced element. //Note: The pointer is of type "XSCRT::Type*" @@ -119,7 +143,8 @@ } else { - //throw Unresolved_IDREF(); + std::basic_string<ACE_TCHAR> temp (idref_iterator->first); + throw Unresolved_IDREF(temp); } } } @@ -133,9 +158,9 @@ private: //id_map_: maps the ID string to the element with the // ID attribute + ID_MAP id_map_; //idref_map_: multimap that maps the IDREF string to the // element with the IDREF attribute - ID_MAP id_map_; IDREF_MAP idref_map_; }; diff --git a/ACE/bin/MakeProjectCreator/config/global.features b/ACE/bin/MakeProjectCreator/config/global.features index 5615065d3cc..a48b4581a90 100644 --- a/ACE/bin/MakeProjectCreator/config/global.features +++ b/ACE/bin/MakeProjectCreator/config/global.features @@ -64,7 +64,7 @@ nddsmonitor = 0 mcpp = 0 wireshark_any = 0 wireshark = 0 -wireshark2 = 0 +wireshark_cmake = 0 old_stdstream = 0 exclude_inet = 0 inet_ssl = 0 diff --git a/ACE/bin/fuzz.pl b/ACE/bin/fuzz.pl index 5053b0b6115..a237f0ed59f 100755 --- a/ACE/bin/fuzz.pl +++ b/ACE/bin/fuzz.pl @@ -610,7 +610,7 @@ sub check_for_trailing_whitespace () print "Running trailing_whitespaces check\n"; ITERATION: foreach $file (@files_cpp, @files_inl, @files_h, @files_idl, - @files_cdp, @files_pl, @files_generic) { + @files_cdp, @files_pl, @files_py, @files_generic) { if (open (FILE, $file)) { my $disable = 0; print "Looking at file $file\n" if $opt_d; diff --git a/ACE/examples/Reactor/WFMO_Reactor/Exceptions.cpp b/ACE/examples/Reactor/WFMO_Reactor/Exceptions.cpp index fc4bf1c263c..a0e512a6fc5 100644 --- a/ACE/examples/Reactor/WFMO_Reactor/Exceptions.cpp +++ b/ACE/examples/Reactor/WFMO_Reactor/Exceptions.cpp @@ -21,8 +21,6 @@ #include "ace/WFMO_Reactor.h" - - class Event_Handler : public ACE_Event_Handler { public: @@ -55,6 +53,8 @@ private: ACE_Manual_Event event_; }; +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + class ACE_WFMO_Reactor_Test { public: @@ -81,6 +81,8 @@ public: } }; +ACE_END_VERSIONED_NAMESPACE_DECL + int ACE_TMAIN (int, ACE_TCHAR *[]) { diff --git a/ACE/examples/Reactor/WFMO_Reactor/Suspended_Removals.cpp b/ACE/examples/Reactor/WFMO_Reactor/Suspended_Removals.cpp index f2093f0e3e7..72c4307d8a6 100644 --- a/ACE/examples/Reactor/WFMO_Reactor/Suspended_Removals.cpp +++ b/ACE/examples/Reactor/WFMO_Reactor/Suspended_Removals.cpp @@ -17,8 +17,6 @@ #include "ace/Reactor.h" #include "ace/WFMO_Reactor.h" - - class Event_Handler : public ACE_Event_Handler { public: @@ -31,6 +29,8 @@ public: ACE_Event event_; }; +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + class ACE_WFMO_Reactor_Test { public: @@ -47,6 +47,8 @@ public: } }; +ACE_END_VERSIONED_NAMESPACE_DECL + int ACE_TMAIN (int, ACE_TCHAR *[]) { @@ -54,9 +56,7 @@ ACE_TMAIN (int, ACE_TCHAR *[]) ACE_WFMO_Reactor reactor; ACE_Reactor base_reactor (&reactor); - //FUZZ: disable check_for_lack_ACE_OS - ACE_Time_Value time (1); - //FUZZ: enable check_for_lack_ACE_OS + ACE_Time_Value sleep_time (1); int result = reactor.register_handler (&handler); @@ -74,7 +74,7 @@ ACE_TMAIN (int, ACE_TCHAR *[]) ACE_WFMO_Reactor_Test::check_for_valid_state (reactor, 1, 0, 0, 1); - result = base_reactor.run_reactor_event_loop (time); + result = base_reactor.run_reactor_event_loop (sleep_time); ACE_TEST_ASSERT (result != -1); ACE_WFMO_Reactor_Test::check_for_valid_state (reactor, @@ -87,7 +87,7 @@ ACE_TMAIN (int, ACE_TCHAR *[]) ACE_WFMO_Reactor_Test::check_for_valid_state (reactor, 1, 0, 0, 0); - result = base_reactor.run_reactor_event_loop (time); + result = base_reactor.run_reactor_event_loop (sleep_time); ACE_TEST_ASSERT (result != -1); ACE_WFMO_Reactor_Test::check_for_valid_state (reactor, @@ -109,7 +109,7 @@ ACE_TMAIN (int, ACE_TCHAR *[]) ACE_WFMO_Reactor_Test::check_for_valid_state (reactor, 0, 0, 0, 1); - result = base_reactor.run_reactor_event_loop (time); + result = base_reactor.run_reactor_event_loop (sleep_time); ACE_TEST_ASSERT (result != -1); ACE_WFMO_Reactor_Test::check_for_valid_state (reactor, @@ -129,7 +129,7 @@ ACE_TMAIN (int, ACE_TCHAR *[]) ACE_WFMO_Reactor_Test::check_for_valid_state (reactor, 1, 1, 0, 0); - result = base_reactor.run_reactor_event_loop (time); + result = base_reactor.run_reactor_event_loop (sleep_time); ACE_TEST_ASSERT (result != -1); ACE_WFMO_Reactor_Test::check_for_valid_state (reactor, @@ -151,7 +151,7 @@ ACE_TMAIN (int, ACE_TCHAR *[]) ACE_WFMO_Reactor_Test::check_for_valid_state (reactor, 0, 0, 0, 1); - result = base_reactor.run_reactor_event_loop (time); + result = base_reactor.run_reactor_event_loop (sleep_time); ACE_TEST_ASSERT (result != -1); ACE_WFMO_Reactor_Test::check_for_valid_state (reactor, diff --git a/ACE/tests/Compiler_Features_24_Test.cpp b/ACE/tests/Compiler_Features_24_Test.cpp index e923bd913e5..d4d0697ed26 100644 --- a/ACE/tests/Compiler_Features_24_Test.cpp +++ b/ACE/tests/Compiler_Features_24_Test.cpp @@ -71,17 +71,26 @@ run_main (int, ACE_TCHAR *[]) { ACE_START_TEST (ACE_TEXT("Compiler_Features_24_Test")); - ACE_DEBUG ((LM_INFO, - ACE_TEXT ("Compiler Feature 24 Test does compile and run.\n"))); - FOO::o_r<FOO::A> l = FOO::create(); + +#if defined __clang__ && \ + (defined __apple_build_version__ && __apple_build_version__ < 9100000 \ + || __clang_major__ < 5) + ACE_ERROR ((LM_ERROR, ACE_TEXT ("ERROR: This version of clang doesn't") + ACE_TEXT (" compile the C++11 code in this test.\n"))); + ACE_END_TEST; + return 1; +#else FOO::o_r<FOO::A> l2 = FOO::make_f<FOO::A>(); // next line doesn't compile and shouldn't //FOO::o_r<FOO::B> l3 = FOO::make_f<FOO::B>(); + ACE_DEBUG ((LM_INFO, + ACE_TEXT ("Compiler Feature 24 Test does compile and run.\n"))); ACE_END_TEST; return 0; +#endif } #else diff --git a/ACE/tests/Compiler_Features_32_Test.cpp b/ACE/tests/Compiler_Features_32_Test.cpp index cdfbe7bc643..d2b095f6d99 100644 --- a/ACE/tests/Compiler_Features_32_Test.cpp +++ b/ACE/tests/Compiler_Features_32_Test.cpp @@ -41,7 +41,13 @@ A::u_type_::~u_type_ () void A::clear () { -#if defined __clang__ && __clang_major__ <= 5 +#if defined __clang__ && \ + (defined __apple_build_version__ && __apple_build_version__ < 9100000 \ + || __clang_major__ <= 5) +#define CLANG_WORKAROUND +#endif + +#ifdef CLANG_WORKAROUND // As of 5.0, clang requires one of two workarounds: // 1. the name after ~ must be in scope using std::string; @@ -54,7 +60,7 @@ struct B { std::string m; } u_; void clear() { -#if defined __clang__ && __clang_major__ <= 5 +#ifdef CLANG_WORKAROUND // 2. actual class name instead of typedef u_.m.std::string::~basic_string (); #else diff --git a/ACE/tests/Compiler_Features_38_Test.cpp b/ACE/tests/Compiler_Features_38_Test.cpp new file mode 100644 index 00000000000..83733394013 --- /dev/null +++ b/ACE/tests/Compiler_Features_38_Test.cpp @@ -0,0 +1,56 @@ +/** + * This program checks if the compiler doesn't have a certain bug + * that we encountered when testing with TAO + */ + +#include "test_config.h" + +// g++ 4.1 can't handle this construct +#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ <= 1)) +# define ACE_DISABLE_TEST +#endif + +// Visual Studio 7.1 can't handle this construct +#if (_MSC_VER == 1310) +# define ACE_DISABLE_TEST +#endif + +#if !defined (ACE_DISABLE_TEST) +template <typename T> +class Foo_T +{ +public: + Foo_T () : member() {}; + typedef T& T_elem; + T_elem operator[] (long) { return member; } + operator T *& () { return & member; }; +private: + T member; +}; + +struct Foo2 +{ + long i; +}; +typedef Foo_T<Foo2> Foo2Seq; +#endif /* !ACE_DISABLE_TEST */ + +int +run_main (int, ACE_TCHAR *[]) +{ + ACE_START_TEST (ACE_TEXT("Compiler_Features_38_Test")); + +#if !defined (ACE_DISABLE_TEST) + Foo2Seq f2; + long const j = f2[0].i; + ACE_UNUSED_ARG(j); +#endif /* !ACE_DISABLE_TEST */ + + ACE_DEBUG ((LM_INFO, + ACE_TEXT ("C++ support ok\n"))); + + ACE_END_TEST; + + return 0; +} + diff --git a/ACE/tests/run_test.lst b/ACE/tests/run_test.lst index 9bcddbf6827..0f4f88de61f 100644 --- a/ACE/tests/run_test.lst +++ b/ACE/tests/run_test.lst @@ -108,6 +108,7 @@ Compiler_Features_34_Test Compiler_Features_35_Test Compiler_Features_36_Test Compiler_Features_37_Test +Compiler_Features_38_Test Config_Test: !LynxOS !VxWorks !ACE_FOR_TAO Conn_Test: !ACE_FOR_TAO DLL_Test: !STATIC Linux diff --git a/ACE/tests/tests.mpc b/ACE/tests/tests.mpc index 01a12f3c1f7..5b1c4c7c794 100644 --- a/ACE/tests/tests.mpc +++ b/ACE/tests/tests.mpc @@ -844,6 +844,13 @@ project(Compiler_Features_37_Test) : acetest { } } +project(Compiler_Features_38_Test) : acetest { + exename = Compiler_Features_38_Test + Source_Files { + Compiler_Features_38_Test.cpp + } +} + project(Config Test) : acetest { avoids += ace_for_tao exename = Config_Test @@ -1,6 +1,8 @@ USER VISIBLE CHANGES BETWEEN TAO-2.4.6 and TAO-2.4.7 ==================================================== +. TAO_IDL parses and discards IDLv4 annotations (applying, not defining) + USER VISIBLE CHANGES BETWEEN TAO-2.4.5 and TAO-2.4.6 ==================================================== diff --git a/TAO/TAO-INSTALL.html b/TAO/TAO-INSTALL.html index 878cbc3e590..3f9fb886448 100644 --- a/TAO/TAO-INSTALL.html +++ b/TAO/TAO-INSTALL.html @@ -31,7 +31,7 @@ to run TAO on:<P> <table width="100%" border=1> <tr valign=top> <td><b>Fully supported, i.e., continually tested and used daily</b></td> - <td>Solaris 9, Windows (Microsoft Visual C++ 7.1, 9.0, 10.0, 11.0, 12, and 14.0), + <td>Solaris 9, Windows (Microsoft Visual C++ 7.1, 9.0, 10.0, 11.0, 12, 14.0, and 14.1), Linux/Intel (Redhat, Debian, and SuSe), Android </td> </tr> @@ -143,7 +143,7 @@ bundle as a single piece instead of trying to mix and match things up.<P> <LI>Create config.h and platform_macros.GNU at the right places</LI> <LI>Delete all the GNUmakefiles (or sln and - vproj file as the case may be) from the TAO distrbution using + vproj file as the case may be) from the TAO distribution using the 'find' command.</LI> <LI>Change directory to $TAO_ROOT.</LI> <LI>Run MPC like this, $ACE_ROOT/bin/mwc.pl TAO_ACE.mwc -type gnuace </LI> @@ -538,26 +538,36 @@ If users are building from our <a href="https://github.com/DOCGroup/ACE_TAO">git archive</a> the GNUmakefiles, and project files for building on various platforms will not be available. Users from git are expected to generate them -using <a href="../MPC/docs/README">MPC</a> before building ACE, TAO or -CIAO. We point out some suggestions below to get bootstrapped +using <a href="../MPC/docs/README">MPC</a> before building ACE or TAO. +We point out some suggestions below to get bootstrapped quickly. <UL> <LI> Please see <a href="#MPC"> instructions </a> above to download - MPC from our git repository <p> + MPC from our git repository</LI><p/> <LI>Please make sure that you have <a href="http://www.perl.org"> perl</a> installed, preferably perl 5.8 or higher. Users on Win32 based platforms are recommended to use <a href="http://www.activestate.com/Products/ActivePerl/"> Active State Perl </a>. We use active state perl without problems. We have ran into problems trying to use the cygwin version of perl on Win32 - based platforms. <p> + based platforms.</LI><p/> + <LI>When building from git, the ACE_ROOT and TAO_ROOT environment + variable settings differ from their settings in the ACE_wrappers + prepackaged source distribution: + <UL> + <LI>ACE_ROOT should point to the ACE subdirectory of the top level + ACE_TAO directory</LI> + <LI>TAO_ROOT should point to the TAO subdirectory of the top level + ACE_TAO directory</LI> + </UL> + </LI><p/> <LI>If you just want to build TAO and associated tests, examples, and associated utility libraries, we recommend the following alternatives: <UL> <LI> Build ACE and TAO separately. ACE needs to be built first and - instructins for building ACE are available at <a + instructions for building ACE are available at <a href="../ACE/ACE-INSTALL.html#MPC">ACE-INSTALL</a>. GNUmakefiles and project files for TAO can be generated by using the following commands:<p> @@ -565,7 +575,7 @@ quickly. from <CODE> $TAO_ROOT </CODE> to generate GNUmakefiles. Use <CODE> -type vc71 </CODE> to generate VC71 project and solution files, or <CODE>-type vc8</CODE> for VC8 project and solution files, or - <CODE>-type bmake</CODE> for Borland C++ make files.<p> + <CODE>-type bmake</CODE> for Borland C++ make files.</LI><p/> <LI> Build ACE+TAO together in one shot. To do that please issue the following commands: <p> <CODE> $ACE_ROOT/bin/mwc.pl TAO_ACE.mwc </CODE> <p> @@ -576,13 +586,11 @@ quickly. generate VC71 project and workspace files. <CODE>TAO_ACE.sln</CODE> can be used by users to build ACE+TAO from a single workspace file. Users can use <CODE> -type vc8 </CODE> to generate the VC8 - solutions files. <p> - </UL> - <LI>If you want to build CIAO and its associated libraries - please see <a href="CIAO/CIAO-INSTALL.html"> CIAO-INSTALL <a> for - details. - - </UL> + solutions files. + </LI> + </UL> + </LI><p/> +</UL> <HR><P> diff --git a/TAO/TAO_IDL/ast/ast_expression.cpp b/TAO/TAO_IDL/ast/ast_expression.cpp index 8f27b0346a0..aac7235ff2c 100644 --- a/TAO/TAO_IDL/ast/ast_expression.cpp +++ b/TAO/TAO_IDL/ast/ast_expression.cpp @@ -3179,11 +3179,19 @@ AST_Expression::ast_accept (ast_visitor *visitor) void AST_Expression::destroy (void) { - if (0 != this->pd_ev && EV_string == this->pd_ev->et) + if (0 != this->pd_ev) { - this->pd_ev->u.strval->destroy (); - delete this->pd_ev->u.strval; - this->pd_ev->u.strval = 0; + if (EV_string == this->pd_ev->et) + { + this->pd_ev->u.strval->destroy (); + delete this->pd_ev->u.strval; + this->pd_ev->u.strval = 0; + } + else if (EV_wstring == this->pd_ev->et) + { + ACE::strdelete (this->pd_ev->u.wstrval); + this->pd_ev->u.wstrval = 0; + } } delete this->pd_ev; diff --git a/TAO/TAO_IDL/fe/idl.tab.cpp b/TAO/TAO_IDL/fe/idl.tab.cpp index c35aec6ab0c..ce29e2c5206 100644 --- a/TAO/TAO_IDL/fe/idl.tab.cpp +++ b/TAO/TAO_IDL/fe/idl.tab.cpp @@ -70,7 +70,7 @@ #define yychar tao_yychar /* Copy the first part of user declarations. */ -#line 73 "fe/idl.ypp" /* yacc.c:339 */ +#line 71 "fe/idl.ypp" /* yacc.c:339 */ #include "utl_identifier.h" #include "utl_err.h" @@ -273,7 +273,7 @@ extern int tao_yydebug; typedef union YYSTYPE YYSTYPE; union YYSTYPE { -#line 154 "fe/idl.ypp" /* yacc.c:355 */ +#line 152 "fe/idl.ypp" /* yacc.c:355 */ AST_Decl *dcval; /* Decl value */ UTL_StrList *slval; /* String list */ @@ -568,16 +568,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 3 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 1339 +#define YYLAST 1285 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 107 +#define YYNTOKENS 108 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 382 +#define YYNNTS 389 /* YYNRULES -- Number of rules. */ -#define YYNRULES 567 +#define YYNRULES 578 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 817 +#define YYNSTATES 848 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned by yylex, with out-of-bounds checking. */ @@ -597,10 +597,10 @@ static const yytype_uint8 yytranslate[] = 2, 2, 2, 2, 2, 2, 2, 101, 96, 2, 103, 104, 99, 97, 92, 98, 2, 100, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 91, 86, - 89, 93, 90, 2, 2, 2, 2, 2, 2, 2, + 89, 93, 90, 2, 105, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 105, 2, 106, 95, 2, 2, 2, 2, 2, + 2, 106, 2, 107, 95, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 87, 94, 88, 102, 2, 2, 2, @@ -632,63 +632,64 @@ static const yytype_uint8 yytranslate[] = /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 361, 361, 364, 365, 369, 372, 375, 381, 386, - 385, 396, 395, 406, 405, 416, 415, 426, 425, 436, - 435, 446, 445, 456, 455, 466, 465, 476, 475, 486, - 485, 496, 495, 506, 505, 516, 515, 530, 529, 542, - 581, 586, 541, 603, 611, 626, 636, 667, 671, 610, - 695, 699, 700, 704, 705, 710, 716, 709, 804, 810, - 803, 881, 882, 887, 926, 931, 886, 949, 948, 962, - 1000, 1031, 1065, 1064, 1076, 1083, 1084, 1085, 1086, 1090, - 1101, 1106, 1150, 1155, 1105, 1184, 1228, 1233, 1182, 1252, - 1250, 1292, 1291, 1305, 1311, 1318, 1325, 1332, 1358, 1385, - 1450, 1451, 1455, 1456, 1457, 1463, 1462, 1473, 1472, 1485, - 1486, 1491, 1490, 1501, 1500, 1511, 1510, 1521, 1520, 1531, - 1530, 1541, 1540, 1551, 1550, 1561, 1560, 1574, 1587, 1585, - 1613, 1620, 1631, 1630, 1658, 1656, 1683, 1695, 1741, 1769, - 1800, 1805, 1810, 1815, 1799, 1886, 1887, 1888, 1889, 1890, - 1891, 1892, 1904, 1909, 1978, 1980, 1982, 1983, 1997, 1998, - 2012, 2013, 2026, 2027, 2037, 2050, 2051, 2061, 2074, 2075, - 2085, 2095, 2108, 2109, 2119, 2129, 2142, 2193, 2194, 2203, - 2208, 2214, 2222, 2227, 2232, 2238, 2242, 2247, 2252, 2260, - 2330, 2329, 2340, 2345, 2350, 2355, 2382, 2391, 2390, 2462, - 2463, 2467, 2475, 2476, 2504, 2505, 2506, 2507, 2508, 2509, - 2510, 2511, 2515, 2516, 2517, 2518, 2522, 2523, 2524, 2528, - 2529, 2533, 2546, 2544, 2572, 2579, 2580, 2584, 2597, 2595, - 2623, 2630, 2647, 2666, 2667, 2671, 2676, 2681, 2689, 2694, - 2699, 2707, 2712, 2717, 2725, 2733, 2738, 2746, 2754, 2762, - 2770, 2779, 2778, 2794, 2828, 2833, 2793, 2852, 2855, 2856, - 2860, 2860, 2870, 2875, 2869, 2938, 2937, 2952, 2951, 2966, - 2971, 3007, 3012, 3069, 3074, 2965, 3098, 3106, 3120, 3130, - 3138, 3139, 3247, 3250, 3251, 3256, 3261, 3255, 3297, 3296, - 3310, 3321, 3341, 3349, 3348, 3364, 3369, 3363, 3386, 3385, - 3438, 3462, 3487, 3492, 3525, 3530, 3486, 3556, 3561, 3559, - 3566, 3570, 3607, 3612, 3605, 3693, 3754, 3764, 3753, 3777, - 3787, 3792, 3785, 3839, 3865, 3875, 3880, 3873, 3916, 3941, - 3950, 3949, 3991, 4002, 4022, 4030, 4035, 4029, 4097, 4098, - 4103, 4108, 4113, 4118, 4102, 4187, 4192, 4197, 4202, 4186, - 4280, 4285, 4315, 4320, 4279, 4338, 4343, 4408, 4413, 4336, - 4450, 4456, 4463, 4470, 4471, 4483, 4489, 4531, 4482, 4553, - 4552, 4563, 4562, 4575, 4580, 4578, 4585, 4590, 4595, 4589, - 4636, 4635, 4646, 4645, 4658, 4663, 4661, 4668, 4673, 4678, - 4672, 4725, 4733, 4734, 4735, 4845, 4850, 4855, 4864, 4869, - 4863, 4881, 4889, 4894, 4888, 4906, 4914, 4919, 4913, 4931, - 4939, 4944, 4938, 4956, 4963, 4976, 4974, 5000, 5007, 5036, - 5074, 5075, 5079, 5109, 5149, 5154, 5108, 5173, 5178, 5171, - 5221, 5220, 5231, 5238, 5239, 5244, 5243, 5254, 5253, 5264, - 5263, 5274, 5273, 5284, 5283, 5294, 5293, 5304, 5303, 5315, - 5406, 5413, 5439, 5546, 5556, 5562, 5568, 5641, 5714, 5789, - 5788, 5838, 5843, 5848, 5853, 5858, 5863, 5837, 5918, 5917, - 5928, 5935, 5942, 5950, 5955, 5949, 5967, 5968, 5972, 5974, - 5973, 5984, 5983, 5998, 6022, 5996, 6050, 6078, 6048, 6104, - 6105, 6106, 6110, 6111, 6115, 6143, 6174, 6219, 6224, 6172, - 6241, 6251, 6270, 6282, 6281, 6321, 6371, 6376, 6319, 6393, - 6398, 6406, 6411, 6416, 6421, 6426, 6431, 6436, 6441, 6446, - 6451, 6460, 6495, 6494, 6516, 6523, 6549, 6567, 6578, 6598, - 6605, 6616, 6621, 6640, 6645, 6615, 6660, 6667, 6672, 6679, - 6678, 6687, 6686, 6695, 6694, 6706, 6776, 6827, 6843, 6857, - 6864, 6924, 6929, 6934, 6928, 6995, 7000, 6994, 7015, 7016, - 7021, 7020, 7031, 7030, 7041, 7040, 7051, 7050 + 0, 360, 360, 363, 364, 368, 371, 374, 380, 392, + 391, 402, 401, 412, 411, 422, 421, 432, 431, 442, + 441, 452, 451, 462, 461, 472, 471, 482, 481, 492, + 491, 502, 501, 512, 511, 522, 521, 536, 535, 548, + 587, 592, 547, 609, 617, 632, 642, 673, 677, 616, + 701, 705, 706, 710, 711, 716, 722, 715, 810, 816, + 809, 887, 888, 893, 932, 937, 892, 955, 954, 968, + 1006, 1037, 1071, 1070, 1082, 1089, 1090, 1091, 1092, 1096, + 1107, 1112, 1156, 1161, 1111, 1190, 1234, 1239, 1188, 1258, + 1256, 1298, 1297, 1311, 1317, 1324, 1331, 1338, 1364, 1391, + 1456, 1457, 1461, 1462, 1463, 1469, 1468, 1479, 1478, 1491, + 1492, 1497, 1496, 1507, 1506, 1517, 1516, 1527, 1526, 1537, + 1536, 1547, 1546, 1557, 1556, 1567, 1566, 1580, 1593, 1591, + 1619, 1626, 1637, 1636, 1664, 1662, 1689, 1700, 1713, 1759, + 1787, 1818, 1823, 1828, 1833, 1817, 1904, 1905, 1906, 1907, + 1908, 1909, 1910, 1922, 1927, 1996, 1998, 2000, 2001, 2015, + 2016, 2030, 2031, 2044, 2045, 2055, 2068, 2069, 2079, 2092, + 2093, 2103, 2113, 2126, 2127, 2137, 2147, 2160, 2211, 2212, + 2221, 2226, 2232, 2240, 2245, 2250, 2256, 2260, 2265, 2270, + 2278, 2352, 2353, 2357, 2358, 2362, 2363, 2367, 2371, 2372, + 2376, 2381, 2380, 2391, 2396, 2401, 2406, 2433, 2442, 2441, + 2513, 2514, 2518, 2526, 2527, 2555, 2556, 2557, 2558, 2559, + 2560, 2561, 2562, 2566, 2567, 2568, 2569, 2573, 2574, 2575, + 2579, 2580, 2584, 2597, 2595, 2623, 2630, 2631, 2635, 2648, + 2646, 2674, 2681, 2698, 2717, 2718, 2722, 2727, 2732, 2740, + 2745, 2750, 2758, 2763, 2768, 2776, 2784, 2789, 2797, 2805, + 2813, 2821, 2830, 2829, 2845, 2879, 2884, 2844, 2903, 2906, + 2907, 2911, 2911, 2922, 2927, 2920, 2990, 2989, 3004, 3003, + 3018, 3023, 3059, 3064, 3121, 3126, 3017, 3150, 3158, 3172, + 3182, 3190, 3191, 3299, 3302, 3303, 3308, 3313, 3307, 3349, + 3348, 3362, 3373, 3393, 3401, 3400, 3416, 3421, 3415, 3438, + 3437, 3490, 3514, 3539, 3544, 3577, 3582, 3538, 3608, 3613, + 3611, 3618, 3622, 3659, 3664, 3657, 3745, 3806, 3816, 3805, + 3829, 3839, 3844, 3837, 3891, 3917, 3927, 3932, 3925, 3968, + 3993, 4002, 4001, 4043, 4054, 4074, 4082, 4087, 4081, 4149, + 4150, 4155, 4160, 4165, 4170, 4154, 4239, 4244, 4249, 4254, + 4238, 4332, 4337, 4367, 4372, 4331, 4390, 4395, 4460, 4465, + 4388, 4502, 4508, 4515, 4522, 4523, 4535, 4541, 4583, 4534, + 4605, 4604, 4615, 4614, 4627, 4632, 4630, 4637, 4642, 4647, + 4641, 4688, 4687, 4698, 4697, 4710, 4715, 4713, 4720, 4725, + 4730, 4724, 4777, 4785, 4786, 4787, 4897, 4902, 4907, 4916, + 4921, 4915, 4933, 4941, 4946, 4940, 4958, 4966, 4971, 4965, + 4983, 4991, 4996, 4990, 5008, 5015, 5028, 5026, 5052, 5059, + 5088, 5126, 5127, 5131, 5161, 5201, 5206, 5160, 5225, 5230, + 5223, 5273, 5272, 5283, 5290, 5291, 5296, 5295, 5306, 5305, + 5316, 5315, 5326, 5325, 5336, 5335, 5346, 5345, 5356, 5355, + 5367, 5458, 5465, 5491, 5598, 5608, 5614, 5620, 5693, 5766, + 5841, 5840, 5890, 5895, 5900, 5905, 5910, 5915, 5889, 5970, + 5969, 5980, 5987, 5994, 6002, 6007, 6001, 6019, 6020, 6024, + 6026, 6025, 6036, 6035, 6050, 6074, 6048, 6102, 6130, 6100, + 6156, 6157, 6158, 6162, 6163, 6167, 6195, 6226, 6271, 6276, + 6224, 6293, 6303, 6322, 6334, 6333, 6373, 6423, 6428, 6371, + 6445, 6450, 6458, 6463, 6468, 6473, 6478, 6483, 6488, 6493, + 6498, 6503, 6512, 6547, 6546, 6568, 6575, 6601, 6619, 6630, + 6650, 6657, 6668, 6673, 6692, 6697, 6667, 6712, 6719, 6724, + 6731, 6730, 6739, 6738, 6747, 6746, 6758, 6828, 6879, 6895, + 6909, 6916, 6976, 6981, 6986, 6980, 7047, 7052, 7046, 7067, + 7068, 7073, 7072, 7083, 7082, 7093, 7092, 7103, 7102 }; #endif @@ -718,8 +719,8 @@ static const char *const yytname[] = "IDL_FALSETOK", "IDL_SCOPE_DELIMITOR", "IDL_LEFT_SHIFT", "IDL_RIGHT_SHIFT", "IDL_WCHAR_LITERAL", "IDL_WSTRING_LITERAL", "';'", "'{'", "'}'", "'<'", "'>'", "':'", "','", "'='", "'|'", "'^'", "'&'", - "'+'", "'-'", "'*'", "'/'", "'%'", "'~'", "'('", "')'", "'['", "']'", - "$accept", "start", "definitions", "definition", + "'+'", "'-'", "'*'", "'/'", "'%'", "'~'", "'('", "')'", "'@'", "'['", + "']'", "$accept", "start", "definitions", "definition", "at_least_one_definition", "fixed_definition", "$@1", "$@2", "$@3", "$@4", "$@5", "$@6", "$@7", "$@8", "$@9", "$@10", "$@11", "$@12", "$@13", "$@14", "module_header", "$@15", "module", "$@16", "$@17", "$@18", @@ -736,24 +737,27 @@ static const char *const yytname[] = "@41", "@42", "exports", "export", "$@43", "$@44", "$@45", "$@46", "$@47", "$@48", "$@49", "$@50", "at_least_one_scoped_name", "scoped_names", "$@51", "scoped_name", "$@52", "$@53", "id", - "interface_forward", "const_dcl", "$@54", "$@55", "$@56", "$@57", - "const_type", "expression", "const_expr", "or_expr", "xor_expr", + "defining_id", "interface_forward", "const_dcl", "$@54", "$@55", "$@56", + "$@57", "const_type", "expression", "const_expr", "or_expr", "xor_expr", "and_expr", "shift_expr", "add_expr", "mult_expr", "unary_expr", - "primary_expr", "literal", "positive_int_expr", "type_dcl", "$@58", - "type_declarator", "$@59", "type_spec", "simple_type_spec", - "base_type_spec", "template_type_spec", "constructed_type_spec", - "constructed_forward_type_spec", "at_least_one_declarator", - "declarators", "$@60", "declarator", "at_least_one_simple_declarator", - "simple_declarators", "$@61", "simple_declarator", "complex_declarator", - "integer_type", "signed_int", "unsigned_int", "floating_pt_type", - "fixed_type", "char_type", "octet_type", "boolean_type", "any_type", - "object_type", "struct_decl", "$@62", "struct_type", "$@63", "$@64", - "$@65", "at_least_one_member", "members", "member", "@66", "member_i", - "$@67", "$@68", "$@69", "union_decl", "$@70", "union_type", "$@71", - "$@72", "$@73", "$@74", "$@75", "$@76", "switch_type_spec", - "at_least_one_case_branch", "case_branches", "case_branch", "$@77", - "$@78", "$@79", "at_least_one_case_label", "case_labels", "case_label", - "$@80", "$@81", "$@82", "element_spec", "$@83", "struct_forward_type", + "primary_expr", "literal", "positive_int_expr", "annotations", + "annotation_appl", "annotation_appl_params", + "at_least_one_annotation_appl_param", "annotation_appl_named_params", + "annotation_appl_param", "type_dcl", "$@58", "type_declarator", "$@59", + "type_spec", "simple_type_spec", "base_type_spec", "template_type_spec", + "constructed_type_spec", "constructed_forward_type_spec", + "at_least_one_declarator", "declarators", "$@60", "declarator", + "at_least_one_simple_declarator", "simple_declarators", "$@61", + "simple_declarator", "complex_declarator", "integer_type", "signed_int", + "unsigned_int", "floating_pt_type", "fixed_type", "char_type", + "octet_type", "boolean_type", "any_type", "object_type", "struct_decl", + "$@62", "struct_type", "$@63", "$@64", "$@65", "at_least_one_member", + "members", "member", "@66", "member_i", "$@67", "$@68", "$@69", + "union_decl", "$@70", "union_type", "$@71", "$@72", "$@73", "$@74", + "$@75", "$@76", "switch_type_spec", "at_least_one_case_branch", + "case_branches", "case_branch", "$@77", "$@78", "$@79", + "at_least_one_case_label", "case_labels", "case_label", "$@80", "$@81", + "$@82", "element_spec", "$@83", "struct_forward_type", "union_forward_type", "enum_type", "$@84", "$@85", "$@86", "$@87", "at_least_one_enumerator", "enumerators", "$@88", "enumerator", "sequence_type_spec", "$@89", "$@90", "seq_head", "$@91", "$@92", @@ -814,16 +818,16 @@ static const yytype_uint16 yytoknum[] = 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 59, 123, 125, 60, 62, 58, 44, 61, 124, 94, 38, 43, 45, 42, - 47, 37, 126, 40, 41, 91, 93 + 47, 37, 126, 40, 41, 64, 91, 93 }; # endif -#define YYPACT_NINF -589 +#define YYPACT_NINF -597 #define yypact_value_is_default(Yystate) \ - (!!((Yystate) == (-589))) + (!!((Yystate) == (-597))) -#define YYTABLE_NINF -508 +#define YYTABLE_NINF -519 #define yytable_value_is_error(Yytable_value) \ 0 @@ -832,88 +836,91 @@ static const yytype_uint16 yytoknum[] = STATE-NUM. */ static const yytype_int16 yypact[] = { - -589, 52, 1190, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, 65, 86, 146, 12, -589, 65, 65, - -589, 37, 37, -589, -589, -589, -589, 9, -589, 534, - 54, 74, -589, -589, 56, -589, -589, -589, -589, -589, - -589, 167, -589, -589, -589, -589, -589, -589, 108, -589, - 82, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, -589, -589, -589, -589, -589, -589, 58, - -589, -589, -589, 58, -589, -589, 69, 116, 200, 37, - 65, 312, 65, 65, 65, 65, -589, -589, -589, 64, - 65, 72, -589, 136, 65, -589, 58, 65, 138, 161, - 65, -589, 5, -589, 16, 252, 254, -589, 201, 216, - 632, 36, -589, -589, 228, 271, -589, 255, 261, 262, - 34, -589, 67, -589, -589, -589, -589, -589, -589, 263, - -589, -589, -589, -589, -589, -589, 269, -589, -589, -589, - -589, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, -589, 82, -589, -589, -589, 140, -589, - -589, 265, -589, 266, 267, 270, 272, -589, 274, 275, - 279, 282, 289, 291, 296, 301, -589, -589, -589, 304, - 305, -589, -589, -589, -589, 269, -589, -589, -589, -589, - -589, -589, -589, -589, -589, 269, -589, -589, -589, -589, - -589, -589, -589, -589, 306, -589, 307, -589, -589, 260, - -589, 65, -589, -589, -589, -589, -589, -589, -589, 200, - -589, -589, -589, -589, 268, -589, -589, -589, -589, 355, - -589, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, 51, 51, 51, 36, 269, -589, -589, 302, - 303, 313, 91, 3, 105, -589, -589, -589, 309, -589, - -589, -589, -589, -589, -589, -589, -589, -589, 354, -589, - 36, 277, 350, -589, -589, -589, -589, -589, -589, -589, - 298, -589, -589, -589, -589, -589, -589, -589, -589, -589, - 350, 315, 321, -589, -589, -589, 65, 65, 323, 324, - -589, -589, -589, 322, -589, 65, 325, 260, -589, -589, - 411, -589, 326, 329, -589, -589, -589, 311, 36, 36, - 36, 36, 36, 36, 36, 36, 36, 36, -589, 331, - 37, -589, -589, -589, -589, 333, -589, 37, -589, 36, - 36, 36, -589, -589, -589, -589, -589, -589, -589, 229, - -589, 328, -589, -589, -589, -589, -589, -589, -589, -589, - 37, 350, -589, -589, -589, -589, -589, 1268, -589, 327, - -589, -589, -589, 303, 313, 91, 3, 3, 105, 105, - -589, -589, -589, 65, 36, -589, 269, 1024, 778, 36, - 225, -589, -589, -589, -589, -589, -589, 253, 80, 413, - 942, -589, -589, -589, -589, 38, 360, 37, 37, -589, - -589, -589, -589, -589, 38, -589, 339, -589, 336, 330, - 338, 428, -589, 1059, 269, -589, 37, 350, 215, 346, - 348, 434, 351, 632, -589, -589, 353, -589, -589, -589, - 358, -589, -589, -589, -589, -589, -589, 581, -589, -589, - -589, -589, -589, 359, -589, -589, -589, 364, 361, -589, - 366, 370, 371, 378, 379, -589, -589, -589, 460, 269, - -589, -589, -589, -589, -589, -589, 37, 37, 37, -589, - 384, -589, -589, -589, -589, -589, -589, -589, 65, 65, - -589, 389, -589, -589, -589, 1141, 860, 452, 489, -589, - 269, 65, -589, -589, 41, 63, 398, 400, 403, 65, - 405, -589, -589, -589, -589, -589, -589, -589, -589, -589, - 397, 406, 269, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, -589, 407, -589, 409, 423, 424, 425, - 426, -589, 269, -589, -589, -589, -589, -589, 427, 430, - 516, 253, 253, -589, -589, -589, -589, -589, -589, -589, - -589, 439, 65, 416, 70, 70, 70, 444, -589, 445, - 448, 449, 450, 451, 453, -589, -589, -589, 455, 456, - 457, 458, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, 36, 36, 330, 65, 459, 464, 462, -589, - 477, 473, 474, 476, 475, 215, 1243, 37, -589, -589, - -589, -589, -589, -589, 541, -589, -589, -589, -589, -589, - -589, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, 461, 461, -589, -589, -589, -589, 489, - 65, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, -589, 37, -589, -589, -589, -589, 480, - 269, -589, 461, 481, 482, 513, -589, -589, -589, -589, - -589, 465, 428, 37, 269, 484, 399, -589, 471, -589, - -589, -589, 472, 533, 537, 537, 65, 522, 486, -589, - -589, 269, 490, -589, -589, 498, -589, 537, 168, -589, - -589, 499, -589, -589, -589, -589, -589, -589, -589, -589, - 521, 578, 500, 264, 537, -589, -589, -589, -589, -589, - -589, -589, -589, 489, -589, 493, 483, 537, 502, 546, - 65, 37, -589, -589, 519, -589, -589, -589, -589, -589, - 506, -589, -589, -589, 525, 36, 526, 524, 35, 312, - 192, -589, -589, -589, -589, -589, -589, -589, -589, 269, - -589, 530, -589, 538, 489, 574, -589, -589, -589, -589, - -589, -589, -589, -589, 65, 533, 37, 37, 515, 65, - 578, -589, -589, -589, -589, 535, 65, 539, -589, -589, - 512, 527, -589, -589, -589, 264, 65, 529, -589, -589, - -589, -589, -589, 37, -589, -589, -589, 536, 554, -589, - -589, 540, 542, -589, -589, 558, -589 + -597, 49, 56, -597, 187, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, 77, 193, 62, -597, -597, + -597, -597, 42, 42, -597, -597, 42, -597, -597, 29, + -597, 308, 17, 44, -597, -597, 2, -597, -597, -597, + -597, -597, -597, 564, -597, -597, -597, -597, -597, -597, + -597, 78, -597, 181, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, 98, -597, -597, -597, 98, -597, -597, 100, + 132, 923, 42, -597, 598, -597, -597, -597, -597, -597, + 47, -597, 104, -597, 114, -597, 115, -597, -597, 98, + -597, 145, 225, -597, -597, -597, -2, -597, 99, -597, + -597, 9, -597, 232, 235, 776, -597, -597, -597, 238, + 278, -597, 240, 247, 250, 171, -597, 236, -597, -597, + -597, -597, -597, -597, 245, -597, -597, -597, -597, -597, + -597, 258, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, 181, + -597, -597, -597, 149, -597, -597, 251, -597, 253, 262, + 263, 257, -597, 270, 273, 274, 276, 271, 277, 283, + 285, -597, -597, -597, 287, 288, -597, -597, -597, -597, + 258, -597, -597, -597, -597, -597, -597, -597, -597, -597, + 258, -597, -597, -597, -597, -597, -597, -597, -597, -597, + 290, -597, 291, -597, -597, 292, -597, 376, -597, -597, + -597, 52, 58, 342, -597, -597, 923, -597, -597, -597, + -597, 295, -597, -597, -597, -597, 378, -597, -597, 220, + 296, -597, -597, -597, -597, -597, -597, -597, -597, 377, + -597, 402, 299, 344, -597, -597, -597, -597, -597, -597, + -597, 289, -597, -597, -597, -597, -597, -597, -597, -597, + -597, 344, 310, 313, -597, -597, -597, -597, -597, 315, + 317, -597, -597, -597, 316, -597, 376, -597, -597, 318, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + 451, 451, 451, 402, 258, -597, 312, 314, 328, 165, + 167, 116, -597, -597, -597, 306, -597, -597, -597, -597, + 409, -597, 324, 336, -597, -597, -597, -597, 42, -597, + -597, -597, -597, 337, -597, 42, -597, 402, 402, 402, + -597, -597, -597, -597, -597, -597, -597, 222, -597, 325, + -597, -597, -597, -597, -597, -597, -597, -597, 42, 344, + -597, -597, -597, 343, 292, 402, -597, -597, -597, 329, + 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, + -597, 340, -597, -597, 345, -597, -597, 346, -597, -597, + 258, 1047, 801, 402, 650, -597, -597, -597, -597, -597, + -597, 130, 548, 890, 965, -597, -597, -597, -597, 38, + 379, 42, 42, -597, -597, -597, -597, -597, 38, -597, + 348, -597, 341, 335, 350, -597, -597, 1082, 258, -597, + 42, 344, -597, -597, -597, -597, 314, 328, 165, 167, + 167, 116, 116, -597, -597, -597, 452, 187, 368, 454, + 371, 776, -597, -597, 367, -597, -597, -597, 380, -597, + -597, -597, -597, -597, -597, 702, -597, -597, -597, -597, + -597, 381, -597, -597, -597, 384, 374, -597, 398, 399, + 400, 383, 403, -597, 260, -597, 459, 258, -597, -597, + -597, -597, -597, -597, 42, 42, 42, -597, 404, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, 405, + -597, -597, -597, 1164, 883, 466, 841, -597, 258, 376, + -597, -597, 51, 92, 412, 415, 416, 376, 417, -597, + -597, -597, -597, -597, -597, 60, -597, -597, 418, 419, + 258, -597, 202, 318, -597, 420, -597, -597, -597, -597, + 220, -597, 423, -597, 424, 425, 426, 428, 429, -597, + 258, -597, -597, -597, -597, -597, 430, 431, -597, 130, + 130, -597, -597, -597, -597, -597, -597, -597, -597, 432, + -597, 433, 96, 96, 96, 434, -597, 435, 436, 437, + 447, 448, 453, -597, -597, -597, 455, 456, 450, 457, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + 402, 402, 335, -597, -597, 458, 427, 460, -597, 474, + -597, -597, -597, -597, -597, 1213, -597, 42, -597, -597, + -597, -597, -597, -597, -597, -597, -597, 61, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -597, 440, 440, -597, -597, -597, -597, 841, + -597, -597, -597, -597, -597, -597, -597, -597, -597, 461, + 463, 464, 465, 202, 42, -597, -597, -597, -597, 469, + 258, 63, -597, -597, 473, 509, -597, -597, -597, -597, + -597, 445, -597, 42, -597, -597, -597, -597, -597, 258, + 477, 478, -597, -597, 440, 500, -597, 487, 559, 557, + 557, -597, 541, 505, -597, -597, 258, 510, -597, 64, + 495, -597, -597, 184, -597, -597, 496, -597, -597, -597, + -597, -597, -597, -597, -597, 543, 600, -597, 516, -597, + 557, -597, -597, -597, -597, -597, -597, -597, 841, -597, + 512, 522, 557, 523, 565, -597, 42, -597, -597, 538, + -597, 526, 189, 557, -597, 545, 402, 542, 544, 93, + -597, 73, -597, -597, -597, -597, -597, -597, -597, -597, + 258, -597, 550, -597, -597, -597, -597, 531, -597, -597, + -597, -597, -597, -597, -597, -597, 260, 97, -597, 559, + 42, 42, 533, -597, 600, -597, 554, 841, 601, 556, + -597, -597, -597, -597, -597, 547, 552, -597, -597, -597, + -597, -597, -597, -597, -597, -597, 562, -597, -597, 42, + 189, -597, 551, -597, -597, 566, -597, -597, -597, -597, + 597, -597, 569, 585, -597, -597, 603, -597 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -921,176 +928,179 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 4, 0, 0, 1, 35, 140, 37, 67, 190, 251, - 267, 302, 350, 0, 0, 0, 0, 91, 0, 0, - 461, 0, 0, 531, 552, 3, 5, 39, 21, 58, - 0, 0, 19, 61, 74, 63, 23, 75, 80, 76, - 81, 74, 77, 78, 62, 15, 9, 196, 253, 192, - 301, 193, 219, 220, 194, 17, 11, 13, 25, 421, - 420, 423, 27, 459, 29, 491, 493, 492, 490, 74, - 509, 510, 489, 74, 31, 33, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 136, 231, 195, 74, - 0, 74, 85, 74, 0, 79, 74, 0, 427, 502, - 0, 132, 0, 131, 0, 0, 0, 43, 0, 0, - 0, 0, 6, 7, 0, 94, 69, 0, 0, 0, - 235, 237, 0, 241, 242, 245, 246, 247, 248, 244, - 249, 250, 316, 324, 329, 89, 203, 99, 199, 201, - 202, 200, 204, 233, 234, 205, 209, 206, 208, 207, - 210, 211, 253, 216, 0, 217, 218, 212, 0, 215, - 213, 323, 214, 328, 0, 0, 0, 269, 0, 0, - 0, 0, 0, 0, 0, 0, 503, 496, 505, 0, - 0, 555, 551, 36, 244, 153, 141, 145, 149, 150, - 146, 147, 148, 151, 152, 38, 68, 191, 197, 252, - 268, 303, 351, 70, 500, 71, 0, 501, 92, 432, - 462, 0, 418, 134, 419, 532, 553, 40, 22, 0, - 516, 512, 513, 518, 515, 519, 517, 514, 511, 0, - 45, 524, 179, 180, 181, 183, 186, 185, 187, 188, - 184, 182, 0, 0, 0, 0, 176, 550, 154, 155, - 156, 158, 160, 162, 165, 168, 172, 177, 0, 549, - 20, 93, 72, 64, 24, 82, 236, 243, 238, 240, - 0, 0, 96, 315, 312, 320, 325, 16, 10, 254, - 0, 18, 12, 14, 26, 424, 28, 473, 460, 30, - 96, 0, 0, 32, 34, 559, 0, 0, 0, 0, - 86, 430, 428, 470, 133, 0, 0, 432, 4, 520, - 0, 525, 0, 521, 173, 174, 175, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 59, 547, - 0, 110, 101, 239, 189, 0, 317, 0, 90, 0, - 0, 0, 260, 270, 434, 477, 504, 497, 506, 556, - 142, 231, 198, 224, 225, 226, 232, 304, 352, 110, - 0, 96, 468, 463, 135, 533, 554, 0, 41, 0, - 46, 522, 178, 157, 159, 161, 163, 164, 166, 167, - 169, 170, 171, 0, 0, 73, 130, 0, 0, 0, - 0, 95, 313, 321, 326, 255, 259, 0, 0, 425, - 0, 110, 101, 340, 345, 0, 455, 0, 0, 564, - 338, 339, 560, 562, 0, 566, 0, 558, 0, 0, - 221, 0, 259, 0, 431, 429, 0, 96, 0, 3, - 0, 0, 0, 0, 60, 548, 127, 125, 360, 361, - 0, 109, 117, 111, 121, 119, 123, 0, 113, 115, - 365, 107, 105, 0, 100, 102, 103, 0, 0, 318, - 0, 0, 0, 0, 260, 265, 262, 261, 235, 281, - 276, 277, 278, 279, 271, 280, 0, 0, 0, 445, - 0, 433, 435, 437, 439, 441, 443, 447, 0, 0, - 478, 0, 476, 479, 481, 0, 0, 0, 0, 451, - 450, 0, 454, 453, 0, 0, 0, 0, 0, 0, - 0, 557, 143, 335, 331, 334, 222, 311, 305, 310, - 260, 0, 469, 464, 543, 539, 541, 534, 538, 42, - 526, 47, 523, 128, 0, 66, 0, 0, 0, 0, - 0, 364, 394, 391, 392, 393, 355, 363, 0, 0, - 0, 0, 0, 84, 104, 319, 314, 322, 327, 256, - 258, 0, 0, 0, 0, 0, 0, 0, 426, 0, - 0, 0, 0, 0, 0, 483, 486, 475, 0, 0, - 0, 0, 341, 346, 449, 545, 546, 565, 561, 563, - 452, 567, 0, 0, 332, 0, 0, 307, 0, 88, - 0, 0, 0, 0, 0, 536, 0, 0, 126, 118, - 112, 122, 120, 124, 0, 114, 116, 366, 108, 106, - 266, 263, 272, 458, 456, 457, 446, 436, 438, 440, - 442, 444, 448, 0, 0, 480, 482, 499, 508, 0, - 0, 144, 336, 333, 223, 306, 308, 354, 465, 544, - 540, 542, 535, 537, 0, 53, 39, 48, 52, 0, - 129, 356, 0, 0, 0, 369, 484, 487, 342, 347, - 230, 0, 0, 0, 55, 0, 0, 54, 0, 367, - 264, 273, 0, 0, 401, 401, 0, 405, 227, 337, - 309, 466, 0, 49, 51, 382, 357, 401, 0, 370, - 377, 0, 376, 398, 485, 488, 343, 402, 348, 228, - 472, 0, 0, 0, 401, 368, 288, 295, 293, 274, - 284, 285, 292, 0, 372, 373, 0, 401, 0, 409, - 0, 0, 467, 530, 0, 529, 381, 395, 396, 397, - 0, 387, 388, 358, 0, 0, 0, 0, 0, 0, - 290, 378, 374, 399, 344, 403, 406, 349, 229, 471, - 56, 527, 383, 384, 0, 413, 289, 296, 294, 275, - 283, 298, 286, 291, 0, 0, 0, 0, 0, 0, - 0, 385, 389, 410, 359, 0, 0, 0, 379, 375, - 0, 0, 407, 57, 528, 0, 0, 0, 297, 299, - 287, 400, 404, 0, 386, 390, 411, 0, 0, 408, - 417, 0, 414, 412, 415, 0, 416 + 4, 0, 192, 1, 0, 35, 141, 37, 67, 201, + 262, 278, 313, 361, 192, 0, 0, 0, 91, 192, + 192, 472, 0, 0, 542, 563, 0, 3, 5, 39, + 21, 58, 0, 0, 19, 61, 74, 63, 23, 75, + 80, 76, 81, 74, 77, 78, 62, 15, 191, 9, + 207, 264, 203, 312, 204, 230, 231, 205, 17, 11, + 13, 25, 432, 431, 434, 27, 470, 29, 502, 504, + 503, 501, 74, 520, 521, 500, 74, 31, 33, 0, + 0, 0, 0, 192, 0, 192, 192, 192, 192, 242, + 0, 206, 74, 192, 74, 85, 74, 192, 79, 74, + 192, 438, 513, 192, 136, 132, 0, 131, 0, 192, + 192, 194, 43, 0, 0, 0, 192, 6, 7, 0, + 94, 69, 0, 0, 0, 246, 248, 0, 252, 253, + 256, 257, 258, 259, 255, 260, 261, 327, 335, 340, + 89, 214, 99, 210, 212, 213, 211, 215, 244, 245, + 216, 220, 217, 219, 218, 221, 222, 264, 227, 0, + 228, 229, 223, 0, 226, 224, 334, 225, 339, 0, + 0, 0, 280, 0, 0, 0, 0, 0, 0, 0, + 0, 514, 507, 516, 0, 0, 566, 562, 36, 255, + 154, 142, 146, 150, 151, 147, 148, 149, 152, 153, + 38, 68, 202, 208, 263, 279, 314, 362, 137, 70, + 511, 71, 0, 512, 92, 443, 473, 0, 429, 134, + 430, 0, 0, 0, 40, 22, 0, 527, 523, 524, + 529, 526, 530, 528, 525, 522, 0, 45, 535, 0, + 0, 20, 93, 72, 64, 24, 82, 247, 254, 249, + 251, 0, 0, 96, 326, 323, 331, 336, 16, 10, + 265, 0, 18, 12, 14, 26, 435, 28, 484, 471, + 30, 96, 0, 0, 32, 34, 570, 192, 192, 0, + 0, 86, 441, 439, 481, 133, 0, 543, 564, 136, + 180, 181, 182, 184, 187, 186, 188, 189, 185, 183, + 0, 0, 0, 0, 177, 195, 156, 157, 159, 161, + 163, 166, 169, 173, 178, 0, 196, 199, 4, 531, + 0, 536, 0, 532, 561, 155, 560, 59, 0, 110, + 101, 250, 190, 0, 328, 0, 90, 0, 0, 0, + 271, 281, 445, 488, 515, 508, 517, 567, 143, 242, + 209, 235, 236, 237, 243, 315, 363, 110, 0, 96, + 479, 474, 135, 0, 443, 0, 174, 175, 176, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 193, 197, 192, 41, 0, 46, 533, 558, 192, 73, + 130, 0, 0, 0, 0, 95, 324, 332, 337, 266, + 270, 0, 0, 436, 0, 110, 101, 351, 356, 0, + 466, 0, 0, 575, 349, 350, 571, 573, 0, 577, + 0, 569, 0, 0, 232, 192, 270, 0, 442, 440, + 0, 96, 544, 565, 200, 179, 158, 160, 162, 164, + 165, 167, 168, 170, 171, 172, 0, 0, 0, 0, + 0, 0, 192, 60, 127, 125, 371, 372, 0, 109, + 117, 111, 121, 119, 123, 0, 113, 115, 376, 107, + 105, 0, 100, 102, 103, 0, 0, 329, 0, 0, + 0, 0, 271, 276, 0, 272, 246, 292, 287, 288, + 289, 290, 282, 291, 0, 0, 0, 456, 0, 444, + 446, 448, 450, 452, 454, 458, 192, 192, 489, 0, + 487, 490, 492, 0, 0, 0, 0, 462, 461, 0, + 465, 464, 0, 0, 0, 0, 0, 0, 0, 568, + 144, 346, 342, 345, 233, 0, 316, 321, 271, 0, + 480, 475, 0, 0, 198, 3, 42, 537, 47, 534, + 0, 128, 0, 66, 0, 0, 0, 0, 0, 375, + 405, 402, 403, 404, 366, 374, 0, 0, 192, 0, + 0, 84, 104, 330, 325, 333, 338, 267, 269, 0, + 273, 0, 0, 0, 0, 0, 437, 0, 0, 0, + 0, 0, 0, 494, 497, 486, 0, 0, 0, 0, + 352, 357, 460, 556, 557, 576, 572, 574, 463, 578, + 0, 0, 343, 192, 322, 0, 318, 0, 88, 0, + 554, 550, 552, 545, 549, 0, 559, 0, 126, 118, + 112, 122, 120, 124, 192, 114, 116, 0, 108, 106, + 277, 192, 283, 469, 467, 468, 457, 447, 449, 451, + 453, 455, 459, 0, 0, 491, 493, 510, 519, 0, + 192, 145, 347, 344, 234, 317, 319, 365, 476, 0, + 0, 0, 0, 547, 0, 53, 39, 48, 52, 0, + 129, 0, 377, 274, 0, 380, 495, 498, 353, 358, + 241, 0, 192, 0, 555, 551, 553, 546, 548, 55, + 0, 192, 54, 367, 0, 0, 284, 0, 0, 412, + 412, 192, 416, 238, 348, 320, 477, 0, 49, 0, + 0, 378, 275, 0, 381, 388, 0, 387, 409, 496, + 499, 354, 413, 359, 239, 483, 0, 51, 393, 368, + 412, 299, 306, 304, 285, 295, 296, 303, 0, 383, + 384, 0, 412, 0, 420, 192, 0, 478, 541, 0, + 540, 0, 0, 412, 379, 0, 0, 0, 0, 0, + 192, 301, 389, 385, 410, 355, 414, 417, 360, 240, + 482, 56, 538, 392, 406, 407, 408, 0, 398, 399, + 369, 300, 307, 305, 286, 294, 0, 0, 192, 0, + 0, 0, 0, 192, 0, 394, 395, 0, 424, 0, + 309, 297, 302, 390, 386, 0, 0, 418, 57, 539, + 396, 400, 421, 370, 308, 192, 0, 411, 415, 0, + 0, 192, 0, 310, 298, 0, 397, 401, 422, 419, + 0, 428, 0, 425, 423, 426, 0, 427 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -589, -589, 334, 278, -589, -569, -589, -589, -589, -589, - -589, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -528, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, -589, -589, -39, -589, -589, -589, -589, - -589, -589, -589, -589, -589, -589, -589, 276, -589, -589, - 68, -589, -589, -589, 623, -589, -589, -589, -589, -589, - -589, -589, 626, -589, 280, -589, -589, -255, -589, -589, - 244, -589, -589, -589, -589, -316, -350, -589, -589, -589, - -589, -589, -589, -589, -589, -323, -589, -589, -19, -589, - -589, -13, -589, 8, -589, -589, -589, -589, 429, 55, - -102, -589, 332, 341, 343, -9, -7, -22, 66, -589, - -307, 13, -589, -589, -589, -33, 281, -416, -589, -589, - -589, 89, -589, -589, -567, -21, -589, -589, -12, -589, - -55, -589, -589, -57, -48, -54, -53, -52, -589, -589, - -30, -589, -28, -589, -589, -589, -589, 236, 319, -589, - -212, -589, -589, -589, -25, -589, -23, -589, -589, -589, - -589, -589, -589, -589, -589, -589, -84, -589, -589, -589, - -589, -589, -83, -589, -589, -589, -589, -589, -589, -589, - -34, -589, -589, -589, -589, -589, -589, -589, -6, -589, - -589, -589, -589, -589, -589, -589, -74, -589, -589, -589, - -66, -589, -589, -589, -589, -589, -589, -589, 75, -589, - -589, -320, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, 15, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, -589, -589, -589, -589, -589, -588, -589, - -589, -589, -589, -589, -107, -589, -589, -589, -589, -589, - -589, -589, -589, -125, -589, -589, -471, -589, -496, -589, - -589, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, 17, 18, -589, -589, -589, -589, -589, - -589, -589, -589, -589, 365, -589, -589, -589, -589, -589, - -589, -589, -589, -589, -589, -300, 273, -294, -589, -589, - -589, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589, -589, -589, -589, -589, -589, -589, -589, 602, - -589, -589, -589, -589, -589, -589, -589, -589, -589, -589, - 243, -589, -589, -103, -589, -589, -589, -589, -589, -589, - -589, 73, -589, -589, -589, 283, -589, -589, 295, -589, - -589, -589, -589, -589, -589, -589, -589, -589, -589, -589, - -589, -589 + -597, -597, 362, 237, -597, -582, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -558, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -34, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, 244, -597, -597, + 162, -597, -597, -597, 666, -597, -597, -597, -597, -597, + -597, -597, 670, -597, 272, -597, -597, -235, -597, -597, + 281, -597, -597, -597, -597, -276, -352, -597, -597, -597, + -597, -597, -597, -597, -597, -316, -597, -597, -22, -597, + -597, -189, -11, -597, 13, -597, -597, -597, -597, 462, + 79, -207, -597, 320, 322, 319, -65, -73, -24, 66, + -597, -304, 0, -597, -597, -597, -597, 248, 14, -597, + -597, -597, -71, 301, -438, -597, -597, -597, 55, -597, + -597, -576, -14, -597, -597, -3, -597, -56, -597, -597, + -43, -42, -55, -51, -50, -597, -597, -37, -597, -36, + -597, -597, -597, -597, 280, 358, -597, -254, -597, -597, + -597, -33, -597, -31, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -70, -597, -597, -597, -597, -597, -95, + -597, -597, -597, -597, -597, -597, -597, -38, -597, -597, + -597, -597, -597, -597, -597, 11, -597, -597, -597, -597, + -597, -597, -597, -67, -597, -597, -597, -66, -597, -597, + -597, -597, -597, -597, -597, 95, -597, -597, -323, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, 16, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -596, -597, -597, -597, -597, + -597, -90, -597, -597, -597, -597, -597, -597, -597, -597, + -126, -597, -597, -487, -597, -543, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + 18, 19, -597, -597, -597, -597, -597, -597, -597, -597, + -597, 359, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -305, 304, -303, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, 648, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, 279, -597, -597, + -75, -597, -597, -597, -597, -597, -597, -597, 69, -597, + -597, -597, 347, -597, -597, 195, -597, -597, -597, -597, + -597, -597, -597, -597, -597, -597, -597, -597, -597 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 1, 2, 25, 368, 26, 165, 169, 170, 164, - 168, 114, 109, 118, 171, 173, 175, 179, 180, 77, - 27, 79, 28, 108, 308, 430, 29, 30, 110, 312, - 432, 606, 675, 657, 676, 658, 659, 692, 779, 31, - 111, 383, 32, 33, 117, 331, 440, 34, 80, 35, - 135, 330, 36, 37, 38, 119, 332, 453, 39, 206, - 359, 521, 40, 272, 41, 97, 262, 338, 42, 43, - 388, 454, 455, 552, 551, 387, 441, 537, 548, 549, - 536, 539, 538, 540, 534, 385, 436, 607, 246, 211, - 305, 103, 44, 442, 78, 296, 418, 592, 186, 247, - 334, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 335, 443, 81, 197, 297, 466, 138, 139, 140, 141, - 47, 352, 420, 595, 353, 669, 688, 730, 354, 355, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 48, 82, 49, 166, 342, 463, 395, 464, 560, 397, - 467, 562, 663, 561, 50, 83, 51, 280, 398, 563, - 664, 698, 747, 474, 719, 748, 720, 749, 787, 744, - 721, 750, 722, 746, 745, 785, 772, 786, 52, 53, - 54, 84, 298, 421, 596, 518, 597, 672, 519, 157, - 339, 460, 158, 271, 390, 159, 160, 340, 461, 161, - 162, 341, 462, 163, 356, 419, 514, 594, 515, 593, - 671, 444, 410, 497, 639, 686, 727, 411, 498, 640, - 687, 729, 445, 85, 299, 422, 598, 446, 614, 678, - 714, 765, 447, 546, 457, 550, 662, 697, 666, 682, - 683, 701, 725, 775, 702, 723, 774, 696, 712, 713, - 740, 763, 795, 741, 764, 796, 547, 742, 704, 726, - 776, 708, 728, 777, 757, 778, 803, 784, 797, 808, - 811, 812, 815, 448, 449, 58, 59, 60, 172, 344, - 480, 61, 209, 361, 302, 360, 399, 481, 569, 570, - 571, 572, 573, 567, 574, 525, 501, 526, 414, 503, - 484, 485, 486, 62, 174, 63, 100, 303, 427, 600, - 673, 710, 363, 426, 732, 288, 345, 491, 400, 492, - 578, 579, 493, 633, 684, 494, 634, 685, 64, 65, - 66, 67, 68, 291, 401, 580, 69, 70, 71, 177, - 290, 72, 292, 402, 581, 73, 229, 230, 313, 433, - 231, 734, 761, 735, 74, 105, 306, 428, 604, 527, - 605, 528, 602, 603, 601, 415, 258, 329, 259, 75, - 76, 106, 307, 182, 295, 416, 349, 417, 507, 508, - 506, 510 + -1, 1, 2, 27, 383, 28, 170, 174, 175, 169, + 173, 119, 114, 123, 176, 178, 180, 184, 185, 80, + 29, 82, 30, 113, 318, 448, 31, 32, 115, 322, + 450, 625, 700, 677, 701, 678, 679, 717, 803, 33, + 116, 388, 34, 35, 122, 329, 458, 36, 83, 37, + 140, 328, 38, 39, 40, 124, 330, 471, 41, 212, + 357, 539, 42, 253, 43, 100, 243, 336, 44, 45, + 392, 472, 473, 570, 569, 391, 459, 555, 566, 567, + 554, 557, 556, 558, 552, 389, 454, 627, 304, 217, + 286, 107, 349, 46, 460, 81, 277, 422, 610, 191, + 324, 332, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 333, 90, 48, 315, 316, 381, 317, 461, 84, + 202, 278, 142, 143, 144, 145, 146, 50, 350, 424, + 613, 351, 689, 713, 755, 352, 353, 147, 148, 149, + 150, 151, 152, 153, 154, 155, 156, 51, 85, 52, + 171, 340, 481, 399, 482, 578, 401, 485, 641, 705, + 579, 53, 86, 54, 261, 402, 581, 684, 723, 768, + 492, 744, 769, 745, 770, 826, 765, 746, 771, 747, + 767, 766, 809, 811, 825, 55, 56, 57, 87, 279, + 425, 615, 536, 616, 692, 537, 162, 337, 478, 163, + 252, 394, 164, 165, 338, 479, 166, 167, 339, 480, + 168, 354, 423, 532, 612, 533, 611, 691, 462, 414, + 515, 659, 711, 752, 415, 516, 660, 712, 754, 463, + 88, 280, 426, 617, 464, 634, 720, 763, 808, 465, + 564, 475, 568, 704, 740, 686, 707, 708, 726, 750, + 799, 727, 748, 798, 739, 761, 762, 787, 806, 830, + 788, 807, 831, 565, 789, 729, 751, 800, 733, 753, + 801, 778, 802, 829, 823, 832, 840, 842, 843, 846, + 466, 467, 61, 62, 63, 177, 342, 498, 64, 215, + 359, 283, 358, 403, 499, 587, 588, 589, 590, 591, + 585, 592, 621, 519, 622, 418, 521, 502, 503, 504, + 65, 179, 66, 103, 284, 431, 619, 693, 735, 361, + 430, 757, 269, 343, 509, 404, 510, 596, 597, 511, + 653, 709, 512, 654, 710, 67, 68, 69, 70, 71, + 272, 405, 598, 72, 73, 74, 182, 271, 75, 273, + 406, 599, 76, 236, 237, 323, 451, 238, 759, 782, + 760, 77, 109, 363, 542, 672, 623, 673, 624, 670, + 671, 669, 419, 240, 387, 326, 78, 79, 110, 364, + 187, 276, 420, 347, 421, 525, 526, 524, 528 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1098,439 +1108,433 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 87, 88, 102, 104, 193, 98, 99, 156, 137, 248, - 45, 152, 194, 153, 391, 46, 154, 55, 155, 56, - 57, 188, 136, 187, 190, 191, 192, 583, 644, 409, - 189, 543, 392, 393, 394, 346, 716, 655, 456, 86, - 86, 86, 266, 423, 585, 267, 667, 156, 198, 412, - 490, 152, 3, 153, 86, 413, 154, 499, 155, 185, - 195, 17, 136, 717, 718, 94, 586, 196, 86, 199, - 200, 201, 202, 86, 679, 268, 269, 204, 656, 479, - 212, 207, 543, 86, 208, 495, 213, 210, 468, 121, - 122, 214, 7, 125, 126, 127, 128, 213, 107, 482, - 323, 324, 116, 11, 167, 483, 425, 655, 524, 232, - 233, 234, 235, 236, 237, 238, 239, 101, 101, 101, - 240, 241, 213, -282, 232, 233, 234, 235, 236, 237, - 238, 239, 101, 242, 243, 240, 241, 176, 244, 245, - 112, 176, -137, 317, 213, 193, 456, 115, 656, 115, - -138, 213, 7, 194, 245, 115, 181, 203, -139, 205, - 113, 101, 188, 115, 187, 190, 191, 192, 668, 716, - 86, 189, 523, 321, 322, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 9, 10, 705, - 11, 132, 133, 134, -300, 17, 717, 718, 304, 90, - 185, 715, 183, 86, 325, 326, 327, 788, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 184, 743, 799, - 717, 718, -97, 543, -422, 133, 134, 115, 86, 805, - 273, 754, 274, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 403, 404, -494, 101, 132, - 133, 134, 751, -98, 465, 215, 86, 216, 115, 403, - 404, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 9, 10, 405, 11, 132, 133, 134, - 406, 101, 248, 350, 351, 524, 642, 458, 217, 405, - 89, 91, 364, 782, 406, 93, 96, 407, 408, 737, - 738, 739, 218, 380, 381, 382, 101, 543, 314, 315, - 316, 386, 376, 377, 260, 86, 378, 379, 386, 261, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 9, 10, 101, 11, 132, 133, 134, 618, - 619, 424, 263, 470, 471, 472, 473, 264, 543, 265, - 213, 301, 270, 277, 275, 276, 278, 310, 311, 279, - 281, 282, 333, 156, 475, 283, 336, 152, 284, 153, - 434, 136, 154, 544, 155, 45, 285, 286, 136, 469, - 46, 545, 55, 287, 56, 57, 500, 289, 504, 505, - 293, 294, -495, 101, 300, 500, 318, 337, 319, 328, - 4, 343, 347, 5, 6, 7, 8, 522, 348, 320, - 357, 358, 365, 362, 369, 372, 370, 431, 502, 9, - 10, 371, 11, 384, 544, 389, 12, 511, 542, 512, - 516, 517, 545, -330, -8, 513, 529, 530, 531, 13, - 14, 15, 16, 403, 404, 533, 535, 553, 17, 18, - 554, 555, 19, 790, 791, 20, 556, 564, 565, 566, - 557, 558, 21, 22, 476, 477, 559, -257, 266, 23, - 24, 654, 568, 405, 478, 575, 576, 577, 406, 542, - 807, 407, 408, 582, 587, -353, 588, -50, 584, 589, - 248, 591, 86, 608, 599, 609, 590, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 184, 130, 131, 610, - 611, 612, 613, 615, 133, 134, 616, 156, 156, 617, - 622, 152, 152, 153, 153, 620, 154, 154, 155, 155, - 626, 627, 136, 136, 628, 629, 630, 631, -44, 632, - -44, 635, 636, 648, 661, 637, 638, 645, -371, 351, - 647, 623, 624, 625, -44, -44, 646, -44, -44, 649, - 650, -44, 651, 652, 665, 544, 677, 680, 700, 681, - 101, 689, 693, 545, 695, 703, 699, 707, 709, 711, - 731, 733, 351, -44, 86, 752, 753, -44, 660, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 184, 130, - 131, -44, -380, 724, 736, 755, 133, 134, 756, 760, - 762, 766, 769, 783, 45, 541, 801, 768, 792, 46, - 542, 55, 780, 56, 57, 800, 798, 87, 670, 810, - 781, 802, 806, 816, 814, 674, 219, 694, 220, 95, - 809, 92, 367, 767, 813, 429, 496, 641, 309, 544, - 373, 621, 221, 222, 691, 223, 224, 545, 520, 225, - 374, 396, 101, 375, 770, 706, 690, 773, 789, 643, - 804, 459, 366, 87, 670, 178, 532, 794, 653, 435, - 0, 226, 487, 0, 45, 227, 0, 509, 0, 46, - 544, 55, 0, 56, 57, 0, 0, 0, 545, 228, - 0, 0, 0, 0, 542, 0, 0, 0, 0, 0, - 0, 0, 759, 0, 0, 156, 771, 87, 758, 152, - 0, 153, 0, 0, 154, 0, 155, 0, 0, 0, - 136, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 542, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 386, 386, 0, - 0, 351, 0, 0, 0, 0, 793, 0, 0, 0, - 0, 0, 0, 351, 0, 0, 0, 0, 0, 437, - 0, -362, 5, 351, 386, 8, -362, -362, -362, -362, - -362, -362, -362, -362, -362, -362, -362, -362, 9, 10, - 0, 11, 0, -362, -362, 12, 0, 0, 403, 404, - 438, 439, -362, 0, 0, 0, 0, 0, 13, 0, - 0, 0, 450, 451, 452, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 21, 22, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, -362, - 0, 437, 0, -362, 5, 0, -83, 8, -362, -362, - -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, - 9, 10, 0, 11, 0, -362, -362, 12, 0, 0, - 403, 404, 438, 439, -362, 0, 0, 0, 0, 0, - 13, 0, 0, 0, 450, 451, 452, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 21, 22, 0, 0, 0, 0, 0, + 106, 108, 4, 89, 111, 161, 157, 158, 101, 102, + 159, 91, 160, 203, 198, 199, 305, 47, 49, 395, + 58, 141, 59, 60, 413, 192, 195, 561, 285, 601, + 196, 197, 325, 396, 397, 398, 344, 664, 193, 194, + 474, 104, 416, 675, 417, 104, 161, 157, 158, 3, + 208, 159, 508, 160, 603, 287, -2, 517, 687, 190, + 200, 288, 141, 614, 682, 5, 703, 676, 6, 7, + 8, 9, 201, 218, 204, 205, 206, 207, 561, 219, + 497, 427, 210, 8, 10, 11, 213, 12, -138, 214, + 219, 13, 216, 120, 741, 604, 369, 362, 500, 104, + 501, -192, -192, 117, 14, 15, 16, 17, 721, 221, + 222, 18, 223, 18, 19, 97, 239, 20, 112, 105, + 21, 742, 743, 105, 429, 742, 743, 22, 23, 513, + 118, 483, 219, -192, 24, 25, 674, 675, -192, -192, + -192, -192, -192, -192, -192, -192, -192, -192, -192, -192, + -192, -192, 26, -192, -192, -192, -192, 26, 434, 198, + 199, 676, 474, 26, -311, 26, 26, 730, 26, 26, + 192, 195, 688, 219, 220, 196, 197, 219, -192, 247, + 219, -293, 248, 193, 194, 741, 476, 186, 5, 120, + -139, 6, 7, 8, 9, 120, 541, 764, 121, 8, + -140, -97, 26, 172, 190, 120, 120, 10, 11, 775, + 12, -192, 742, 743, 13, 377, 378, 379, 188, 620, + 790, 561, 813, 104, 784, 785, 786, 14, 15, 16, + 17, -433, 407, 408, 181, -192, 18, 19, 181, 254, + 20, 255, 18, 21, 249, 250, 93, 373, 374, 833, + 22, 23, 407, 408, 209, 837, 211, 24, 25, 92, + 94, 772, 409, 104, 375, 376, 348, 410, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 10, 11, 409, 12, 137, 138, 139, 410, 96, 99, + 411, 412, 26, 290, 291, 292, 293, 294, 295, 296, + 297, 105, 441, 442, 298, 299, 390, 662, 439, 440, + 561, -505, -44, 390, -44, 638, 639, 300, 301, 224, + 821, 225, 302, 303, 241, 26, 242, 244, -44, -44, + 602, -44, -44, 245, 251, -44, 428, 246, 608, 219, + 256, 105, 257, 325, 260, 289, 488, 489, 258, 259, + 620, 490, 491, 443, 444, 445, 262, -44, 266, 263, + 264, -44, 265, 267, 493, 26, 366, 367, 368, 561, + 268, 270, 141, 274, 275, -44, -506, 453, 281, 104, + 487, 321, 447, 282, 320, 331, 327, 518, 334, 522, + 523, 335, 341, 643, 644, 645, 518, 345, 562, 563, + 346, 484, 355, 325, 356, 104, 370, 360, 540, 371, + 380, 365, 384, 580, 385, 290, 291, 292, 293, 294, + 295, 296, 297, 105, 372, 535, 298, 299, 386, 393, + 432, -341, 446, 435, 530, 449, 529, 520, 452, 300, + 301, 531, 534, 560, 302, 303, 161, 157, 158, 562, + 563, 159, 550, 160, 104, 543, 546, 547, 548, 551, + 47, 49, 141, 58, 573, 59, 60, 247, 553, 571, + 572, 577, 582, 583, 584, 290, 291, 292, 293, 294, + 295, 296, 297, 105, 815, 816, 298, 299, 574, 575, + 576, -268, 586, 595, 560, 593, 594, 600, 605, 300, + 301, 606, 607, 609, 302, 303, -364, 618, -8, 628, + 629, 630, 631, 835, 632, 633, 635, 636, 640, 666, + 646, 647, 648, 649, 290, 291, 292, 293, 294, 295, + 296, 297, 105, 650, 651, 298, 299, 642, 657, 652, + 668, 655, 656, 685, -382, 658, 665, 694, 667, 695, + 696, 104, 714, 697, 303, 702, 486, 126, 127, 792, + 706, 130, 131, 132, 133, 718, -50, 104, 637, 484, + 484, 12, 125, 126, 127, 128, 129, 130, 131, 132, + 133, 134, 135, 136, 10, 11, 722, 12, 137, 138, + 139, 724, 562, 563, 725, 728, 732, 734, 738, 736, + 749, 104, 756, 758, 773, 680, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, 135, 136, 10, 11, + -391, 12, 137, 138, 139, 774, 776, 777, 781, 105, + 783, 791, 794, 793, 681, 805, 817, 560, 47, 49, + 822, 58, 804, 59, 60, 105, 820, 824, 834, 89, + -98, 827, 699, 104, 838, 120, 828, 690, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 839, 716, 841, 844, 137, 138, 139, 845, 847, 105, + 382, 562, 563, 98, 545, 737, 95, 514, 319, 661, + 436, 438, 535, 437, 544, 477, 683, 731, 400, 795, + 89, 719, 812, 715, 836, 104, 538, 663, 690, 814, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 189, + 135, 136, 527, 433, 183, 810, 560, 138, 139, 819, + 549, 105, 47, 49, 780, 58, 559, 59, 60, 0, + 562, 563, 698, 0, 89, 626, 0, 0, 0, 0, + 505, 0, 779, 0, 0, 0, 0, 0, 161, 157, + 158, 0, 0, 159, 0, 160, 0, 0, 0, 0, + 796, 797, 0, 0, 141, 0, 0, 0, 390, 390, + 226, 0, 227, 105, 0, 560, 0, 0, 0, 0, + 0, 0, 818, 0, 0, 0, 228, 229, 0, 230, + 231, 0, 455, 232, -373, 6, 0, 390, 9, -373, + -373, -373, -373, -373, -373, -373, -373, -373, -373, -373, + -373, 10, 11, 0, 12, 233, -373, -373, 13, 234, + 0, 407, 408, 456, 457, -373, 0, 0, 0, 0, + 0, 14, 0, 235, 104, 468, 469, 470, 0, 125, + 126, 127, 128, 129, 130, 131, 132, 133, 189, 135, + 136, 0, 0, 0, 22, 23, 138, 139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, -362, 0, 437, 0, -362, 5, 0, -507, 8, - -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, - -362, -362, 9, 10, 0, 11, 0, -362, -362, 12, - 0, 0, 403, 404, 438, 439, -362, 0, 0, 0, - 0, 0, 13, 0, 0, 0, 488, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 489, 0, 0, 0, - 0, 0, 0, 0, 0, 21, 22, 0, 0, 0, + 0, 0, -373, 0, 455, 0, -373, 6, 0, -83, + 9, -373, -373, -373, -373, -373, -373, -373, -373, -373, + -373, -373, -373, 10, 11, 0, 12, 0, -373, -373, + 13, 0, 0, 407, 408, 456, 457, -373, 0, 0, + 407, 408, 105, 14, 0, 0, 104, 468, 469, 470, + 0, 125, 126, 127, 128, 129, 130, 131, 132, 133, + 189, 494, 495, 0, 0, 0, 22, 23, 138, 139, + 409, 496, 0, 0, 0, 410, 0, 0, 411, 412, + 0, 0, 0, 0, -373, 0, 455, 0, -373, 6, + 0, -518, 9, -373, -373, -373, -373, -373, -373, -373, + -373, -373, -373, -373, -373, 10, 11, 0, 12, 0, + -373, -373, 13, 0, 0, 407, 408, 456, 457, -373, + 0, 0, 0, 0, 105, 14, 0, 0, 0, 506, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 507, + 0, 0, 0, 0, 0, 0, 0, 0, 22, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -362, 0, 437, 0, -362, 5, 0, - -474, 8, -362, -362, -362, -362, -362, -362, -362, -362, - -362, -362, -362, -362, 9, 10, 0, 11, 0, -362, - -362, 12, 0, 0, 403, 404, 438, 439, -362, 0, - 437, 0, -362, 5, 13, 0, 8, -362, -362, -362, - -362, -362, -362, -362, -362, -362, -362, -362, -362, 9, - 10, 0, 11, 0, -362, -362, 12, 21, 22, 403, - 404, 438, 439, -362, 0, 0, 0, 0, 0, 13, - 0, 0, 0, 0, 0, -362, 0, 0, 0, 0, - 0, 0, -65, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 21, 22, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -373, 0, 455, 0, + -373, 6, 0, -485, 9, -373, -373, -373, -373, -373, + -373, -373, -373, -373, -373, -373, -373, 10, 11, 0, + 12, 0, -373, -373, 13, 0, 0, 407, 408, 456, + 457, -373, 0, 455, 0, -373, 6, 14, 0, 9, + -373, -373, -373, -373, -373, -373, -373, -373, -373, -373, + -373, -373, 10, 11, 0, 12, 0, -373, -373, 13, + 22, 23, 407, 408, 456, 457, -373, 0, 0, 0, + 0, 0, 14, 0, 0, 0, 0, 0, -373, 0, + 0, 0, 0, 0, 0, -65, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 22, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -362, 0, 437, 0, -362, 5, 0, -87, 8, -362, - -362, -362, -362, -362, -362, -362, -362, -362, -362, -362, - -362, 9, 10, 0, 11, 0, -362, -362, 12, 0, - 0, 403, 404, 438, 439, -362, 0, 0, 0, 0, - 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, - -2, 4, 0, 0, 5, 6, 7, 8, 0, 0, - 0, 0, 0, 0, 21, 22, 0, 0, 0, 0, - 9, 10, 0, 11, 0, 0, 0, 12, 0, 0, - 0, 0, -362, 0, 0, 0, 0, 0, 0, -498, - 13, 14, 15, 16, 0, 0, 0, 0, 0, 17, - 18, 0, 0, 19, 4, 0, 20, 5, 6, 7, - 8, 0, 0, 21, 22, 0, 0, 0, 0, 0, - 23, 24, 0, 9, 10, 0, 11, 0, 0, 4, - 12, 0, 5, 6, 7, 8, 0, 0, 0, 0, - 0, 0, 0, 13, 14, 15, 16, 0, 9, 10, - 0, 11, 17, 18, 0, 12, 19, 0, 0, 20, - 0, 0, 0, 0, 0, 0, 21, 22, 13, 14, - 15, 16, 0, 23, 24, 654, 0, 17, 18, 0, - 0, 19, 0, 0, 20, 0, 0, 0, 0, 0, - 0, 21, 22, 0, 0, 0, 0, 0, 23, 24 + 0, 0, 0, -373, 0, 455, 0, -373, 6, 0, + -87, 9, -373, -373, -373, -373, -373, -373, -373, -373, + -373, -373, -373, -373, 10, 11, 0, 12, 0, -373, + -373, 13, 0, 0, 407, 408, 456, 457, -373, 0, + 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 5, 0, 0, 6, 7, 8, + 9, 0, 0, 0, 0, 0, 0, 22, 23, 0, + 0, 0, 0, 10, 11, 0, 12, 0, 0, 0, + 13, 0, 0, 0, 0, -373, 0, 0, 0, 0, + 0, 0, -509, 14, 15, 16, 17, 0, 0, 0, + 0, 0, 18, 19, 0, 0, 20, 0, 0, 21, + 0, 0, 0, 0, 0, 0, 22, 23, 0, 0, + 0, 0, 0, 24, 25, 674 }; static const yytype_int16 yycheck[] = { - 13, 13, 21, 22, 78, 18, 19, 41, 41, 111, - 2, 41, 78, 41, 337, 2, 41, 2, 41, 2, - 2, 78, 41, 78, 78, 78, 78, 498, 595, 349, - 78, 447, 339, 340, 341, 290, 1, 606, 388, 3, - 3, 3, 8, 359, 3, 11, 634, 81, 81, 349, - 400, 81, 0, 81, 3, 349, 81, 19, 81, 78, - 79, 49, 81, 28, 29, 53, 3, 80, 3, 82, - 83, 84, 85, 3, 662, 8, 9, 90, 606, 399, - 75, 94, 498, 3, 97, 401, 81, 100, 8, 9, - 10, 75, 6, 13, 14, 15, 16, 81, 89, 399, - 97, 98, 34, 23, 22, 399, 361, 676, 428, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 81, 81, - 84, 85, 81, 88, 73, 74, 75, 76, 77, 78, - 79, 80, 81, 97, 98, 84, 85, 69, 102, 103, - 86, 73, 86, 245, 81, 219, 496, 91, 676, 91, - 86, 81, 6, 219, 103, 91, 87, 89, 86, 91, - 86, 81, 219, 91, 219, 219, 219, 219, 639, 1, - 3, 219, 427, 82, 83, 8, 9, 10, 11, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 685, - 23, 24, 25, 26, 86, 49, 28, 29, 211, 53, - 219, 697, 86, 3, 99, 100, 101, 774, 8, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 714, 786, - 28, 29, 86, 639, 86, 25, 26, 91, 3, 796, - 90, 727, 92, 8, 9, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 30, 31, 86, 81, 24, - 25, 26, 723, 86, 1, 3, 3, 3, 91, 30, - 31, 8, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 60, 23, 24, 25, 26, - 65, 81, 384, 296, 297, 605, 593, 389, 87, 60, - 14, 15, 305, 764, 65, 15, 16, 68, 69, 35, - 36, 37, 86, 325, 326, 327, 81, 723, 242, 243, - 244, 330, 321, 322, 86, 3, 323, 324, 337, 48, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 81, 23, 24, 25, 26, 551, - 552, 360, 87, 398, 398, 398, 398, 86, 764, 87, - 81, 91, 89, 86, 89, 89, 86, 89, 3, 87, - 86, 86, 8, 397, 398, 86, 89, 397, 86, 397, - 383, 390, 397, 447, 397, 367, 87, 86, 397, 398, - 367, 447, 367, 87, 367, 367, 405, 86, 407, 408, - 86, 86, 86, 81, 87, 414, 94, 47, 95, 90, - 1, 103, 87, 4, 5, 6, 7, 426, 87, 96, - 87, 87, 87, 91, 3, 104, 90, 90, 58, 20, - 21, 92, 23, 92, 498, 92, 27, 88, 447, 93, - 92, 3, 498, 105, 88, 105, 88, 3, 87, 40, - 41, 42, 43, 30, 31, 92, 88, 88, 49, 50, - 86, 90, 53, 776, 777, 56, 90, 476, 477, 478, - 90, 90, 63, 64, 51, 52, 88, 88, 8, 70, - 71, 72, 88, 60, 61, 488, 489, 88, 65, 498, - 803, 68, 69, 31, 86, 88, 86, 88, 501, 86, - 592, 86, 3, 86, 88, 86, 509, 8, 9, 10, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 86, - 86, 86, 86, 86, 25, 26, 86, 551, 552, 3, - 104, 551, 552, 551, 552, 86, 551, 552, 551, 552, - 86, 86, 551, 552, 86, 86, 86, 86, 4, 86, - 6, 86, 86, 66, 3, 88, 88, 88, 35, 562, - 88, 564, 565, 566, 20, 21, 92, 23, 24, 86, - 86, 27, 86, 88, 103, 639, 86, 86, 35, 87, - 81, 106, 88, 639, 103, 38, 104, 55, 92, 89, - 59, 3, 595, 49, 3, 92, 103, 53, 607, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 67, 104, 104, 104, 103, 25, 26, 62, 90, - 104, 86, 88, 39, 606, 34, 104, 91, 103, 606, - 639, 606, 92, 606, 606, 86, 91, 640, 640, 75, - 92, 104, 103, 75, 92, 654, 4, 676, 6, 16, - 104, 15, 308, 745, 104, 367, 402, 592, 219, 723, - 318, 562, 20, 21, 673, 23, 24, 723, 422, 27, - 319, 342, 81, 320, 748, 686, 672, 750, 775, 594, - 795, 390, 307, 686, 686, 73, 433, 780, 605, 384, - -1, 49, 399, -1, 676, 53, -1, 414, -1, 676, - 764, 676, -1, 676, 676, -1, -1, -1, 764, 67, - -1, -1, -1, -1, 723, -1, -1, -1, -1, -1, - -1, -1, 731, -1, -1, 749, 749, 730, 730, 749, - -1, 749, -1, -1, 749, -1, 749, -1, -1, -1, - 749, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 764, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 776, 777, -1, - -1, 774, -1, -1, -1, -1, 779, -1, -1, -1, - -1, -1, -1, 786, -1, -1, -1, -1, -1, 1, - -1, 3, 4, 796, 803, 7, 8, 9, 10, 11, + 22, 23, 2, 14, 26, 43, 43, 43, 19, 20, + 43, 14, 43, 84, 81, 81, 223, 4, 4, 335, + 4, 43, 4, 4, 347, 81, 81, 465, 217, 516, + 81, 81, 239, 337, 338, 339, 271, 613, 81, 81, + 392, 3, 347, 625, 347, 3, 84, 84, 84, 0, + 3, 84, 404, 84, 3, 3, 0, 19, 654, 81, + 82, 3, 84, 3, 3, 1, 3, 625, 4, 5, + 6, 7, 83, 75, 85, 86, 87, 88, 516, 81, + 403, 357, 93, 6, 20, 21, 97, 23, 86, 100, + 81, 27, 103, 91, 1, 3, 303, 286, 403, 3, + 403, 28, 29, 86, 40, 41, 42, 43, 704, 109, + 110, 49, 103, 49, 50, 53, 116, 53, 89, 81, + 56, 28, 29, 81, 359, 28, 29, 63, 64, 405, + 86, 1, 81, 3, 70, 71, 72, 719, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 105, 23, 24, 25, 26, 105, 365, 226, + 226, 719, 514, 105, 86, 105, 105, 710, 105, 105, + 226, 226, 659, 81, 75, 226, 226, 81, 105, 8, + 81, 88, 11, 226, 226, 1, 393, 87, 1, 91, + 86, 4, 5, 6, 7, 91, 431, 740, 36, 6, + 86, 86, 105, 22, 226, 91, 91, 20, 21, 752, + 23, 81, 28, 29, 27, 99, 100, 101, 86, 542, + 763, 659, 798, 3, 35, 36, 37, 40, 41, 42, + 43, 86, 30, 31, 72, 105, 49, 50, 76, 90, + 53, 92, 49, 56, 8, 9, 53, 82, 83, 825, + 63, 64, 30, 31, 92, 831, 94, 70, 71, 15, + 16, 748, 60, 3, 97, 98, 277, 65, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 60, 23, 24, 25, 26, 65, 16, 17, + 68, 69, 105, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 375, 376, 84, 85, 328, 611, 373, 374, + 748, 86, 4, 335, 6, 569, 570, 97, 98, 87, + 807, 86, 102, 103, 86, 105, 48, 87, 20, 21, + 519, 23, 24, 86, 89, 27, 358, 87, 527, 81, + 89, 81, 89, 550, 87, 3, 402, 402, 86, 86, + 673, 402, 402, 377, 378, 379, 86, 49, 87, 86, + 86, 53, 86, 86, 402, 105, 300, 301, 302, 807, + 87, 86, 394, 86, 86, 67, 86, 388, 87, 3, + 402, 3, 382, 91, 89, 8, 90, 409, 89, 411, + 412, 47, 103, 582, 583, 584, 418, 87, 465, 465, + 87, 401, 87, 610, 87, 3, 94, 91, 430, 95, + 104, 93, 3, 484, 90, 73, 74, 75, 76, 77, + 78, 79, 80, 81, 96, 425, 84, 85, 92, 92, + 87, 106, 92, 104, 93, 90, 88, 58, 92, 97, + 98, 106, 92, 465, 102, 103, 484, 484, 484, 516, + 516, 484, 452, 484, 3, 3, 88, 3, 87, 92, + 447, 447, 484, 447, 90, 447, 447, 8, 88, 88, + 86, 88, 494, 495, 496, 73, 74, 75, 76, 77, + 78, 79, 80, 81, 800, 801, 84, 85, 90, 90, + 90, 88, 88, 88, 516, 506, 507, 31, 86, 97, + 98, 86, 86, 86, 102, 103, 88, 88, 88, 86, + 86, 86, 86, 829, 86, 86, 86, 86, 86, 92, + 86, 86, 86, 86, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 86, 86, 84, 85, 104, 88, 86, + 66, 86, 86, 103, 35, 88, 88, 86, 88, 86, + 86, 3, 107, 88, 103, 86, 8, 9, 10, 766, + 87, 13, 14, 15, 16, 88, 88, 3, 568, 569, + 570, 23, 8, 9, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 86, 23, 24, 25, + 26, 104, 659, 659, 35, 38, 55, 92, 103, 89, + 104, 3, 59, 3, 92, 627, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - -1, 23, -1, 25, 26, 27, -1, -1, 30, 31, - 32, 33, 34, -1, -1, -1, -1, -1, 40, -1, - -1, -1, 44, 45, 46, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 63, 64, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 81, - -1, 1, -1, 3, 4, -1, 88, 7, 8, 9, + 104, 23, 24, 25, 26, 103, 103, 62, 90, 81, + 104, 86, 88, 91, 634, 104, 103, 659, 625, 625, + 39, 625, 92, 625, 625, 81, 92, 91, 86, 660, + 86, 104, 674, 3, 103, 91, 104, 660, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, -1, 23, -1, 25, 26, 27, -1, -1, - 30, 31, 32, 33, 34, -1, -1, -1, -1, -1, - 40, -1, -1, -1, 44, 45, 46, -1, -1, -1, + 104, 693, 75, 104, 24, 25, 26, 92, 75, 81, + 318, 748, 748, 17, 447, 719, 16, 406, 226, 610, + 370, 372, 692, 371, 446, 394, 641, 711, 340, 769, + 711, 701, 797, 692, 830, 3, 426, 612, 711, 799, + 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 418, 364, 76, 796, 748, 25, 26, 804, + 451, 81, 719, 719, 756, 719, 34, 719, 719, -1, + 807, 807, 673, -1, 755, 550, -1, -1, -1, -1, + 403, -1, 755, -1, -1, -1, -1, -1, 796, 796, + 796, -1, -1, 796, -1, 796, -1, -1, -1, -1, + 770, 771, -1, -1, 796, -1, -1, -1, 800, 801, + 4, -1, 6, 81, -1, 807, -1, -1, -1, -1, + -1, -1, 803, -1, -1, -1, 20, 21, -1, 23, + 24, -1, 1, 27, 3, 4, -1, 829, 7, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 19, 20, 21, -1, 23, 49, 25, 26, 27, 53, + -1, 30, 31, 32, 33, 34, -1, -1, -1, -1, + -1, 40, -1, 67, 3, 44, 45, 46, -1, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 19, -1, -1, -1, 63, 64, 25, 26, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 63, 64, -1, -1, -1, -1, -1, + -1, -1, 81, -1, 1, -1, 3, 4, -1, 88, + 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, -1, 23, -1, 25, 26, + 27, -1, -1, 30, 31, 32, 33, 34, -1, -1, + 30, 31, 81, 40, -1, -1, 3, 44, 45, 46, + -1, 8, 9, 10, 11, 12, 13, 14, 15, 16, + 17, 51, 52, -1, -1, -1, 63, 64, 25, 26, + 60, 61, -1, -1, -1, 65, -1, -1, 68, 69, + -1, -1, -1, -1, 81, -1, 1, -1, 3, 4, + -1, 88, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, -1, 23, -1, + 25, 26, 27, -1, -1, 30, 31, 32, 33, 34, + -1, -1, -1, -1, 81, 40, -1, -1, -1, 44, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 54, + -1, -1, -1, -1, -1, -1, -1, -1, 63, 64, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 81, -1, 1, -1, 3, 4, -1, 88, 7, + -1, -1, -1, -1, -1, -1, 81, -1, 1, -1, + 3, 4, -1, 88, 7, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 20, 21, -1, + 23, -1, 25, 26, 27, -1, -1, 30, 31, 32, + 33, 34, -1, 1, -1, 3, 4, 40, -1, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, -1, 23, -1, 25, 26, 27, - -1, -1, 30, 31, 32, 33, 34, -1, -1, -1, - -1, -1, 40, -1, -1, -1, 44, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 54, -1, -1, -1, + 63, 64, 30, 31, 32, 33, 34, -1, -1, -1, + -1, -1, 40, -1, -1, -1, -1, -1, 81, -1, + -1, -1, -1, -1, -1, 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, 63, 64, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 81, -1, 1, -1, 3, 4, -1, 88, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, -1, 23, -1, 25, 26, 27, -1, -1, 30, 31, 32, 33, 34, -1, - 1, -1, 3, 4, 40, -1, 7, 8, 9, 10, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, -1, 23, -1, 25, 26, 27, 63, 64, 30, - 31, 32, 33, 34, -1, -1, -1, -1, -1, 40, - -1, -1, -1, -1, -1, 81, -1, -1, -1, -1, - -1, -1, 88, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 63, 64, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 81, -1, 1, -1, 3, 4, -1, 88, 7, 8, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, -1, 23, -1, 25, 26, 27, -1, - -1, 30, 31, 32, 33, 34, -1, -1, -1, -1, - -1, 40, -1, -1, -1, -1, -1, -1, -1, -1, - 0, 1, -1, -1, 4, 5, 6, 7, -1, -1, - -1, -1, -1, -1, 63, 64, -1, -1, -1, -1, - 20, 21, -1, 23, -1, -1, -1, 27, -1, -1, - -1, -1, 81, -1, -1, -1, -1, -1, -1, 88, - 40, 41, 42, 43, -1, -1, -1, -1, -1, 49, - 50, -1, -1, 53, 1, -1, 56, 4, 5, 6, - 7, -1, -1, 63, 64, -1, -1, -1, -1, -1, - 70, 71, -1, 20, 21, -1, 23, -1, -1, 1, - 27, -1, 4, 5, 6, 7, -1, -1, -1, -1, - -1, -1, -1, 40, 41, 42, 43, -1, 20, 21, - -1, 23, 49, 50, -1, 27, 53, -1, -1, 56, - -1, -1, -1, -1, -1, -1, 63, 64, 40, 41, - 42, 43, -1, 70, 71, 72, -1, 49, 50, -1, - -1, 53, -1, -1, 56, -1, -1, -1, -1, -1, - -1, 63, 64, -1, -1, -1, -1, -1, 70, 71 + -1, -1, -1, -1, 40, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1, -1, -1, 4, 5, 6, + 7, -1, -1, -1, -1, -1, -1, 63, 64, -1, + -1, -1, -1, 20, 21, -1, 23, -1, -1, -1, + 27, -1, -1, -1, -1, 81, -1, -1, -1, -1, + -1, -1, 88, 40, 41, 42, 43, -1, -1, -1, + -1, -1, 49, 50, -1, -1, 53, -1, -1, 56, + -1, -1, -1, -1, -1, -1, 63, 64, -1, -1, + -1, -1, -1, 70, 71, 72 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint16 yystos[] = { - 0, 108, 109, 0, 1, 4, 5, 6, 7, 20, - 21, 23, 27, 40, 41, 42, 43, 49, 50, 53, - 56, 63, 64, 70, 71, 110, 112, 127, 129, 133, - 134, 146, 149, 150, 154, 156, 159, 160, 161, 165, - 169, 171, 175, 176, 199, 200, 218, 227, 247, 249, - 261, 263, 285, 286, 287, 329, 380, 381, 382, 383, - 384, 388, 410, 412, 435, 436, 437, 438, 439, 443, - 444, 445, 448, 452, 461, 476, 477, 126, 201, 128, - 155, 219, 248, 262, 288, 330, 3, 198, 235, 154, - 53, 154, 169, 171, 53, 161, 171, 172, 198, 198, - 413, 81, 195, 198, 195, 462, 478, 89, 130, 119, - 135, 147, 86, 86, 118, 91, 157, 151, 120, 162, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 24, 25, 26, 157, 195, 222, 223, 224, - 225, 226, 237, 238, 239, 240, 241, 242, 243, 244, - 245, 246, 247, 249, 261, 263, 287, 296, 299, 302, - 303, 306, 307, 310, 116, 113, 250, 22, 117, 114, - 115, 121, 385, 122, 411, 123, 157, 446, 446, 124, - 125, 87, 480, 86, 17, 195, 205, 237, 240, 241, - 242, 243, 244, 303, 307, 195, 198, 220, 222, 198, - 198, 198, 198, 157, 198, 157, 166, 198, 198, 389, - 198, 196, 75, 81, 75, 3, 3, 87, 86, 4, - 6, 20, 21, 23, 24, 27, 49, 53, 67, 453, - 454, 457, 73, 74, 75, 76, 77, 78, 79, 80, - 84, 85, 97, 98, 102, 103, 195, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 473, 475, - 86, 48, 173, 87, 86, 87, 8, 11, 8, 9, - 89, 300, 170, 90, 92, 89, 89, 86, 86, 87, - 264, 86, 86, 86, 86, 87, 86, 87, 422, 86, - 447, 440, 449, 86, 86, 481, 202, 221, 289, 331, - 87, 91, 391, 414, 198, 197, 463, 479, 131, 205, - 89, 3, 136, 455, 215, 215, 215, 207, 94, 95, - 96, 82, 83, 97, 98, 99, 100, 101, 90, 474, - 158, 152, 163, 8, 207, 217, 89, 47, 174, 297, - 304, 308, 251, 103, 386, 423, 174, 87, 87, 483, - 198, 198, 228, 231, 235, 236, 311, 87, 87, 167, - 392, 390, 91, 419, 198, 87, 391, 109, 111, 3, - 90, 92, 104, 209, 210, 211, 212, 212, 213, 213, - 214, 214, 214, 148, 92, 192, 195, 182, 177, 92, - 301, 192, 217, 217, 217, 253, 255, 256, 265, 393, - 425, 441, 450, 30, 31, 60, 65, 68, 69, 318, - 319, 324, 402, 404, 405, 472, 482, 484, 203, 312, - 229, 290, 332, 182, 195, 174, 420, 415, 464, 110, - 132, 90, 137, 456, 198, 475, 193, 1, 32, 33, - 153, 183, 200, 218, 318, 329, 334, 339, 380, 381, - 44, 45, 46, 164, 178, 179, 183, 341, 207, 223, - 298, 305, 309, 252, 254, 1, 222, 257, 8, 195, - 237, 242, 243, 244, 270, 287, 51, 52, 61, 318, - 387, 394, 402, 404, 407, 408, 409, 472, 44, 54, - 183, 424, 426, 429, 432, 182, 177, 320, 325, 19, - 195, 403, 58, 406, 195, 195, 487, 485, 486, 403, - 488, 88, 93, 105, 313, 315, 92, 3, 292, 295, - 254, 168, 195, 174, 318, 402, 404, 466, 468, 88, - 3, 87, 457, 92, 191, 88, 187, 184, 189, 188, - 190, 34, 195, 224, 303, 307, 340, 363, 185, 186, - 342, 181, 180, 88, 86, 90, 90, 90, 90, 88, - 255, 260, 258, 266, 195, 195, 195, 400, 88, 395, - 396, 397, 398, 399, 401, 198, 198, 88, 427, 428, - 442, 451, 31, 363, 198, 3, 3, 86, 86, 86, - 198, 86, 204, 316, 314, 230, 291, 293, 333, 88, - 416, 471, 469, 470, 465, 467, 138, 194, 86, 86, - 86, 86, 86, 86, 335, 86, 86, 3, 257, 257, - 86, 228, 104, 198, 198, 198, 86, 86, 86, 86, - 86, 86, 86, 430, 433, 86, 86, 88, 88, 321, - 326, 206, 217, 315, 231, 88, 92, 88, 66, 86, - 86, 86, 88, 468, 72, 112, 127, 140, 142, 143, - 195, 3, 343, 259, 267, 103, 345, 345, 363, 232, - 235, 317, 294, 417, 195, 139, 141, 86, 336, 345, - 86, 87, 346, 347, 431, 434, 322, 327, 233, 106, - 295, 195, 144, 88, 142, 103, 354, 344, 268, 104, - 35, 348, 351, 38, 365, 365, 232, 55, 368, 92, - 418, 89, 355, 356, 337, 365, 1, 28, 29, 271, - 273, 277, 279, 352, 104, 349, 366, 323, 369, 328, - 234, 59, 421, 3, 458, 460, 104, 35, 36, 37, - 357, 360, 364, 365, 276, 281, 280, 269, 272, 274, - 278, 363, 92, 103, 365, 103, 62, 371, 235, 195, - 90, 459, 104, 358, 361, 338, 86, 207, 91, 88, - 273, 222, 283, 279, 353, 350, 367, 370, 372, 145, - 92, 92, 363, 39, 374, 282, 284, 275, 231, 351, - 192, 192, 103, 198, 460, 359, 362, 375, 91, 231, - 86, 104, 104, 373, 360, 231, 103, 192, 376, 104, - 75, 377, 378, 104, 92, 379, 75 + 0, 109, 110, 0, 220, 1, 4, 5, 6, 7, + 20, 21, 23, 27, 40, 41, 42, 43, 49, 50, + 53, 56, 63, 64, 70, 71, 105, 111, 113, 128, + 130, 134, 135, 147, 150, 151, 155, 157, 160, 161, + 162, 166, 170, 172, 176, 177, 201, 202, 221, 226, + 235, 255, 257, 269, 271, 293, 294, 295, 337, 388, + 389, 390, 391, 392, 396, 418, 420, 443, 444, 445, + 446, 447, 451, 452, 453, 456, 460, 469, 484, 485, + 127, 203, 129, 156, 227, 256, 270, 296, 338, 200, + 220, 243, 155, 53, 155, 170, 172, 53, 162, 172, + 173, 200, 200, 421, 3, 81, 196, 199, 196, 470, + 486, 196, 89, 131, 120, 136, 148, 86, 86, 119, + 91, 158, 152, 121, 163, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 24, 25, 26, + 158, 196, 230, 231, 232, 233, 234, 245, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 257, 269, + 271, 295, 304, 307, 310, 311, 314, 315, 318, 117, + 114, 258, 22, 118, 115, 116, 122, 393, 123, 419, + 124, 158, 454, 454, 125, 126, 87, 488, 86, 17, + 196, 207, 245, 248, 249, 250, 251, 252, 311, 315, + 196, 200, 228, 230, 200, 200, 200, 200, 3, 158, + 200, 158, 167, 200, 200, 397, 200, 197, 75, 81, + 75, 220, 220, 103, 87, 86, 4, 6, 20, 21, + 23, 24, 27, 49, 53, 67, 461, 462, 465, 220, + 481, 86, 48, 174, 87, 86, 87, 8, 11, 8, + 9, 89, 308, 171, 90, 92, 89, 89, 86, 86, + 87, 272, 86, 86, 86, 86, 87, 86, 87, 430, + 86, 455, 448, 457, 86, 86, 489, 204, 229, 297, + 339, 87, 91, 399, 422, 199, 198, 3, 3, 3, + 73, 74, 75, 76, 77, 78, 79, 80, 84, 85, + 97, 98, 102, 103, 196, 209, 210, 211, 212, 213, + 214, 215, 216, 217, 218, 222, 223, 225, 132, 207, + 89, 3, 137, 463, 208, 209, 483, 90, 159, 153, + 164, 8, 209, 219, 89, 47, 175, 305, 312, 316, + 259, 103, 394, 431, 175, 87, 87, 491, 200, 200, + 236, 239, 243, 244, 319, 87, 87, 168, 400, 398, + 91, 427, 199, 471, 487, 93, 217, 217, 217, 209, + 94, 95, 96, 82, 83, 97, 98, 99, 100, 101, + 104, 224, 110, 112, 3, 90, 92, 482, 149, 193, + 196, 183, 178, 92, 309, 193, 219, 219, 219, 261, + 263, 264, 273, 401, 433, 449, 458, 30, 31, 60, + 65, 68, 69, 326, 327, 332, 410, 412, 413, 480, + 490, 492, 205, 320, 237, 298, 340, 183, 196, 175, + 428, 423, 87, 399, 209, 104, 211, 212, 213, 214, + 214, 215, 215, 216, 216, 216, 92, 220, 133, 90, + 138, 464, 92, 200, 194, 1, 32, 33, 154, 184, + 202, 226, 326, 337, 342, 347, 388, 389, 44, 45, + 46, 165, 179, 180, 184, 349, 209, 231, 306, 313, + 317, 260, 262, 1, 220, 265, 8, 196, 245, 250, + 251, 252, 278, 295, 51, 52, 61, 326, 395, 402, + 410, 412, 415, 416, 417, 480, 44, 54, 184, 432, + 434, 437, 440, 183, 178, 328, 333, 19, 196, 411, + 58, 414, 196, 196, 495, 493, 494, 411, 496, 88, + 93, 106, 321, 323, 92, 220, 300, 303, 262, 169, + 196, 175, 472, 3, 225, 111, 88, 3, 87, 465, + 220, 92, 192, 88, 188, 185, 190, 189, 191, 34, + 196, 232, 311, 315, 348, 371, 186, 187, 350, 182, + 181, 88, 86, 90, 90, 90, 90, 88, 263, 268, + 230, 274, 196, 196, 196, 408, 88, 403, 404, 405, + 406, 407, 409, 200, 200, 88, 435, 436, 450, 459, + 31, 371, 199, 3, 3, 86, 86, 86, 199, 86, + 206, 324, 322, 238, 3, 299, 301, 341, 88, 424, + 326, 410, 412, 474, 476, 139, 483, 195, 86, 86, + 86, 86, 86, 86, 343, 86, 86, 220, 265, 265, + 86, 266, 104, 199, 199, 199, 86, 86, 86, 86, + 86, 86, 86, 438, 441, 86, 86, 88, 88, 329, + 334, 208, 219, 323, 239, 88, 92, 88, 66, 479, + 477, 478, 473, 475, 72, 113, 128, 141, 143, 144, + 196, 220, 3, 236, 275, 103, 353, 353, 371, 240, + 243, 325, 302, 425, 86, 86, 86, 88, 476, 196, + 140, 142, 86, 3, 351, 267, 87, 354, 355, 439, + 442, 330, 335, 241, 107, 303, 196, 145, 88, 220, + 344, 353, 86, 276, 104, 35, 356, 359, 38, 373, + 373, 240, 55, 376, 92, 426, 89, 143, 103, 362, + 352, 1, 28, 29, 279, 281, 285, 287, 360, 104, + 357, 374, 331, 377, 336, 242, 59, 429, 3, 466, + 468, 363, 364, 345, 373, 284, 289, 288, 277, 280, + 282, 286, 371, 92, 103, 373, 103, 62, 379, 243, + 196, 90, 467, 104, 35, 36, 37, 365, 368, 372, + 373, 86, 209, 91, 88, 281, 220, 220, 361, 358, + 375, 378, 380, 146, 92, 104, 366, 369, 346, 290, + 230, 291, 287, 239, 359, 193, 193, 103, 200, 468, + 92, 371, 39, 382, 91, 292, 283, 104, 104, 381, + 367, 370, 383, 239, 86, 193, 368, 239, 103, 104, + 384, 75, 385, 386, 104, 92, 387, 75 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { - 0, 107, 108, 109, 109, 110, 110, 110, 111, 113, - 112, 114, 112, 115, 112, 116, 112, 117, 112, 118, - 112, 119, 112, 120, 112, 121, 112, 122, 112, 123, - 112, 124, 112, 125, 112, 126, 112, 128, 127, 130, - 131, 132, 129, 133, 135, 136, 137, 138, 139, 134, - 140, 141, 141, 142, 142, 144, 145, 143, 147, 148, - 146, 149, 149, 151, 152, 153, 150, 155, 154, 156, - 156, 156, 158, 157, 157, 159, 159, 159, 159, 160, - 160, 162, 163, 164, 161, 166, 167, 168, 165, 170, - 169, 172, 171, 173, 173, 174, 174, 175, 175, 176, - 177, 177, 178, 178, 178, 180, 179, 181, 179, 182, - 182, 184, 183, 185, 183, 186, 183, 187, 183, 188, - 183, 189, 183, 190, 183, 191, 183, 192, 194, 193, - 193, 195, 196, 195, 197, 195, 198, 199, 199, 199, - 201, 202, 203, 204, 200, 205, 205, 205, 205, 205, - 205, 205, 205, 205, 206, 207, 208, 208, 209, 209, - 210, 210, 211, 211, 211, 212, 212, 212, 213, 213, - 213, 213, 214, 214, 214, 214, 215, 215, 215, 216, - 216, 216, 216, 216, 216, 216, 216, 216, 216, 217, - 219, 218, 218, 218, 218, 218, 218, 221, 220, 222, - 222, 223, 223, 223, 224, 224, 224, 224, 224, 224, - 224, 224, 225, 225, 225, 225, 226, 226, 226, 227, - 227, 228, 230, 229, 229, 231, 231, 232, 234, 233, - 233, 235, 236, 237, 237, 238, 238, 238, 239, 239, - 239, 240, 240, 240, 241, 242, 242, 243, 244, 245, - 246, 248, 247, 250, 251, 252, 249, 253, 254, 254, - 256, 255, 258, 259, 257, 260, 257, 262, 261, 264, - 265, 266, 267, 268, 269, 263, 270, 270, 270, 270, - 270, 270, 271, 272, 272, 274, 275, 273, 276, 273, - 277, 278, 278, 280, 279, 281, 282, 279, 284, 283, - 285, 286, 288, 289, 290, 291, 287, 292, 294, 293, - 293, 295, 297, 298, 296, 296, 300, 301, 299, 302, - 304, 305, 303, 303, 306, 308, 309, 307, 307, 310, - 312, 311, 313, 314, 314, 316, 317, 315, 318, 318, - 320, 321, 322, 323, 319, 325, 326, 327, 328, 324, - 330, 331, 332, 333, 329, 335, 336, 337, 338, 334, - 339, 339, 339, 340, 340, 342, 343, 344, 341, 346, - 345, 347, 345, 348, 350, 349, 349, 352, 353, 351, - 355, 354, 356, 354, 357, 359, 358, 358, 361, 362, - 360, 363, 363, 363, 363, 364, 364, 364, 366, 367, - 365, 365, 369, 370, 368, 368, 372, 373, 371, 371, - 375, 376, 374, 374, 377, 379, 378, 378, 380, 381, - 382, 382, 383, 385, 386, 387, 384, 389, 390, 388, - 392, 391, 391, 393, 393, 395, 394, 396, 394, 397, - 394, 398, 394, 399, 394, 400, 394, 401, 394, 402, - 403, 403, 404, 405, 406, 406, 407, 408, 409, 411, - 410, 413, 414, 415, 416, 417, 418, 412, 420, 419, - 419, 421, 421, 423, 424, 422, 425, 425, 426, 427, - 426, 428, 426, 430, 431, 429, 433, 434, 432, 435, - 435, 435, 436, 436, 437, 438, 440, 441, 442, 439, - 443, 444, 445, 447, 446, 449, 450, 451, 448, 452, - 452, 453, 453, 453, 453, 453, 453, 453, 453, 453, - 453, 454, 456, 455, 455, 457, 457, 458, 459, 459, - 460, 462, 463, 464, 465, 461, 466, 467, 467, 469, - 468, 470, 468, 471, 468, 472, 472, 473, 474, 474, - 475, 476, 478, 479, 477, 481, 482, 480, 483, 483, - 485, 484, 486, 484, 487, 484, 488, 484 + 0, 108, 109, 110, 110, 111, 111, 111, 112, 114, + 113, 115, 113, 116, 113, 117, 113, 118, 113, 119, + 113, 120, 113, 121, 113, 122, 113, 123, 113, 124, + 113, 125, 113, 126, 113, 127, 113, 129, 128, 131, + 132, 133, 130, 134, 136, 137, 138, 139, 140, 135, + 141, 142, 142, 143, 143, 145, 146, 144, 148, 149, + 147, 150, 150, 152, 153, 154, 151, 156, 155, 157, + 157, 157, 159, 158, 158, 160, 160, 160, 160, 161, + 161, 163, 164, 165, 162, 167, 168, 169, 166, 171, + 170, 173, 172, 174, 174, 175, 175, 176, 176, 177, + 178, 178, 179, 179, 179, 181, 180, 182, 180, 183, + 183, 185, 184, 186, 184, 187, 184, 188, 184, 189, + 184, 190, 184, 191, 184, 192, 184, 193, 195, 194, + 194, 196, 197, 196, 198, 196, 199, 200, 201, 201, + 201, 203, 204, 205, 206, 202, 207, 207, 207, 207, + 207, 207, 207, 207, 207, 208, 209, 210, 210, 211, + 211, 212, 212, 213, 213, 213, 214, 214, 214, 215, + 215, 215, 215, 216, 216, 216, 216, 217, 217, 217, + 218, 218, 218, 218, 218, 218, 218, 218, 218, 218, + 219, 220, 220, 221, 221, 222, 222, 223, 224, 224, + 225, 227, 226, 226, 226, 226, 226, 226, 229, 228, + 230, 230, 231, 231, 231, 232, 232, 232, 232, 232, + 232, 232, 232, 233, 233, 233, 233, 234, 234, 234, + 235, 235, 236, 238, 237, 237, 239, 239, 240, 242, + 241, 241, 243, 244, 245, 245, 246, 246, 246, 247, + 247, 247, 248, 248, 248, 249, 250, 250, 251, 252, + 253, 254, 256, 255, 258, 259, 260, 257, 261, 262, + 262, 264, 263, 266, 267, 265, 268, 265, 270, 269, + 272, 273, 274, 275, 276, 277, 271, 278, 278, 278, + 278, 278, 278, 279, 280, 280, 282, 283, 281, 284, + 281, 285, 286, 286, 288, 287, 289, 290, 287, 292, + 291, 293, 294, 296, 297, 298, 299, 295, 300, 302, + 301, 301, 303, 305, 306, 304, 304, 308, 309, 307, + 310, 312, 313, 311, 311, 314, 316, 317, 315, 315, + 318, 320, 319, 321, 322, 322, 324, 325, 323, 326, + 326, 328, 329, 330, 331, 327, 333, 334, 335, 336, + 332, 338, 339, 340, 341, 337, 343, 344, 345, 346, + 342, 347, 347, 347, 348, 348, 350, 351, 352, 349, + 354, 353, 355, 353, 356, 358, 357, 357, 360, 361, + 359, 363, 362, 364, 362, 365, 367, 366, 366, 369, + 370, 368, 371, 371, 371, 371, 372, 372, 372, 374, + 375, 373, 373, 377, 378, 376, 376, 380, 381, 379, + 379, 383, 384, 382, 382, 385, 387, 386, 386, 388, + 389, 390, 390, 391, 393, 394, 395, 392, 397, 398, + 396, 400, 399, 399, 401, 401, 403, 402, 404, 402, + 405, 402, 406, 402, 407, 402, 408, 402, 409, 402, + 410, 411, 411, 412, 413, 414, 414, 415, 416, 417, + 419, 418, 421, 422, 423, 424, 425, 426, 420, 428, + 427, 427, 429, 429, 431, 432, 430, 433, 433, 434, + 435, 434, 436, 434, 438, 439, 437, 441, 442, 440, + 443, 443, 443, 444, 444, 445, 446, 448, 449, 450, + 447, 451, 452, 453, 455, 454, 457, 458, 459, 456, + 460, 460, 461, 461, 461, 461, 461, 461, 461, 461, + 461, 461, 462, 464, 463, 463, 465, 465, 466, 467, + 467, 468, 470, 471, 472, 473, 469, 474, 475, 475, + 477, 476, 478, 476, 479, 476, 480, 480, 481, 482, + 482, 483, 484, 486, 487, 485, 489, 490, 488, 491, + 491, 493, 492, 494, 492, 495, 492, 496, 492 }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ static const yytype_uint8 yyr2[] = { - 0, 2, 1, 2, 0, 1, 2, 2, 2, 0, + 0, 2, 1, 3, 0, 1, 2, 2, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 0, 0, 7, 2, 0, 0, 0, 0, 0, 11, - 2, 2, 0, 1, 2, 0, 0, 8, 0, 0, + 2, 3, 0, 1, 2, 0, 0, 8, 0, 0, 6, 1, 1, 0, 0, 0, 7, 0, 3, 2, 3, 3, 0, 4, 0, 1, 1, 1, 1, 2, 1, 0, 0, 0, 7, 0, 0, 0, 8, 0, @@ -1538,50 +1542,51 @@ static const yytype_uint8 yyr2[] = 2, 0, 1, 1, 2, 0, 3, 0, 3, 2, 0, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 2, 0, 4, - 0, 1, 0, 3, 0, 4, 1, 1, 2, 2, - 0, 0, 0, 0, 9, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 3, 1, 3, - 1, 3, 1, 3, 3, 1, 3, 3, 1, 3, - 3, 3, 1, 2, 2, 2, 1, 1, 3, 1, + 0, 1, 0, 3, 0, 4, 1, 2, 1, 2, + 2, 0, 0, 0, 0, 9, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, + 3, 1, 3, 1, 3, 3, 1, 3, 3, 1, + 3, 3, 3, 1, 2, 2, 2, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 0, 3, 1, 1, 1, 2, 1, 0, 3, 1, + 1, 2, 0, 5, 2, 1, 1, 2, 3, 0, + 3, 0, 3, 1, 1, 1, 2, 1, 0, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 2, 0, 4, 0, 1, 1, 2, 0, 4, - 0, 1, 1, 1, 1, 1, 2, 1, 2, 3, - 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, - 1, 0, 3, 0, 0, 0, 7, 2, 2, 0, - 0, 2, 0, 0, 5, 0, 3, 0, 3, 0, - 0, 0, 0, 0, 0, 14, 1, 1, 1, 1, - 1, 1, 2, 2, 0, 0, 0, 5, 0, 3, - 2, 2, 0, 0, 3, 0, 0, 5, 0, 3, - 1, 1, 0, 0, 0, 0, 9, 2, 0, 4, - 0, 1, 0, 0, 6, 2, 0, 0, 5, 6, - 0, 0, 6, 1, 1, 0, 0, 6, 1, 1, - 0, 3, 2, 2, 0, 0, 0, 5, 1, 1, - 0, 0, 0, 0, 9, 0, 0, 0, 0, 9, - 0, 0, 0, 0, 9, 0, 0, 0, 0, 10, - 1, 1, 0, 1, 1, 0, 0, 0, 7, 0, - 3, 0, 4, 2, 0, 4, 0, 0, 0, 5, + 1, 1, 2, 0, 4, 0, 1, 1, 2, 0, + 4, 0, 1, 1, 1, 1, 1, 2, 1, 2, + 3, 2, 1, 1, 2, 1, 1, 1, 1, 1, + 1, 1, 0, 3, 0, 0, 0, 7, 2, 2, + 0, 0, 2, 0, 0, 6, 0, 3, 0, 3, + 0, 0, 0, 0, 0, 0, 14, 1, 1, 1, + 1, 1, 1, 2, 2, 0, 0, 0, 6, 0, + 3, 2, 3, 0, 0, 3, 0, 0, 5, 0, + 3, 1, 1, 0, 0, 0, 0, 9, 2, 0, + 4, 0, 2, 0, 0, 6, 2, 0, 0, 5, + 6, 0, 0, 6, 1, 1, 0, 0, 6, 1, + 1, 0, 3, 2, 2, 0, 0, 0, 5, 1, + 1, 0, 0, 0, 0, 9, 0, 0, 0, 0, + 9, 0, 0, 0, 0, 9, 0, 0, 0, 0, + 11, 1, 1, 0, 1, 1, 0, 0, 0, 8, 0, 3, 0, 4, 2, 0, 4, 0, 0, 0, - 5, 1, 1, 1, 1, 1, 1, 1, 0, 0, - 6, 0, 0, 0, 6, 0, 0, 0, 6, 0, - 0, 0, 6, 0, 2, 0, 4, 0, 3, 3, - 1, 1, 2, 0, 0, 0, 7, 0, 0, 6, - 0, 3, 0, 2, 0, 0, 3, 0, 3, 0, - 3, 0, 3, 0, 3, 0, 3, 0, 3, 3, - 1, 1, 3, 2, 1, 0, 3, 3, 3, 0, - 3, 0, 0, 0, 0, 0, 0, 13, 0, 3, - 0, 2, 0, 0, 0, 5, 2, 0, 1, 0, - 3, 0, 3, 0, 0, 6, 0, 0, 6, 1, - 1, 1, 1, 1, 2, 3, 0, 0, 0, 8, - 3, 3, 2, 0, 3, 0, 0, 0, 8, 1, + 5, 0, 3, 0, 4, 2, 0, 4, 0, 0, + 0, 5, 1, 1, 1, 1, 1, 1, 1, 0, + 0, 6, 0, 0, 0, 6, 0, 0, 0, 6, + 0, 0, 0, 6, 0, 2, 0, 4, 0, 3, + 3, 1, 1, 2, 0, 0, 0, 7, 0, 0, + 6, 0, 3, 0, 2, 0, 0, 3, 0, 3, + 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, + 3, 1, 1, 3, 2, 1, 0, 3, 3, 3, + 0, 3, 0, 0, 0, 0, 0, 0, 13, 0, + 3, 0, 2, 0, 0, 0, 5, 2, 0, 1, + 0, 3, 0, 3, 0, 0, 6, 0, 0, 6, + 1, 1, 1, 1, 1, 2, 3, 0, 0, 0, + 8, 3, 3, 2, 0, 3, 0, 0, 0, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 2, 2, 0, 4, 0, 2, 5, 2, 3, 0, - 1, 0, 0, 0, 0, 9, 2, 2, 0, 0, - 3, 0, 3, 0, 3, 3, 3, 2, 3, 0, - 1, 2, 0, 0, 5, 0, 0, 5, 2, 0, - 0, 3, 0, 3, 0, 3, 0, 3 + 1, 2, 2, 0, 4, 0, 2, 5, 2, 3, + 0, 1, 0, 0, 0, 0, 10, 2, 2, 0, + 0, 3, 0, 3, 0, 3, 3, 3, 3, 4, + 0, 1, 2, 0, 0, 6, 0, 0, 5, 2, + 0, 0, 3, 0, 3, 0, 3, 0, 3 }; @@ -2258,298 +2263,298 @@ yyreduce: switch (yyn) { case 5: -#line 370 "fe/idl.ypp" /* yacc.c:1646 */ +#line 369 "fe/idl.ypp" /* yacc.c:1646 */ { } -#line 2265 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2270 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 6: -#line 373 "fe/idl.ypp" /* yacc.c:1646 */ +#line 372 "fe/idl.ypp" /* yacc.c:1646 */ { } -#line 2272 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2277 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 7: -#line 376 "fe/idl.ypp" /* yacc.c:1646 */ +#line 375 "fe/idl.ypp" /* yacc.c:1646 */ { } -#line 2279 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2284 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 9: -#line 386 "fe/idl.ypp" /* yacc.c:1646 */ +#line 392 "fe/idl.ypp" /* yacc.c:1646 */ { // fixed_definition : type_dcl idl_global->set_parse_state (IDL_GlobalData::PS_TypeDeclSeen); } -#line 2288 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2293 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 10: -#line 391 "fe/idl.ypp" /* yacc.c:1646 */ +#line 397 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2297 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2302 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 11: -#line 396 "fe/idl.ypp" /* yacc.c:1646 */ +#line 402 "fe/idl.ypp" /* yacc.c:1646 */ { // | typeid_dcl idl_global->set_parse_state (IDL_GlobalData::PS_TypeIdDeclSeen); } -#line 2306 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2311 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 12: -#line 401 "fe/idl.ypp" /* yacc.c:1646 */ +#line 407 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2315 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2320 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 13: -#line 406 "fe/idl.ypp" /* yacc.c:1646 */ +#line 412 "fe/idl.ypp" /* yacc.c:1646 */ { // | typeprefix_dcl idl_global->set_parse_state (IDL_GlobalData::PS_TypePrefixDeclSeen); } -#line 2324 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2329 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 14: -#line 411 "fe/idl.ypp" /* yacc.c:1646 */ +#line 417 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2333 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2338 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 15: -#line 416 "fe/idl.ypp" /* yacc.c:1646 */ +#line 422 "fe/idl.ypp" /* yacc.c:1646 */ { // | const_dcl idl_global->set_parse_state (IDL_GlobalData::PS_ConstDeclSeen); } -#line 2342 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2347 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 16: -#line 421 "fe/idl.ypp" /* yacc.c:1646 */ +#line 427 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2351 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2356 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 17: -#line 426 "fe/idl.ypp" /* yacc.c:1646 */ +#line 432 "fe/idl.ypp" /* yacc.c:1646 */ { // | exception idl_global->set_parse_state (IDL_GlobalData::PS_ExceptDeclSeen); } -#line 2360 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2365 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 18: -#line 431 "fe/idl.ypp" /* yacc.c:1646 */ +#line 437 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2369 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2374 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 19: -#line 436 "fe/idl.ypp" /* yacc.c:1646 */ +#line 442 "fe/idl.ypp" /* yacc.c:1646 */ { // | interface_def idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceDeclSeen); } -#line 2378 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2383 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 20: -#line 441 "fe/idl.ypp" /* yacc.c:1646 */ +#line 447 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2387 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2392 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 21: -#line 446 "fe/idl.ypp" /* yacc.c:1646 */ +#line 452 "fe/idl.ypp" /* yacc.c:1646 */ { // | module idl_global->set_parse_state (IDL_GlobalData::PS_ModuleDeclSeen); } -#line 2396 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2401 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 22: -#line 451 "fe/idl.ypp" /* yacc.c:1646 */ +#line 457 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2405 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2410 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 23: -#line 456 "fe/idl.ypp" /* yacc.c:1646 */ +#line 462 "fe/idl.ypp" /* yacc.c:1646 */ { // | value_def idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeDeclSeen); } -#line 2414 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2419 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 24: -#line 461 "fe/idl.ypp" /* yacc.c:1646 */ +#line 467 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2423 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2428 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 25: -#line 466 "fe/idl.ypp" /* yacc.c:1646 */ +#line 472 "fe/idl.ypp" /* yacc.c:1646 */ { // | component idl_global->set_parse_state (IDL_GlobalData::PS_ComponentDeclSeen); } -#line 2432 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2437 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 26: -#line 471 "fe/idl.ypp" /* yacc.c:1646 */ +#line 477 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2441 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2446 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 27: -#line 476 "fe/idl.ypp" /* yacc.c:1646 */ +#line 482 "fe/idl.ypp" /* yacc.c:1646 */ { // | home_decl idl_global->set_parse_state (IDL_GlobalData::PS_HomeDeclSeen); } -#line 2450 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2455 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 28: -#line 481 "fe/idl.ypp" /* yacc.c:1646 */ +#line 487 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2459 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2464 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 29: -#line 486 "fe/idl.ypp" /* yacc.c:1646 */ +#line 492 "fe/idl.ypp" /* yacc.c:1646 */ { // | event idl_global->set_parse_state (IDL_GlobalData::PS_EventDeclSeen); } -#line 2468 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2473 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 30: -#line 491 "fe/idl.ypp" /* yacc.c:1646 */ +#line 497 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2477 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2482 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 31: -#line 496 "fe/idl.ypp" /* yacc.c:1646 */ +#line 502 "fe/idl.ypp" /* yacc.c:1646 */ { // | porttype_decl idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeDeclSeen); } -#line 2486 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2491 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 32: -#line 501 "fe/idl.ypp" /* yacc.c:1646 */ +#line 507 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2495 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2500 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 33: -#line 506 "fe/idl.ypp" /* yacc.c:1646 */ +#line 512 "fe/idl.ypp" /* yacc.c:1646 */ { // | connector_decl idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorDeclSeen); } -#line 2504 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2509 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 34: -#line 511 "fe/idl.ypp" /* yacc.c:1646 */ +#line 517 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 2513 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2518 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 35: -#line 516 "fe/idl.ypp" /* yacc.c:1646 */ +#line 522 "fe/idl.ypp" /* yacc.c:1646 */ { // | error idl_global->err()->syntax_error (idl_global->parse_state()); } -#line 2522 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2527 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 36: -#line 521 "fe/idl.ypp" /* yacc.c:1646 */ +#line 527 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); yyerrok; } -#line 2532 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2537 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 37: -#line 530 "fe/idl.ypp" /* yacc.c:1646 */ +#line 536 "fe/idl.ypp" /* yacc.c:1646 */ { // module_header : IDL_MODULE idl_global->set_parse_state (IDL_GlobalData::PS_ModuleSeen); } -#line 2541 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2546 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 38: -#line 535 "fe/idl.ypp" /* yacc.c:1646 */ +#line 541 "fe/idl.ypp" /* yacc.c:1646 */ { (yyval.idlist) = (yyvsp[0].idlist); } -#line 2549 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2554 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 39: -#line 542 "fe/idl.ypp" /* yacc.c:1646 */ +#line 548 "fe/idl.ypp" /* yacc.c:1646 */ { // module : module_header idl_global->set_parse_state (IDL_GlobalData::PS_ModuleIDSeen); @@ -2588,29 +2593,29 @@ yyreduce: */ idl_global->scopes ().push (m); } -#line 2592 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2597 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 40: -#line 581 "fe/idl.ypp" /* yacc.c:1646 */ +#line 587 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_ModuleSqSeen); } -#line 2601 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2606 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 41: -#line 586 "fe/idl.ypp" /* yacc.c:1646 */ +#line 592 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_definition idl_global->set_parse_state (IDL_GlobalData::PS_ModuleBodySeen); } -#line 2610 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2615 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 42: -#line 591 "fe/idl.ypp" /* yacc.c:1646 */ +#line 597 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_ModuleQsSeen); @@ -2620,19 +2625,19 @@ yyreduce: idl_global->scopes ().pop (); } -#line 2624 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2629 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 43: -#line 604 "fe/idl.ypp" /* yacc.c:1646 */ +#line 610 "fe/idl.ypp" /* yacc.c:1646 */ { idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleIDSeen); } -#line 2632 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2637 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 44: -#line 611 "fe/idl.ypp" /* yacc.c:1646 */ +#line 617 "fe/idl.ypp" /* yacc.c:1646 */ { // template_module : template_module_header // The module_header rule is common to template module, fixed @@ -2647,11 +2652,11 @@ yyreduce: IDL_GlobalData::PS_ModuleIDSeen); } } -#line 2651 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2656 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 45: -#line 626 "fe/idl.ypp" /* yacc.c:1646 */ +#line 632 "fe/idl.ypp" /* yacc.c:1646 */ { if (FE_Utils::duplicate_param_id ((yyvsp[0].plval))) { @@ -2661,11 +2666,11 @@ yyreduce: return 1; } } -#line 2665 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2670 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 46: -#line 636 "fe/idl.ypp" /* yacc.c:1646 */ +#line 642 "fe/idl.ypp" /* yacc.c:1646 */ { // '>' idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleParamsSeen); @@ -2696,27 +2701,27 @@ yyreduce: // of the template module. idl_global->current_params ((yyvsp[-2].plval)); } -#line 2700 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2705 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 47: -#line 667 "fe/idl.ypp" /* yacc.c:1646 */ +#line 673 "fe/idl.ypp" /* yacc.c:1646 */ { idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleSqSeen); } -#line 2708 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2713 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 48: -#line 671 "fe/idl.ypp" /* yacc.c:1646 */ +#line 677 "fe/idl.ypp" /* yacc.c:1646 */ { idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleBodySeen); } -#line 2716 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2721 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 49: -#line 675 "fe/idl.ypp" /* yacc.c:1646 */ +#line 681 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleQsSeen); @@ -2734,33 +2739,33 @@ yyreduce: // that we are no longer in a template module scope. idl_global->current_params (0); } -#line 2738 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2743 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 55: -#line 710 "fe/idl.ypp" /* yacc.c:1646 */ +#line 716 "fe/idl.ypp" /* yacc.c:1646 */ { // template_module_ref : IDL_ALIAS scoped_name idl_global->set_parse_state ( IDL_GlobalData::PS_ModuleRefSeen); } -#line 2748 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2753 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 56: -#line 716 "fe/idl.ypp" /* yacc.c:1646 */ +#line 722 "fe/idl.ypp" /* yacc.c:1646 */ { // '<' at_least_one_formal_parameter_name '>' idl_global->set_parse_state ( IDL_GlobalData::PS_ModuleRefParamsSeen); } -#line 2758 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2763 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 57: -#line 722 "fe/idl.ypp" /* yacc.c:1646 */ +#line 728 "fe/idl.ypp" /* yacc.c:1646 */ { -// id +// defining_id idl_global->set_parse_state ( IDL_GlobalData::PS_ModuleRefIDSeen); @@ -2837,33 +2842,33 @@ yyreduce: idl_global->in_tmpl_mod_no_alias (itmna_flag); idl_global->in_tmpl_mod_alias (false); } -#line 2841 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2846 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 58: -#line 804 "fe/idl.ypp" /* yacc.c:1646 */ +#line 810 "fe/idl.ypp" /* yacc.c:1646 */ { // template_module_inst : template_module_header idl_global->set_parse_state ( IDL_GlobalData::PS_InstModuleSeen); } -#line 2851 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2856 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 59: -#line 810 "fe/idl.ypp" /* yacc.c:1646 */ +#line 816 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_actual_parameter '>' idl_global->set_parse_state ( IDL_GlobalData::PS_InstModuleArgsSeen); } -#line 2861 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2866 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 60: -#line 816 "fe/idl.ypp" /* yacc.c:1646 */ +#line 822 "fe/idl.ypp" /* yacc.c:1646 */ { -// id +// defining_id idl_global->set_parse_state ( IDL_GlobalData::PS_InstModuleIDSeen); @@ -2924,11 +2929,11 @@ yyreduce: idl_global->set_err_count (idl_global->err_count () + 1); } } -#line 2928 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2933 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 63: -#line 887 "fe/idl.ypp" /* yacc.c:1646 */ +#line 893 "fe/idl.ypp" /* yacc.c:1646 */ { // interface : interface_header UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -2967,29 +2972,29 @@ yyreduce: */ idl_global->scopes ().push (i); } -#line 2971 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2976 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 64: -#line 926 "fe/idl.ypp" /* yacc.c:1646 */ +#line 932 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceSqSeen); } -#line 2980 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2985 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 65: -#line 931 "fe/idl.ypp" /* yacc.c:1646 */ +#line 937 "fe/idl.ypp" /* yacc.c:1646 */ { // exports idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceBodySeen); } -#line 2989 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 2994 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 66: -#line 936 "fe/idl.ypp" /* yacc.c:1646 */ +#line 942 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceQsSeen); @@ -2999,30 +3004,30 @@ yyreduce: */ idl_global->scopes ().pop (); } -#line 3003 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3008 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 67: -#line 949 "fe/idl.ypp" /* yacc.c:1646 */ +#line 955 "fe/idl.ypp" /* yacc.c:1646 */ { // interface_decl : IDL_INTERFACE idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceSeen); } -#line 3012 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3017 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 68: -#line 954 "fe/idl.ypp" /* yacc.c:1646 */ +#line 960 "fe/idl.ypp" /* yacc.c:1646 */ { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceIDSeen); (yyval.idval) = (yyvsp[0].idval); } -#line 3022 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3027 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 69: -#line 963 "fe/idl.ypp" /* yacc.c:1646 */ +#line 969 "fe/idl.ypp" /* yacc.c:1646 */ { // interface_header : interface_decl inheritance_spec idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen); @@ -3059,11 +3064,11 @@ yyreduce: (yyvsp[0].nlval) = 0; } } -#line 3063 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3068 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 70: -#line 1001 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1007 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_LOCAL interface_decl inheritance_spec idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen); @@ -3093,11 +3098,11 @@ yyreduce: (yyvsp[0].nlval) = 0; } } -#line 3097 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3102 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 71: -#line 1032 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1038 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_ABSTRACT interface_decl inheritance_spec idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen); @@ -3127,39 +3132,39 @@ yyreduce: (yyvsp[0].nlval) = 0; } } -#line 3131 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3136 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 72: -#line 1065 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1071 "fe/idl.ypp" /* yacc.c:1646 */ { // inheritance_spec : ':' opt_truncatable idl_global->set_parse_state (IDL_GlobalData::PS_InheritColonSeen); } -#line 3140 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3145 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 73: -#line 1070 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1076 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_scoped_name (yyvsp[0].nlval)->truncatable ((yyvsp[-2].bval)); (yyval.nlval) = (yyvsp[0].nlval); } -#line 3150 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3155 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 74: -#line 1076 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1082 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.nlval) = 0; } -#line 3159 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3164 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 79: -#line 1091 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1097 "fe/idl.ypp" /* yacc.c:1646 */ { // valuetype : IDL_CUSTOM value_concrete_decl ACE_DEBUG ((LM_DEBUG, @@ -3170,11 +3175,11 @@ yyreduce: ACE_TEXT ("Sorry, I (TAO_IDL) can't handle") ACE_TEXT (" custom yet\n"))); } -#line 3174 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3179 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 81: -#line 1106 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1112 "fe/idl.ypp" /* yacc.c:1646 */ { // value_concrete_decl : value_header UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -3218,29 +3223,29 @@ yyreduce: */ idl_global->scopes ().push (v); } -#line 3222 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3227 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 82: -#line 1150 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1156 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeSqSeen); } -#line 3231 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3236 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 83: -#line 1155 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1161 "fe/idl.ypp" /* yacc.c:1646 */ { // value_elements idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeBodySeen); } -#line 3240 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3245 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 84: -#line 1160 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1166 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeQsSeen); @@ -3260,11 +3265,11 @@ yyreduce: */ idl_global->scopes ().pop (); } -#line 3264 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3269 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 85: -#line 1184 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1190 "fe/idl.ypp" /* yacc.c:1646 */ { // value_abs_decl : IDL_ABSTRACT value_header UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -3308,29 +3313,29 @@ yyreduce: */ idl_global->scopes ().push (v); } -#line 3312 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3317 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 86: -#line 1228 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1234 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeSqSeen); } -#line 3321 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3326 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 87: -#line 1233 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1239 "fe/idl.ypp" /* yacc.c:1646 */ { // exports idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeBodySeen); } -#line 3330 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3335 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 88: -#line 1238 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1244 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeQsSeen); @@ -3340,20 +3345,20 @@ yyreduce: */ idl_global->scopes ().pop (); } -#line 3344 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3349 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 89: -#line 1252 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1258 "fe/idl.ypp" /* yacc.c:1646 */ { // value_header : value_decl inheritance_spec idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen); } -#line 3353 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3358 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 90: -#line 1257 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1263 "fe/idl.ypp" /* yacc.c:1646 */ { // supports_spec idl_global->set_parse_state (IDL_GlobalData::PS_SupportSpecSeen); @@ -3385,66 +3390,66 @@ yyreduce: (yyvsp[-2].nlval) = 0; } } -#line 3389 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3394 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 91: -#line 1292 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1298 "fe/idl.ypp" /* yacc.c:1646 */ { // value_decl : IDL_VALUETYPE idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeSeen); } -#line 3398 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3403 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 92: -#line 1297 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1303 "fe/idl.ypp" /* yacc.c:1646 */ { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeIDSeen); (yyval.idval) = (yyvsp[0].idval); } -#line 3408 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3413 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 93: -#line 1306 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1312 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_truncatable : IDL_TRUNCATABLE (yyval.bval) = true; } -#line 3417 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3422 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 94: -#line 1311 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1317 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.bval) = false; } -#line 3426 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3431 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 95: -#line 1320 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1326 "fe/idl.ypp" /* yacc.c:1646 */ { // supports_spec : IDL_SUPPORTS at_least_one_scoped_name (yyval.nlval) = (yyvsp[0].nlval); } -#line 3435 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3440 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 96: -#line 1325 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1331 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.nlval) = 0; } -#line 3444 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3449 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 97: -#line 1334 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1340 "fe/idl.ypp" /* yacc.c:1646 */ { // value_forward_decl : IDL_ABSTRACT value_decl UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -3468,11 +3473,11 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 3472 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3477 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 98: -#line 1359 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1365 "fe/idl.ypp" /* yacc.c:1646 */ { // | value_decl UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -3496,11 +3501,11 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 3500 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3505 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 99: -#line 1386 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1392 "fe/idl.ypp" /* yacc.c:1646 */ { // value_box_decl : value_decl type_spec idl_global->set_parse_state (IDL_GlobalData::PS_ValueBoxDeclSeen); @@ -3562,192 +3567,192 @@ yyreduce: delete (yyvsp[-1].idval); (yyvsp[-1].idval) = 0; } -#line 3566 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3571 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 105: -#line 1463 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1469 "fe/idl.ypp" /* yacc.c:1646 */ { // state_member : IDL_PUBLIC /* is $0 to member_i */ (yyval.vival) = AST_Field::vis_PUBLIC; } -#line 3576 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3581 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 106: -#line 1469 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1475 "fe/idl.ypp" /* yacc.c:1646 */ { // member_i } -#line 3584 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3589 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 107: -#line 1473 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1479 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_PRIVATE /* is $0 to member_i */ (yyval.vival) = AST_Field::vis_PRIVATE; } -#line 3594 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3599 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 108: -#line 1479 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1485 "fe/idl.ypp" /* yacc.c:1646 */ { // member_i } -#line 3602 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3607 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 111: -#line 1491 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1497 "fe/idl.ypp" /* yacc.c:1646 */ { // export : type_dcl idl_global->set_parse_state (IDL_GlobalData::PS_TypeDeclSeen); } -#line 3611 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3616 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 112: -#line 1496 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1502 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 3620 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3625 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 113: -#line 1501 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1507 "fe/idl.ypp" /* yacc.c:1646 */ { // | typeid_dcl idl_global->set_parse_state (IDL_GlobalData::PS_TypeIdDeclSeen); } -#line 3629 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3634 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 114: -#line 1506 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1512 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 3638 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3643 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 115: -#line 1511 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1517 "fe/idl.ypp" /* yacc.c:1646 */ { // | typeprefix_dcl idl_global->set_parse_state (IDL_GlobalData::PS_TypePrefixDeclSeen); } -#line 3647 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3652 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 116: -#line 1516 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1522 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 3656 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3661 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 117: -#line 1521 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1527 "fe/idl.ypp" /* yacc.c:1646 */ { // | const_dcl idl_global->set_parse_state (IDL_GlobalData::PS_ConstDeclSeen); } -#line 3665 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3670 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 118: -#line 1526 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1532 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state(IDL_GlobalData::PS_NoState); } -#line 3674 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3679 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 119: -#line 1531 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1537 "fe/idl.ypp" /* yacc.c:1646 */ { // | exception idl_global->set_parse_state (IDL_GlobalData::PS_ExceptDeclSeen); } -#line 3683 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3688 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 120: -#line 1536 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1542 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 3692 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3697 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 121: -#line 1541 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1547 "fe/idl.ypp" /* yacc.c:1646 */ { // | attribute idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclSeen); } -#line 3701 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3706 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 122: -#line 1546 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1552 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 3710 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3715 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 123: -#line 1551 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1557 "fe/idl.ypp" /* yacc.c:1646 */ { // | operation idl_global->set_parse_state (IDL_GlobalData::PS_OpDeclSeen); } -#line 3719 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3724 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 124: -#line 1556 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1562 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 3728 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3733 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 125: -#line 1561 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1567 "fe/idl.ypp" /* yacc.c:1646 */ { // | error idl_global->err()->syntax_error (idl_global->parse_state()); } -#line 3737 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3742 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 126: -#line 1566 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1572 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); yyerrok; } -#line 3747 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3752 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 127: -#line 1575 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1581 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_scoped_name : scoped_name scoped_names ACE_NEW_RETURN ((yyval.nlval), @@ -3755,20 +3760,20 @@ yyreduce: (yyvsp[0].nlval)), 1); } -#line 3759 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3764 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 128: -#line 1587 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1593 "fe/idl.ypp" /* yacc.c:1646 */ { // scoped_names : scoped_names ',' idl_global->set_parse_state (IDL_GlobalData::PS_SNListCommaSeen); } -#line 3768 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3773 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 129: -#line 1592 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1598 "fe/idl.ypp" /* yacc.c:1646 */ { // scoped_name idl_global->set_parse_state (IDL_GlobalData::PS_ScopedNameSeen); @@ -3789,20 +3794,20 @@ yyreduce: (yyval.nlval) = (yyvsp[-3].nlval); } } -#line 3793 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3798 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 130: -#line 1613 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1619 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.nlval) = 0; } -#line 3802 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3807 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 131: -#line 1621 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1627 "fe/idl.ypp" /* yacc.c:1646 */ { // scoped_name : id idl_global->set_parse_state (IDL_GlobalData::PS_SN_IDSeen); @@ -3812,20 +3817,20 @@ yyreduce: 0), 1); } -#line 3816 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3821 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 132: -#line 1631 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1637 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_SCOPE_DELIMITOR idl_global->set_parse_state (IDL_GlobalData::PS_ScopeDelimSeen); } -#line 3825 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3830 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 133: -#line 1636 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1642 "fe/idl.ypp" /* yacc.c:1646 */ { // id idl_global->set_parse_state (IDL_GlobalData::PS_SN_IDSeen); @@ -3846,11 +3851,11 @@ yyreduce: sn), 1); } -#line 3850 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3855 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 134: -#line 1658 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1664 "fe/idl.ypp" /* yacc.c:1646 */ { // | scoped_name IDL_SCOPE_DELIMITOR idl_global->set_parse_state (IDL_GlobalData::PS_ScopeDelimSeen); @@ -3861,11 +3866,11 @@ yyreduce: ACE::strdelete ((yyvsp[0].strval)); (yyvsp[0].strval) = 0; } -#line 3865 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3870 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 135: -#line 1669 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1675 "fe/idl.ypp" /* yacc.c:1646 */ { // id idl_global->set_parse_state (IDL_GlobalData::PS_SN_IDSeen); @@ -3878,11 +3883,11 @@ yyreduce: (yyvsp[-3].idlist)->nconc (sn); (yyval.idlist) = (yyvsp[-3].idlist); } -#line 3882 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3887 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 136: -#line 1684 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1690 "fe/idl.ypp" /* yacc.c:1646 */ { // id: IDENTIFIER ACE_NEW_RETURN ((yyval.idval), @@ -3891,11 +3896,25 @@ yyreduce: ACE::strdelete ((yyvsp[0].strval)); (yyvsp[0].strval) = 0; } -#line 3895 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3900 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; case 137: -#line 1696 "fe/idl.ypp" /* yacc.c:1646 */ +#line 1701 "fe/idl.ypp" /* yacc.c:1646 */ + { + /* defining_id is a defining identifier + whereas id is usually a reference to a defining identifier */ + ACE_NEW_RETURN ((yyval.idval), + Identifier ((yyvsp[0].strval)), + 1); + ACE::strdelete ((yyvsp[0].strval)); + (yyvsp[0].strval) = 0; + } +#line 3914 "fe/idl.tab.cpp" /* yacc.c:1646 */ + break; + + case 138: +#line 1714 "fe/idl.ypp" /* yacc.c:1646 */ { // interface_forward : interface_decl UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -3940,11 +3959,11 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 3944 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3963 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 138: -#line 1742 "fe/idl.ypp" /* yacc.c:1646 */ + case 139: +#line 1760 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_LOCAL interface_decl UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -3971,11 +3990,11 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 3975 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 3994 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 139: -#line 1770 "fe/idl.ypp" /* yacc.c:1646 */ + case 140: +#line 1788 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_ABSTRACT interface_decl UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -4002,47 +4021,47 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 4006 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4025 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 140: -#line 1800 "fe/idl.ypp" /* yacc.c:1646 */ + case 141: +#line 1818 "fe/idl.ypp" /* yacc.c:1646 */ { // const_dcl : IDL_CONST idl_global->set_parse_state (IDL_GlobalData::PS_ConstSeen); } -#line 4015 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4034 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 141: -#line 1805 "fe/idl.ypp" /* yacc.c:1646 */ + case 142: +#line 1823 "fe/idl.ypp" /* yacc.c:1646 */ { // const_type idl_global->set_parse_state (IDL_GlobalData::PS_ConstTypeSeen); } -#line 4024 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4043 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 142: -#line 1810 "fe/idl.ypp" /* yacc.c:1646 */ + case 143: +#line 1828 "fe/idl.ypp" /* yacc.c:1646 */ { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_ConstIDSeen); } -#line 4033 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4052 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 143: -#line 1815 "fe/idl.ypp" /* yacc.c:1646 */ + case 144: +#line 1833 "fe/idl.ypp" /* yacc.c:1646 */ { // '=' idl_global->set_parse_state (IDL_GlobalData::PS_ConstAssignSeen); } -#line 4042 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4061 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 144: -#line 1820 "fe/idl.ypp" /* yacc.c:1646 */ + case 145: +#line 1838 "fe/idl.ypp" /* yacc.c:1646 */ { // expression UTL_ScopedName n ((yyvsp[-4].idval), @@ -4106,11 +4125,11 @@ yyreduce: result = 0; } } -#line 4110 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4129 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 151: -#line 1893 "fe/idl.ypp" /* yacc.c:1646 */ + case 152: +#line 1911 "fe/idl.ypp" /* yacc.c:1646 */ { // const_type // : integer_type @@ -4122,20 +4141,20 @@ yyreduce: // | string_type_spec (yyval.etval) = AST_Expression::EV_string; } -#line 4126 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4145 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 152: -#line 1905 "fe/idl.ypp" /* yacc.c:1646 */ + case 153: +#line 1923 "fe/idl.ypp" /* yacc.c:1646 */ { // | wstring_type_spec (yyval.etval) = AST_Expression::EV_wstring; } -#line 4135 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4154 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 153: -#line 1910 "fe/idl.ypp" /* yacc.c:1646 */ + case 154: +#line 1928 "fe/idl.ypp" /* yacc.c:1646 */ { // | scoped_name UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -4202,11 +4221,11 @@ yyreduce: sn = 0; (yyvsp[0].idlist) = 0; } -#line 4206 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4225 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 157: -#line 1984 "fe/idl.ypp" /* yacc.c:1646 */ + case 158: +#line 2002 "fe/idl.ypp" /* yacc.c:1646 */ { // or_expr : xor_expr // | or_expr '|' xor_expr @@ -4217,11 +4236,11 @@ yyreduce: (yyvsp[0].exval) ); } -#line 4221 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4240 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 159: -#line 1999 "fe/idl.ypp" /* yacc.c:1646 */ + case 160: +#line 2017 "fe/idl.ypp" /* yacc.c:1646 */ { // xor_expr : and_expr // | xor_expr '^' and_expr @@ -4232,11 +4251,11 @@ yyreduce: (yyvsp[0].exval) ); } -#line 4236 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4255 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 161: -#line 2014 "fe/idl.ypp" /* yacc.c:1646 */ + case 162: +#line 2032 "fe/idl.ypp" /* yacc.c:1646 */ { // and_expr : shift_expr | and_expr '&' shift_expr (yyval.exval) = @@ -4246,11 +4265,11 @@ yyreduce: (yyvsp[0].exval) ); } -#line 4250 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4269 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 163: -#line 2028 "fe/idl.ypp" /* yacc.c:1646 */ + case 164: +#line 2046 "fe/idl.ypp" /* yacc.c:1646 */ { // shift_expr : add_expr | shift_expr IDL_LEFT_SHIFT add_expr (yyval.exval) = @@ -4260,11 +4279,11 @@ yyreduce: (yyvsp[0].exval) ); } -#line 4264 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4283 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 164: -#line 2038 "fe/idl.ypp" /* yacc.c:1646 */ + case 165: +#line 2056 "fe/idl.ypp" /* yacc.c:1646 */ { // | shift_expr IDL_RIGHT_SHIFT add_expr (yyval.exval) = @@ -4274,11 +4293,11 @@ yyreduce: (yyvsp[0].exval) ); } -#line 4278 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4297 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 166: -#line 2052 "fe/idl.ypp" /* yacc.c:1646 */ + case 167: +#line 2070 "fe/idl.ypp" /* yacc.c:1646 */ { // add_expr : mult_expr | add_expr '+' mult_expr (yyval.exval) = @@ -4288,11 +4307,11 @@ yyreduce: (yyvsp[0].exval) ); } -#line 4292 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4311 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 167: -#line 2062 "fe/idl.ypp" /* yacc.c:1646 */ + case 168: +#line 2080 "fe/idl.ypp" /* yacc.c:1646 */ { // | add_expr '-' mult_expr (yyval.exval) = @@ -4302,11 +4321,11 @@ yyreduce: (yyvsp[0].exval) ); } -#line 4306 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4325 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 169: -#line 2076 "fe/idl.ypp" /* yacc.c:1646 */ + case 170: +#line 2094 "fe/idl.ypp" /* yacc.c:1646 */ { // mult_expr : unary_expr | mult_expr '*' unary_expr (yyval.exval) = @@ -4316,11 +4335,11 @@ yyreduce: (yyvsp[0].exval) ); } -#line 4320 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4339 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 170: -#line 2086 "fe/idl.ypp" /* yacc.c:1646 */ + case 171: +#line 2104 "fe/idl.ypp" /* yacc.c:1646 */ { // | mult_expr '/' unary_expr (yyval.exval) = @@ -4330,11 +4349,11 @@ yyreduce: (yyvsp[0].exval) ); } -#line 4334 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4353 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 171: -#line 2096 "fe/idl.ypp" /* yacc.c:1646 */ + case 172: +#line 2114 "fe/idl.ypp" /* yacc.c:1646 */ { // | mult_expr '%' unary_expr (yyval.exval) = @@ -4344,11 +4363,11 @@ yyreduce: (yyvsp[0].exval) ); } -#line 4348 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4367 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 173: -#line 2110 "fe/idl.ypp" /* yacc.c:1646 */ + case 174: +#line 2128 "fe/idl.ypp" /* yacc.c:1646 */ { // unary_expr : primary_expr | '+' primary_expr (yyval.exval) = @@ -4358,11 +4377,11 @@ yyreduce: 0 ); } -#line 4362 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4381 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 174: -#line 2120 "fe/idl.ypp" /* yacc.c:1646 */ + case 175: +#line 2138 "fe/idl.ypp" /* yacc.c:1646 */ { // | '-' primary_expr (yyval.exval) = @@ -4372,11 +4391,11 @@ yyreduce: 0 ); } -#line 4376 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4395 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 175: -#line 2130 "fe/idl.ypp" /* yacc.c:1646 */ + case 176: +#line 2148 "fe/idl.ypp" /* yacc.c:1646 */ { // | '~' primary_expr (yyval.exval) = @@ -4386,11 +4405,11 @@ yyreduce: 0 ); } -#line 4390 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4409 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 176: -#line 2143 "fe/idl.ypp" /* yacc.c:1646 */ + case 177: +#line 2161 "fe/idl.ypp" /* yacc.c:1646 */ { // primary_expr : scoped_name /* @@ -4441,40 +4460,40 @@ yyreduce: delete (yyvsp[0].idlist); (yyvsp[0].idlist) = 0; } -#line 4445 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4464 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 178: -#line 2195 "fe/idl.ypp" /* yacc.c:1646 */ + case 179: +#line 2213 "fe/idl.ypp" /* yacc.c:1646 */ { // | literal // | '(' const_expr ')' (yyval.exval) = (yyvsp[-1].exval); } -#line 4455 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4474 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 179: -#line 2204 "fe/idl.ypp" /* yacc.c:1646 */ + case 180: +#line 2222 "fe/idl.ypp" /* yacc.c:1646 */ { // literal : IDL_INTEGER_LITERAL (yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].ival)); } -#line 4464 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4483 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 180: -#line 2209 "fe/idl.ypp" /* yacc.c:1646 */ + case 181: +#line 2227 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_UINTEGER_LITERAL (yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].uival)); } -#line 4474 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4493 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 181: -#line 2215 "fe/idl.ypp" /* yacc.c:1646 */ + case 182: +#line 2233 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_STRING_LITERAL (yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].sval)); @@ -4482,74 +4501,74 @@ yyreduce: delete (yyvsp[0].sval); (yyvsp[0].sval) = 0; } -#line 4486 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4505 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 182: -#line 2223 "fe/idl.ypp" /* yacc.c:1646 */ + case 183: +#line 2241 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_WSTRING_LITERAL (yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].wsval)); } -#line 4495 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4514 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 183: -#line 2228 "fe/idl.ypp" /* yacc.c:1646 */ + case 184: +#line 2246 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_CHARACTER_LITERAL (yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].cval)); } -#line 4504 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4523 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 184: -#line 2233 "fe/idl.ypp" /* yacc.c:1646 */ + case 185: +#line 2251 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_WCHAR_LITERAL ACE_OutputCDR::from_wchar wc ((yyvsp[0].wcval)); (yyval.exval) = idl_global->gen ()->create_expr (wc); } -#line 4514 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4533 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 185: -#line 2239 "fe/idl.ypp" /* yacc.c:1646 */ + case 186: +#line 2257 "fe/idl.ypp" /* yacc.c:1646 */ { (yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].fixval)); } -#line 4522 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4541 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 186: -#line 2243 "fe/idl.ypp" /* yacc.c:1646 */ + case 187: +#line 2261 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_FLOATING_PT_LITERAL (yyval.exval) = idl_global->gen ()->create_expr ((yyvsp[0].dval)); } -#line 4531 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4550 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 187: -#line 2248 "fe/idl.ypp" /* yacc.c:1646 */ + case 188: +#line 2266 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_TRUETOK (yyval.exval) = idl_global->gen ()->create_expr (true); } -#line 4540 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4559 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 188: -#line 2253 "fe/idl.ypp" /* yacc.c:1646 */ + case 189: +#line 2271 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_FALSETOK (yyval.exval) = idl_global->gen ()->create_expr (false); } -#line 4549 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4568 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 189: -#line 2261 "fe/idl.ypp" /* yacc.c:1646 */ + case 190: +#line 2279 "fe/idl.ypp" /* yacc.c:1646 */ { // positive_int_expr : const_expr int good_expression = 1; @@ -4615,57 +4634,57 @@ yyreduce: idl_global->err ()->syntax_error (idl_global->parse_state ()); } } -#line 4619 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4638 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 190: -#line 2330 "fe/idl.ypp" /* yacc.c:1646 */ + case 201: +#line 2381 "fe/idl.ypp" /* yacc.c:1646 */ { // type_dcl : IDL_TYPEDEF idl_global->set_parse_state (IDL_GlobalData::PS_TypedefSeen); idl_global->in_typedef (true); } -#line 4629 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4648 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 191: -#line 2336 "fe/idl.ypp" /* yacc.c:1646 */ + case 202: +#line 2387 "fe/idl.ypp" /* yacc.c:1646 */ { // type_declarator (yyval.dcval) = 0; } -#line 4638 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4657 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 192: -#line 2341 "fe/idl.ypp" /* yacc.c:1646 */ + case 203: +#line 2392 "fe/idl.ypp" /* yacc.c:1646 */ { // | struct_type (yyval.dcval) = 0; } -#line 4647 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4666 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 193: -#line 2346 "fe/idl.ypp" /* yacc.c:1646 */ + case 204: +#line 2397 "fe/idl.ypp" /* yacc.c:1646 */ { // | union_type (yyval.dcval) = 0; } -#line 4656 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4675 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 194: -#line 2351 "fe/idl.ypp" /* yacc.c:1646 */ + case 205: +#line 2402 "fe/idl.ypp" /* yacc.c:1646 */ { // | enum_type (yyval.dcval) = 0; } -#line 4665 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4684 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 195: -#line 2356 "fe/idl.ypp" /* yacc.c:1646 */ + case 206: +#line 2407 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_NATIVE simple_declarator UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -4692,29 +4711,29 @@ yyreduce: delete (yyvsp[0].deval); (yyvsp[0].deval) = 0; } -#line 4696 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4715 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 196: -#line 2383 "fe/idl.ypp" /* yacc.c:1646 */ + case 207: +#line 2434 "fe/idl.ypp" /* yacc.c:1646 */ { // | constructed_forward_type_spec (yyval.dcval) = 0; } -#line 4705 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4724 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 197: -#line 2391 "fe/idl.ypp" /* yacc.c:1646 */ + case 208: +#line 2442 "fe/idl.ypp" /* yacc.c:1646 */ { // type_declarator : type_spec idl_global->set_parse_state (IDL_GlobalData::PS_TypeSpecSeen); } -#line 4714 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4733 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 198: -#line 2396 "fe/idl.ypp" /* yacc.c:1646 */ + case 209: +#line 2447 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_declarator UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -4778,11 +4797,11 @@ yyreduce: (yyvsp[0].dlval) = 0; } } -#line 4782 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4801 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 201: -#line 2468 "fe/idl.ypp" /* yacc.c:1646 */ + case 212: +#line 2519 "fe/idl.ypp" /* yacc.c:1646 */ { // simple_type_spec : base_type_spec (yyval.dcval) = @@ -4790,11 +4809,11 @@ yyreduce: (yyvsp[0].etval) ); } -#line 4794 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4813 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 203: -#line 2477 "fe/idl.ypp" /* yacc.c:1646 */ + case 214: +#line 2528 "fe/idl.ypp" /* yacc.c:1646 */ { // | template_type_spec // | scoped_name @@ -4819,11 +4838,11 @@ yyreduce: (yyval.dcval) = d; } -#line 4823 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4842 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 221: -#line 2534 "fe/idl.ypp" /* yacc.c:1646 */ + case 232: +#line 2585 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_declarator : declarator declarators ACE_NEW_RETURN ((yyval.dlval), @@ -4831,20 +4850,20 @@ yyreduce: (yyvsp[0].dlval)), 1); } -#line 4835 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4854 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 222: -#line 2546 "fe/idl.ypp" /* yacc.c:1646 */ + case 233: +#line 2597 "fe/idl.ypp" /* yacc.c:1646 */ { // declarators : declarators ',' idl_global->set_parse_state (IDL_GlobalData::PS_DeclsCommaSeen); } -#line 4844 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4863 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 223: -#line 2551 "fe/idl.ypp" /* yacc.c:1646 */ + case 234: +#line 2602 "fe/idl.ypp" /* yacc.c:1646 */ { // declarator idl_global->set_parse_state (IDL_GlobalData::PS_DeclsDeclSeen); @@ -4865,20 +4884,20 @@ yyreduce: (yyval.dlval) = (yyvsp[-3].dlval); } } -#line 4869 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4888 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 224: -#line 2572 "fe/idl.ypp" /* yacc.c:1646 */ + case 235: +#line 2623 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.dlval) = 0; } -#line 4878 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4897 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 227: -#line 2585 "fe/idl.ypp" /* yacc.c:1646 */ + case 238: +#line 2636 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_simple_declarator : simple_declarator simple_declarators ACE_NEW_RETURN ((yyval.dlval), @@ -4886,20 +4905,20 @@ yyreduce: (yyvsp[0].dlval)), 1); } -#line 4890 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4909 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 228: -#line 2597 "fe/idl.ypp" /* yacc.c:1646 */ + case 239: +#line 2648 "fe/idl.ypp" /* yacc.c:1646 */ { // simple_declarators : simple_declarators ',' idl_global->set_parse_state (IDL_GlobalData::PS_DeclsCommaSeen); } -#line 4899 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4918 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 229: -#line 2602 "fe/idl.ypp" /* yacc.c:1646 */ + case 240: +#line 2653 "fe/idl.ypp" /* yacc.c:1646 */ { // simple_declarator idl_global->set_parse_state (IDL_GlobalData::PS_DeclsDeclSeen); @@ -4920,22 +4939,22 @@ yyreduce: (yyval.dlval) = (yyvsp[-3].dlval); } } -#line 4924 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4943 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 230: -#line 2623 "fe/idl.ypp" /* yacc.c:1646 */ + case 241: +#line 2674 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.dlval) = 0; } -#line 4933 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4952 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 231: -#line 2631 "fe/idl.ypp" /* yacc.c:1646 */ + case 242: +#line 2682 "fe/idl.ypp" /* yacc.c:1646 */ { -// simple_declarator : id +// simple_declarator : defining_id UTL_ScopedName *sn = 0; ACE_NEW_RETURN (sn, UTL_ScopedName ((yyvsp[0].idval), @@ -4947,11 +4966,11 @@ yyreduce: 0), 1); } -#line 4951 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4970 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 232: -#line 2648 "fe/idl.ypp" /* yacc.c:1646 */ + case 243: +#line 2699 "fe/idl.ypp" /* yacc.c:1646 */ { // complex_declarator : array_declarator UTL_ScopedName *sn = 0; @@ -4967,174 +4986,174 @@ yyreduce: (yyvsp[0].dcval)), 1); } -#line 4971 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4990 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 235: -#line 2672 "fe/idl.ypp" /* yacc.c:1646 */ + case 246: +#line 2723 "fe/idl.ypp" /* yacc.c:1646 */ { // signed_int : IDL_LONG (yyval.etval) = AST_Expression::EV_long; } -#line 4980 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 4999 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 236: -#line 2677 "fe/idl.ypp" /* yacc.c:1646 */ + case 247: +#line 2728 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_LONG IDL_LONG (yyval.etval) = AST_Expression::EV_longlong; } -#line 4989 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5008 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 237: -#line 2682 "fe/idl.ypp" /* yacc.c:1646 */ + case 248: +#line 2733 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_SHORT (yyval.etval) = AST_Expression::EV_short; } -#line 4998 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5017 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 238: -#line 2690 "fe/idl.ypp" /* yacc.c:1646 */ + case 249: +#line 2741 "fe/idl.ypp" /* yacc.c:1646 */ { // unsigned_int : IDL_UNSIGNED IDL_LONG (yyval.etval) = AST_Expression::EV_ulong; } -#line 5007 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5026 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 239: -#line 2695 "fe/idl.ypp" /* yacc.c:1646 */ + case 250: +#line 2746 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_UNSIGNED IDL_LONG IDL_LONG (yyval.etval) = AST_Expression::EV_ulonglong; } -#line 5016 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5035 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 240: -#line 2700 "fe/idl.ypp" /* yacc.c:1646 */ + case 251: +#line 2751 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_UNSIGNED IDL_SHORT (yyval.etval) = AST_Expression::EV_ushort; } -#line 5025 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5044 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 241: -#line 2708 "fe/idl.ypp" /* yacc.c:1646 */ + case 252: +#line 2759 "fe/idl.ypp" /* yacc.c:1646 */ { // floating_pt_type : IDL_DOUBLE (yyval.etval) = AST_Expression::EV_double; } -#line 5034 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5053 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 242: -#line 2713 "fe/idl.ypp" /* yacc.c:1646 */ + case 253: +#line 2764 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_FLOAT (yyval.etval) = AST_Expression::EV_float; } -#line 5043 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5062 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 243: -#line 2718 "fe/idl.ypp" /* yacc.c:1646 */ + case 254: +#line 2769 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_LONG IDL_DOUBLE (yyval.etval) = AST_Expression::EV_longdouble; } -#line 5052 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5071 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 244: -#line 2726 "fe/idl.ypp" /* yacc.c:1646 */ + case 255: +#line 2777 "fe/idl.ypp" /* yacc.c:1646 */ { // fixed_type : IDL_FIXED (yyval.etval) = AST_Expression::EV_fixed; } -#line 5061 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5080 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 245: -#line 2734 "fe/idl.ypp" /* yacc.c:1646 */ + case 256: +#line 2785 "fe/idl.ypp" /* yacc.c:1646 */ { // char_type : IDL_CHAR (yyval.etval) = AST_Expression::EV_char; } -#line 5070 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5089 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 246: -#line 2739 "fe/idl.ypp" /* yacc.c:1646 */ + case 257: +#line 2790 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_WCHAR (yyval.etval) = AST_Expression::EV_wchar; } -#line 5079 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5098 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 247: -#line 2747 "fe/idl.ypp" /* yacc.c:1646 */ + case 258: +#line 2798 "fe/idl.ypp" /* yacc.c:1646 */ { // octet_type : IDL_OCTET (yyval.etval) = AST_Expression::EV_octet; } -#line 5088 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5107 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 248: -#line 2755 "fe/idl.ypp" /* yacc.c:1646 */ + case 259: +#line 2806 "fe/idl.ypp" /* yacc.c:1646 */ { // boolean_type : IDL_BOOLEAN (yyval.etval) = AST_Expression::EV_bool; } -#line 5097 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5116 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 249: -#line 2763 "fe/idl.ypp" /* yacc.c:1646 */ + case 260: +#line 2814 "fe/idl.ypp" /* yacc.c:1646 */ { // any_type : IDL_ANY (yyval.etval) = AST_Expression::EV_any; } -#line 5106 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5125 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 250: -#line 2771 "fe/idl.ypp" /* yacc.c:1646 */ + case 261: +#line 2822 "fe/idl.ypp" /* yacc.c:1646 */ { // object_type : IDL_OBJECT (yyval.etval) = AST_Expression::EV_object; } -#line 5115 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5134 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 251: -#line 2779 "fe/idl.ypp" /* yacc.c:1646 */ + case 262: +#line 2830 "fe/idl.ypp" /* yacc.c:1646 */ { // struct_decl : IDL_STRUCT idl_global->set_parse_state (IDL_GlobalData::PS_StructSeen); } -#line 5124 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5143 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 252: -#line 2784 "fe/idl.ypp" /* yacc.c:1646 */ + case 263: +#line 2835 "fe/idl.ypp" /* yacc.c:1646 */ { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_StructIDSeen); (yyval.idval) = (yyvsp[0].idval); } -#line 5134 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5153 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 253: -#line 2794 "fe/idl.ypp" /* yacc.c:1646 */ + case 264: +#line 2845 "fe/idl.ypp" /* yacc.c:1646 */ { // struct_type : struct_header UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -5168,29 +5187,29 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 5172 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5191 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 254: -#line 2828 "fe/idl.ypp" /* yacc.c:1646 */ + case 265: +#line 2879 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_StructSqSeen); } -#line 5181 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5200 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 255: -#line 2833 "fe/idl.ypp" /* yacc.c:1646 */ + case 266: +#line 2884 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_member idl_global->set_parse_state (IDL_GlobalData::PS_StructBodySeen); } -#line 5190 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5209 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 256: -#line 2838 "fe/idl.ypp" /* yacc.c:1646 */ + case 267: +#line 2889 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_StructQsSeen); @@ -5203,39 +5222,39 @@ yyreduce: ); idl_global->scopes ().pop (); } -#line 5207 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5226 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 260: -#line 2860 "fe/idl.ypp" /* yacc.c:1646 */ + case 271: +#line 2911 "fe/idl.ypp" /* yacc.c:1646 */ { // member : /* is $0 to member_i */ (yyval.vival) = AST_Field::vis_NA; } -#line 5217 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5236 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 262: -#line 2870 "fe/idl.ypp" /* yacc.c:1646 */ + case 273: +#line 2922 "fe/idl.ypp" /* yacc.c:1646 */ { // member_i : type_spec idl_global->set_parse_state (IDL_GlobalData::PS_MemberTypeSeen); } -#line 5226 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5245 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 263: -#line 2875 "fe/idl.ypp" /* yacc.c:1646 */ + case 274: +#line 2927 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_declarator idl_global->set_parse_state (IDL_GlobalData::PS_MemberDeclsSeen); } -#line 5235 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5254 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 264: -#line 2880 "fe/idl.ypp" /* yacc.c:1646 */ + case 275: +#line 2932 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -5283,7 +5302,7 @@ yyreduce: idl_global->gen ()->create_field ( tp, d->name (), - (yyvsp[-5].vival) + (yyvsp[-6].vival) ); (void) s->fe_add_field (f); } @@ -5293,58 +5312,58 @@ yyreduce: delete (yyvsp[-2].dlval); (yyvsp[-2].dlval) = 0; } -#line 5297 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5316 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 265: -#line 2938 "fe/idl.ypp" /* yacc.c:1646 */ + case 276: +#line 2990 "fe/idl.ypp" /* yacc.c:1646 */ { // | error idl_global->err()->syntax_error (idl_global->parse_state ()); } -#line 5306 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5325 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 266: -#line 2943 "fe/idl.ypp" /* yacc.c:1646 */ + case 277: +#line 2995 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); yyerrok; } -#line 5316 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5335 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 267: -#line 2952 "fe/idl.ypp" /* yacc.c:1646 */ + case 278: +#line 3004 "fe/idl.ypp" /* yacc.c:1646 */ { // union_decl : IDL_UNION idl_global->set_parse_state (IDL_GlobalData::PS_UnionSeen); } -#line 5325 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5344 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 268: -#line 2957 "fe/idl.ypp" /* yacc.c:1646 */ + case 279: +#line 3009 "fe/idl.ypp" /* yacc.c:1646 */ { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_UnionIDSeen); (yyval.idval) = (yyvsp[0].idval); } -#line 5335 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5354 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 269: -#line 2966 "fe/idl.ypp" /* yacc.c:1646 */ + case 280: +#line 3018 "fe/idl.ypp" /* yacc.c:1646 */ { // union_type : union_decl IDL_SWITCH idl_global->set_parse_state (IDL_GlobalData::PS_SwitchSeen); } -#line 5344 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5363 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 270: -#line 2971 "fe/idl.ypp" /* yacc.c:1646 */ + case 281: +#line 3023 "fe/idl.ypp" /* yacc.c:1646 */ { // '(' UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -5380,24 +5399,24 @@ yyreduce: * Don't delete $1 yet; we'll need it a bit later. */ } -#line 5384 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5403 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 271: -#line 3007 "fe/idl.ypp" /* yacc.c:1646 */ + case 282: +#line 3059 "fe/idl.ypp" /* yacc.c:1646 */ { // switch_type_spec idl_global->set_parse_state (IDL_GlobalData::PS_SwitchTypeSeen); } -#line 5393 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5412 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 272: -#line 3012 "fe/idl.ypp" /* yacc.c:1646 */ + case 283: +#line 3064 "fe/idl.ypp" /* yacc.c:1646 */ { // ')' /* - * The top of the scopes must an empty union we added after we + * The top of the scopes must be an empty union we added after we * encountered 'union <id> switch ('. Now we are ready to add a * correct one. Temporarily remove the top so that we setup the * correct union in a right scope. @@ -5450,29 +5469,29 @@ yyreduce: delete (yyvsp[-7].idval); (yyvsp[-7].idval) = 0; } -#line 5454 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5473 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 273: -#line 3069 "fe/idl.ypp" /* yacc.c:1646 */ + case 284: +#line 3121 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_UnionSqSeen); } -#line 5463 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5482 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 274: -#line 3074 "fe/idl.ypp" /* yacc.c:1646 */ + case 285: +#line 3126 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_case_branch idl_global->set_parse_state (IDL_GlobalData::PS_UnionBodySeen); } -#line 5472 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5491 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 275: -#line 3079 "fe/idl.ypp" /* yacc.c:1646 */ + case 286: +#line 3131 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_UnionQsSeen); @@ -5489,11 +5508,11 @@ yyreduce: idl_global->scopes ().pop (); } } -#line 5493 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5512 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 276: -#line 3099 "fe/idl.ypp" /* yacc.c:1646 */ + case 287: +#line 3151 "fe/idl.ypp" /* yacc.c:1646 */ { // switch_type_spec : integer_type (yyval.dcval) = @@ -5501,11 +5520,11 @@ yyreduce: (yyvsp[0].etval) ); } -#line 5505 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5524 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 277: -#line 3107 "fe/idl.ypp" /* yacc.c:1646 */ + case 288: +#line 3159 "fe/idl.ypp" /* yacc.c:1646 */ { // | char_type /* wchars are not allowed. */ @@ -5519,11 +5538,11 @@ yyreduce: (yyvsp[0].etval) ); } -#line 5523 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5542 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 278: -#line 3121 "fe/idl.ypp" /* yacc.c:1646 */ + case 289: +#line 3173 "fe/idl.ypp" /* yacc.c:1646 */ { // | octet_type /* octets are not allowed. */ @@ -5533,11 +5552,11 @@ yyreduce: (yyvsp[0].etval) ); } -#line 5537 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5556 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 279: -#line 3131 "fe/idl.ypp" /* yacc.c:1646 */ + case 290: +#line 3183 "fe/idl.ypp" /* yacc.c:1646 */ { // | boolean_type (yyval.dcval) = @@ -5545,11 +5564,11 @@ yyreduce: (yyvsp[0].etval) ); } -#line 5549 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5568 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 281: -#line 3140 "fe/idl.ypp" /* yacc.c:1646 */ + case 292: +#line 3192 "fe/idl.ypp" /* yacc.c:1646 */ { // | enum_type // | scoped_name @@ -5655,29 +5674,29 @@ yyreduce: delete (yyvsp[0].idlist); (yyvsp[0].idlist) = 0; } -#line 5659 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5678 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 285: -#line 3256 "fe/idl.ypp" /* yacc.c:1646 */ + case 296: +#line 3308 "fe/idl.ypp" /* yacc.c:1646 */ { // case_branch : at_least_one_case_label idl_global->set_parse_state (IDL_GlobalData::PS_UnionLabelSeen); } -#line 5668 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5687 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 286: -#line 3261 "fe/idl.ypp" /* yacc.c:1646 */ + case 297: +#line 3313 "fe/idl.ypp" /* yacc.c:1646 */ { -// element_spec +// annotations element_spec idl_global->set_parse_state (IDL_GlobalData::PS_UnionElemSeen); } -#line 5677 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5696 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 287: -#line 3266 "fe/idl.ypp" /* yacc.c:1646 */ + case 298: +#line 3318 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -5690,12 +5709,12 @@ yyreduce: * Add them to the enclosing scope (the union scope) */ if (s != 0 - && (yyvsp[-4].llval) != 0 + && (yyvsp[-5].llval) != 0 && (yyvsp[-2].ffval) != 0) { b = idl_global->gen ()->create_union_branch ( - (yyvsp[-4].llval), + (yyvsp[-5].llval), f->field_type (), f->name () ); @@ -5708,30 +5727,30 @@ yyreduce: f = 0; } } -#line 5712 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5731 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 288: -#line 3297 "fe/idl.ypp" /* yacc.c:1646 */ + case 299: +#line 3349 "fe/idl.ypp" /* yacc.c:1646 */ { // | error idl_global->err()->syntax_error (idl_global->parse_state()); } -#line 5721 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5740 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 289: -#line 3302 "fe/idl.ypp" /* yacc.c:1646 */ + case 300: +#line 3354 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); yyerrok; } -#line 5731 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5750 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 290: -#line 3311 "fe/idl.ypp" /* yacc.c:1646 */ + case 301: +#line 3363 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_case_label : case_label case_labels ACE_NEW_RETURN ((yyval.llval), @@ -5739,52 +5758,52 @@ yyreduce: (yyvsp[0].llval)), 1); } -#line 5743 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5762 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 291: -#line 3322 "fe/idl.ypp" /* yacc.c:1646 */ + case 302: +#line 3374 "fe/idl.ypp" /* yacc.c:1646 */ { -// case_labels : case_labels case_label +// case_labels : case_labels annotations case_label UTL_LabelList *ll = 0; ACE_NEW_RETURN (ll, UTL_LabelList ((yyvsp[0].ulval), 0), 1); - if ((yyvsp[-1].llval) == 0) + if ((yyvsp[-2].llval) == 0) { (yyval.llval) = ll; } else { - (yyvsp[-1].llval)->nconc (ll); - (yyval.llval) = (yyvsp[-1].llval); + (yyvsp[-2].llval)->nconc (ll); + (yyval.llval) = (yyvsp[-2].llval); } } -#line 5766 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5785 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 292: -#line 3341 "fe/idl.ypp" /* yacc.c:1646 */ + case 303: +#line 3393 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.llval) = 0; } -#line 5775 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5794 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 293: -#line 3349 "fe/idl.ypp" /* yacc.c:1646 */ + case 304: +#line 3401 "fe/idl.ypp" /* yacc.c:1646 */ { // case_label : IDL_DEFAULT idl_global->set_parse_state (IDL_GlobalData::PS_DefaultSeen); } -#line 5784 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5803 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 294: -#line 3354 "fe/idl.ypp" /* yacc.c:1646 */ + case 305: +#line 3406 "fe/idl.ypp" /* yacc.c:1646 */ { // ':' idl_global->set_parse_state (IDL_GlobalData::PS_LabelColonSeen); @@ -5794,28 +5813,28 @@ yyreduce: 0 ); } -#line 5798 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5817 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 295: -#line 3364 "fe/idl.ypp" /* yacc.c:1646 */ + case 306: +#line 3416 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_CASE idl_global->set_parse_state (IDL_GlobalData::PS_CaseSeen); } -#line 5807 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5826 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 296: -#line 3369 "fe/idl.ypp" /* yacc.c:1646 */ + case 307: +#line 3421 "fe/idl.ypp" /* yacc.c:1646 */ { idl_global->set_parse_state (IDL_GlobalData::PS_LabelExprSeen); } -#line 5815 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5834 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 297: -#line 3373 "fe/idl.ypp" /* yacc.c:1646 */ + case 308: +#line 3425 "fe/idl.ypp" /* yacc.c:1646 */ { // const_expr idl_global->set_parse_state (IDL_GlobalData::PS_LabelColonSeen); @@ -5825,20 +5844,20 @@ yyreduce: (yyvsp[-2].exval) ); } -#line 5829 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5848 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 298: -#line 3386 "fe/idl.ypp" /* yacc.c:1646 */ + case 309: +#line 3438 "fe/idl.ypp" /* yacc.c:1646 */ { // element_spec : type_spec idl_global->set_parse_state (IDL_GlobalData::PS_UnionElemTypeSeen); } -#line 5838 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5857 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 299: -#line 3391 "fe/idl.ypp" /* yacc.c:1646 */ + case 310: +#line 3443 "fe/idl.ypp" /* yacc.c:1646 */ { // declarator idl_global->set_parse_state (IDL_GlobalData::PS_UnionElemDeclSeen); @@ -5883,11 +5902,11 @@ yyreduce: (yyvsp[0].deval) = 0; } } -#line 5887 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5906 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 300: -#line 3439 "fe/idl.ypp" /* yacc.c:1646 */ + case 311: +#line 3491 "fe/idl.ypp" /* yacc.c:1646 */ { // struct_forward_type : struct_decl UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -5908,11 +5927,11 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 5912 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5931 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 301: -#line 3463 "fe/idl.ypp" /* yacc.c:1646 */ + case 312: +#line 3515 "fe/idl.ypp" /* yacc.c:1646 */ { // union_forward_type : union_decl UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -5933,22 +5952,22 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 5937 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5956 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 302: -#line 3487 "fe/idl.ypp" /* yacc.c:1646 */ + case 313: +#line 3539 "fe/idl.ypp" /* yacc.c:1646 */ { // enum_type : IDL_ENUM idl_global->set_parse_state (IDL_GlobalData::PS_EnumSeen); } -#line 5946 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 5965 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 303: -#line 3492 "fe/idl.ypp" /* yacc.c:1646 */ + case 314: +#line 3544 "fe/idl.ypp" /* yacc.c:1646 */ { -// id +// defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ((yyvsp[0].idval), 0); @@ -5979,29 +5998,29 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 5983 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6002 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 304: -#line 3525 "fe/idl.ypp" /* yacc.c:1646 */ + case 315: +#line 3577 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_EnumSqSeen); } -#line 5992 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6011 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 305: -#line 3530 "fe/idl.ypp" /* yacc.c:1646 */ + case 316: +#line 3582 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_enumerator idl_global->set_parse_state (IDL_GlobalData::PS_EnumBodySeen); } -#line 6001 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6020 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 306: -#line 3535 "fe/idl.ypp" /* yacc.c:1646 */ + case 317: +#line 3587 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_EnumQsSeen); @@ -6021,22 +6040,22 @@ yyreduce: idl_global->scopes ().pop (); } } -#line 6025 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6044 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 308: -#line 3561 "fe/idl.ypp" /* yacc.c:1646 */ + case 319: +#line 3613 "fe/idl.ypp" /* yacc.c:1646 */ { // enumerators : enumerators ',' idl_global->set_parse_state (IDL_GlobalData::PS_EnumCommaSeen); } -#line 6034 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6053 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 311: -#line 3571 "fe/idl.ypp" /* yacc.c:1646 */ + case 322: +#line 3623 "fe/idl.ypp" /* yacc.c:1646 */ { -// enumerator : IDENTIFIER +// enumerator : annotations IDENTIFIER UTL_Scope *s = idl_global->scopes ().top_non_null (); Identifier id ((yyvsp[0].strval)); ACE::strdelete ((yyvsp[0].strval)); @@ -6066,29 +6085,29 @@ yyreduce: (void) s->fe_add_enum_val (e); } } -#line 6070 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6089 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 312: -#line 3607 "fe/idl.ypp" /* yacc.c:1646 */ + case 323: +#line 3659 "fe/idl.ypp" /* yacc.c:1646 */ { // sequence_type_spec : seq_head ',' idl_global->set_parse_state (IDL_GlobalData::PS_SequenceCommaSeen); } -#line 6079 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6098 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 313: -#line 3612 "fe/idl.ypp" /* yacc.c:1646 */ + case 324: +#line 3664 "fe/idl.ypp" /* yacc.c:1646 */ { // positive_int_expr idl_global->set_parse_state (IDL_GlobalData::PS_SequenceExprSeen); } -#line 6088 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6107 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 314: -#line 3617 "fe/idl.ypp" /* yacc.c:1646 */ + case 325: +#line 3669 "fe/idl.ypp" /* yacc.c:1646 */ { // '>' idl_global->set_parse_state (IDL_GlobalData::PS_SequenceQsSeen); @@ -6165,11 +6184,11 @@ yyreduce: delete ev; ev = 0; } -#line 6169 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6188 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 315: -#line 3695 "fe/idl.ypp" /* yacc.c:1646 */ + case 326: +#line 3747 "fe/idl.ypp" /* yacc.c:1646 */ { // | seq_head '>' idl_global->set_parse_state (IDL_GlobalData::PS_SequenceQsSeen); @@ -6225,11 +6244,11 @@ yyreduce: } } } -#line 6229 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6248 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 316: -#line 3754 "fe/idl.ypp" /* yacc.c:1646 */ + case 327: +#line 3806 "fe/idl.ypp" /* yacc.c:1646 */ { // seq_head : IDL_SEQUENCE idl_global->set_parse_state (IDL_GlobalData::PS_SequenceSeen); @@ -6239,57 +6258,57 @@ yyreduce: */ idl_global->scopes ().push (0); } -#line 6243 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6262 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 317: -#line 3764 "fe/idl.ypp" /* yacc.c:1646 */ + case 328: +#line 3816 "fe/idl.ypp" /* yacc.c:1646 */ { // '<' idl_global->set_parse_state (IDL_GlobalData::PS_SequenceSqSeen); } -#line 6252 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6271 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 318: -#line 3769 "fe/idl.ypp" /* yacc.c:1646 */ + case 329: +#line 3821 "fe/idl.ypp" /* yacc.c:1646 */ { // simple_type_spec idl_global->set_parse_state (IDL_GlobalData::PS_SequenceTypeSeen); (yyval.dcval) = (yyvsp[0].dcval); } -#line 6262 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6281 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 319: -#line 3778 "fe/idl.ypp" /* yacc.c:1646 */ + case 330: +#line 3830 "fe/idl.ypp" /* yacc.c:1646 */ { (yyvsp[-1].exval)->evaluate (AST_Expression::EK_positive_int); (yyval.dcval) = idl_global->gen ()->create_fixed ((yyvsp[-3].exval), (yyvsp[-1].exval)); } -#line 6271 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6290 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 320: -#line 3787 "fe/idl.ypp" /* yacc.c:1646 */ + case 331: +#line 3839 "fe/idl.ypp" /* yacc.c:1646 */ { // string_type_spec : string_head '<' idl_global->set_parse_state (IDL_GlobalData::PS_StringSqSeen); } -#line 6280 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6299 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 321: -#line 3792 "fe/idl.ypp" /* yacc.c:1646 */ + case 332: +#line 3844 "fe/idl.ypp" /* yacc.c:1646 */ { // positive_int_expr idl_global->set_parse_state (IDL_GlobalData::PS_StringExprSeen); } -#line 6289 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6308 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 322: -#line 3797 "fe/idl.ypp" /* yacc.c:1646 */ + case 333: +#line 3849 "fe/idl.ypp" /* yacc.c:1646 */ { // '>' idl_global->set_parse_state (IDL_GlobalData::PS_StringQsSeen); @@ -6332,11 +6351,11 @@ yyreduce: delete ev; ev = 0; } -#line 6336 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6355 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 323: -#line 3840 "fe/idl.ypp" /* yacc.c:1646 */ + case 334: +#line 3892 "fe/idl.ypp" /* yacc.c:1646 */ { // | string_head idl_global->set_parse_state (IDL_GlobalData::PS_StringCompleted); @@ -6359,38 +6378,38 @@ yyreduce: ) ); } -#line 6363 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6382 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 324: -#line 3866 "fe/idl.ypp" /* yacc.c:1646 */ + case 335: +#line 3918 "fe/idl.ypp" /* yacc.c:1646 */ { // string_head : IDL_STRING idl_global->set_parse_state (IDL_GlobalData::PS_StringSeen); } -#line 6372 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6391 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 325: -#line 3875 "fe/idl.ypp" /* yacc.c:1646 */ + case 336: +#line 3927 "fe/idl.ypp" /* yacc.c:1646 */ { // wstring_type_spec : wstring_head '<' idl_global->set_parse_state (IDL_GlobalData::PS_StringSqSeen); } -#line 6381 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6400 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 326: -#line 3880 "fe/idl.ypp" /* yacc.c:1646 */ + case 337: +#line 3932 "fe/idl.ypp" /* yacc.c:1646 */ { // positive_int_expr idl_global->set_parse_state (IDL_GlobalData::PS_StringExprSeen); } -#line 6390 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6409 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 327: -#line 3885 "fe/idl.ypp" /* yacc.c:1646 */ + case 338: +#line 3937 "fe/idl.ypp" /* yacc.c:1646 */ { // '>' idl_global->set_parse_state (IDL_GlobalData::PS_StringQsSeen); @@ -6422,11 +6441,11 @@ yyreduce: } } } -#line 6426 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6445 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 328: -#line 3917 "fe/idl.ypp" /* yacc.c:1646 */ + case 339: +#line 3969 "fe/idl.ypp" /* yacc.c:1646 */ { // | wstring_head idl_global->set_parse_state (IDL_GlobalData::PS_StringCompleted); @@ -6448,29 +6467,29 @@ yyreduce: AST_String::narrow_from_decl ((yyval.dcval)) ); } -#line 6452 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6471 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 329: -#line 3942 "fe/idl.ypp" /* yacc.c:1646 */ + case 340: +#line 3994 "fe/idl.ypp" /* yacc.c:1646 */ { // wstring_head : IDL_WSTRING idl_global->set_parse_state (IDL_GlobalData::PS_StringSeen); } -#line 6461 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6480 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 330: -#line 3950 "fe/idl.ypp" /* yacc.c:1646 */ + case 341: +#line 4002 "fe/idl.ypp" /* yacc.c:1646 */ { -// array_declarator : id +// array_declarator : defining_id idl_global->set_parse_state (IDL_GlobalData::PS_ArrayIDSeen); } -#line 6470 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6489 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 331: -#line 3955 "fe/idl.ypp" /* yacc.c:1646 */ + case 342: +#line 4007 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_array_dim idl_global->set_parse_state (IDL_GlobalData::PS_ArrayCompleted); @@ -6504,11 +6523,11 @@ yyreduce: } } } -#line 6508 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6527 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 332: -#line 3992 "fe/idl.ypp" /* yacc.c:1646 */ + case 343: +#line 4044 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_array_dim : array_dim array_dims ACE_NEW_RETURN ((yyval.elval), @@ -6516,11 +6535,11 @@ yyreduce: (yyvsp[0].elval)), 1); } -#line 6520 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6539 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 333: -#line 4003 "fe/idl.ypp" /* yacc.c:1646 */ + case 344: +#line 4055 "fe/idl.ypp" /* yacc.c:1646 */ { // array_dims : array_dims array_dim UTL_ExprList *el = 0; @@ -6539,38 +6558,38 @@ yyreduce: (yyval.elval) = (yyvsp[-1].elval); } } -#line 6543 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6562 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 334: -#line 4022 "fe/idl.ypp" /* yacc.c:1646 */ + case 345: +#line 4074 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.elval) = 0; } -#line 6552 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6571 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 335: -#line 4030 "fe/idl.ypp" /* yacc.c:1646 */ + case 346: +#line 4082 "fe/idl.ypp" /* yacc.c:1646 */ { // array_dim : '[' idl_global->set_parse_state (IDL_GlobalData::PS_DimSqSeen); } -#line 6561 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6580 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 336: -#line 4035 "fe/idl.ypp" /* yacc.c:1646 */ + case 347: +#line 4087 "fe/idl.ypp" /* yacc.c:1646 */ { // positive_int_expr idl_global->set_parse_state (IDL_GlobalData::PS_DimExprSeen); } -#line 6570 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6589 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 337: -#line 4040 "fe/idl.ypp" /* yacc.c:1646 */ + case 348: +#line 4092 "fe/idl.ypp" /* yacc.c:1646 */ { // ']' idl_global->set_parse_state (IDL_GlobalData::PS_DimQsSeen); @@ -6625,47 +6644,47 @@ yyreduce: delete ev; ev = 0; } -#line 6629 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6648 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 340: -#line 4103 "fe/idl.ypp" /* yacc.c:1646 */ + case 351: +#line 4155 "fe/idl.ypp" /* yacc.c:1646 */ { // attribute_readonly : IDL_READONLY idl_global->set_parse_state (IDL_GlobalData::PS_AttrROSeen); } -#line 6638 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6657 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 341: -#line 4108 "fe/idl.ypp" /* yacc.c:1646 */ + case 352: +#line 4160 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_ATTRIBUTE idl_global->set_parse_state (IDL_GlobalData::PS_AttrSeen); } -#line 6647 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6666 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 342: -#line 4113 "fe/idl.ypp" /* yacc.c:1646 */ + case 353: +#line 4165 "fe/idl.ypp" /* yacc.c:1646 */ { // param_type_spec idl_global->set_parse_state (IDL_GlobalData::PS_AttrTypeSeen); } -#line 6656 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6675 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 343: -#line 4118 "fe/idl.ypp" /* yacc.c:1646 */ + case 354: +#line 4170 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_simple_declarator idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclsSeen); } -#line 6665 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6684 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 344: -#line 4123 "fe/idl.ypp" /* yacc.c:1646 */ + case 355: +#line 4175 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_raises UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -6726,47 +6745,47 @@ yyreduce: delete (yyvsp[-2].dlval); (yyvsp[-2].dlval) = 0; } -#line 6730 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6749 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 345: -#line 4187 "fe/idl.ypp" /* yacc.c:1646 */ + case 356: +#line 4239 "fe/idl.ypp" /* yacc.c:1646 */ { // attribute_readwrite : IDL_ATTRIBUTE idl_global->set_parse_state (IDL_GlobalData::PS_AttrSeen); } -#line 6739 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6758 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 346: -#line 4192 "fe/idl.ypp" /* yacc.c:1646 */ + case 357: +#line 4244 "fe/idl.ypp" /* yacc.c:1646 */ { // param_type_spec idl_global->set_parse_state (IDL_GlobalData::PS_AttrTypeSeen); } -#line 6748 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6767 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 347: -#line 4197 "fe/idl.ypp" /* yacc.c:1646 */ + case 358: +#line 4249 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_simple_declarator idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclsSeen); } -#line 6757 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6776 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 348: -#line 4202 "fe/idl.ypp" /* yacc.c:1646 */ + case 359: +#line 4254 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_getraises idl_global->set_parse_state (IDL_GlobalData::PS_OpGetRaiseCompleted); } -#line 6766 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6785 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 349: -#line 4207 "fe/idl.ypp" /* yacc.c:1646 */ + case 360: +#line 4259 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_setraises UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -6836,22 +6855,22 @@ yyreduce: delete (yyvsp[-4].dlval); (yyvsp[-4].dlval) = 0; } -#line 6840 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6859 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 350: -#line 4280 "fe/idl.ypp" /* yacc.c:1646 */ + case 361: +#line 4332 "fe/idl.ypp" /* yacc.c:1646 */ { // exception : IDL_EXCEPTION idl_global->set_parse_state (IDL_GlobalData::PS_ExceptSeen); } -#line 6849 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6868 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 351: -#line 4285 "fe/idl.ypp" /* yacc.c:1646 */ + case 362: +#line 4337 "fe/idl.ypp" /* yacc.c:1646 */ { -// id +// defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ((yyvsp[0].idval), 0); @@ -6879,29 +6898,29 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 6883 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6902 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 352: -#line 4315 "fe/idl.ypp" /* yacc.c:1646 */ + case 363: +#line 4367 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_ExceptSqSeen); } -#line 6892 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6911 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 353: -#line 4320 "fe/idl.ypp" /* yacc.c:1646 */ + case 364: +#line 4372 "fe/idl.ypp" /* yacc.c:1646 */ { // members idl_global->set_parse_state (IDL_GlobalData::PS_ExceptBodySeen); } -#line 6901 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6920 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 354: -#line 4325 "fe/idl.ypp" /* yacc.c:1646 */ + case 365: +#line 4377 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_ExceptQsSeen); @@ -6910,22 +6929,22 @@ yyreduce: */ idl_global->scopes ().pop (); } -#line 6914 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6933 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 355: -#line 4338 "fe/idl.ypp" /* yacc.c:1646 */ + case 366: +#line 4390 "fe/idl.ypp" /* yacc.c:1646 */ { // operation : opt_op_attribute op_type_spec idl_global->set_parse_state (IDL_GlobalData::PS_OpTypeSeen); } -#line 6923 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 6942 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 356: -#line 4343 "fe/idl.ypp" /* yacc.c:1646 */ + case 367: +#line 4395 "fe/idl.ypp" /* yacc.c:1646 */ { -// IDENTIFIER +// annotations IDENTIFIER UTL_Scope *s = idl_global->scopes ().top_non_null (); Identifier id ((yyvsp[0].strval)); ACE::strdelete ((yyvsp[0].strval)); @@ -6939,18 +6958,18 @@ yyreduce: * Create a node representing an operation on an interface * and add it to its enclosing scope. */ - if (s != 0 && (yyvsp[-2].dcval) != 0) + if (s != 0 && (yyvsp[-3].dcval) != 0) { AST_Type *tp = - AST_Type::narrow_from_decl ((yyvsp[-2].dcval)); + AST_Type::narrow_from_decl ((yyvsp[-3].dcval)); if (tp == 0) { - idl_global->err ()->not_a_type ((yyvsp[-2].dcval)); + idl_global->err ()->not_a_type ((yyvsp[-3].dcval)); } else if (tp->node_type () == AST_Decl::NT_except) { - idl_global->err ()->not_a_type ((yyvsp[-2].dcval)); + idl_global->err ()->not_a_type ((yyvsp[-3].dcval)); } else { @@ -6964,7 +6983,7 @@ yyreduce: o = idl_global->gen ()->create_operation ( tp, - (yyvsp[-3].ofval), + (yyvsp[-4].ofval), &n, local, s->is_abstract ()); @@ -6988,29 +7007,29 @@ yyreduce: */ idl_global->scopes ().push (o); } -#line 6992 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7011 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 357: -#line 4408 "fe/idl.ypp" /* yacc.c:1646 */ + case 368: +#line 4460 "fe/idl.ypp" /* yacc.c:1646 */ { // parameter_list idl_global->set_parse_state (IDL_GlobalData::PS_OpParsCompleted); } -#line 7001 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7020 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 358: -#line 4413 "fe/idl.ypp" /* yacc.c:1646 */ + case 369: +#line 4465 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_raises idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseCompleted); } -#line 7010 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7029 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 359: -#line 4418 "fe/idl.ypp" /* yacc.c:1646 */ + case 370: +#line 4470 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_context UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -7040,40 +7059,40 @@ yyreduce: */ idl_global->scopes ().pop (); } -#line 7044 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7063 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 360: -#line 4451 "fe/idl.ypp" /* yacc.c:1646 */ + case 371: +#line 4503 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_op_attribute : IDL_ONEWAY idl_global->set_parse_state (IDL_GlobalData::PS_OpAttrSeen); (yyval.ofval) = AST_Operation::OP_oneway; } -#line 7054 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7073 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 361: -#line 4457 "fe/idl.ypp" /* yacc.c:1646 */ + case 372: +#line 4509 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_IDEMPOTENT idl_global->set_parse_state (IDL_GlobalData::PS_OpAttrSeen); (yyval.ofval) = AST_Operation::OP_idempotent; } -#line 7064 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7083 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 362: -#line 4463 "fe/idl.ypp" /* yacc.c:1646 */ + case 373: +#line 4515 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.ofval) = AST_Operation::OP_noflags; } -#line 7073 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7092 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 364: -#line 4472 "fe/idl.ypp" /* yacc.c:1646 */ + case 375: +#line 4524 "fe/idl.ypp" /* yacc.c:1646 */ { // op_type_spec : param_type_spec | IDL_VOID (yyval.dcval) = @@ -7081,23 +7100,23 @@ yyreduce: AST_Expression::EV_void ); } -#line 7085 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7104 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 365: -#line 4483 "fe/idl.ypp" /* yacc.c:1646 */ + case 376: +#line 4535 "fe/idl.ypp" /* yacc.c:1646 */ { // init_decl : IDL_FACTORY //@@ PS_FactorySeen? idl_global->set_parse_state (IDL_GlobalData::PS_OpTypeSeen); } -#line 7095 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7114 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 366: -#line 4489 "fe/idl.ypp" /* yacc.c:1646 */ + case 377: +#line 4541 "fe/idl.ypp" /* yacc.c:1646 */ { -// IDENTIFIER +// annotations IDENTIFIER UTL_Scope *s = idl_global->scopes ().top_non_null (); if (s->is_abstract ()) @@ -7137,20 +7156,20 @@ yyreduce: */ idl_global->scopes ().push (factory); } -#line 7141 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7160 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 367: -#line 4531 "fe/idl.ypp" /* yacc.c:1646 */ + case 378: +#line 4583 "fe/idl.ypp" /* yacc.c:1646 */ { // init_parameter_list idl_global->set_parse_state (IDL_GlobalData::PS_OpParsCompleted); } -#line 7150 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7169 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 368: -#line 4536 "fe/idl.ypp" /* yacc.c:1646 */ + case 379: +#line 4588 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_raises idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseCompleted); @@ -7164,74 +7183,74 @@ yyreduce: idl_global->scopes ().pop (); } -#line 7168 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7187 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 369: -#line 4553 "fe/idl.ypp" /* yacc.c:1646 */ + case 380: +#line 4605 "fe/idl.ypp" /* yacc.c:1646 */ { // init_parameter_list : '(' idl_global->set_parse_state (IDL_GlobalData::PS_OpSqSeen); } -#line 7177 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7196 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 370: -#line 4558 "fe/idl.ypp" /* yacc.c:1646 */ + case 381: +#line 4610 "fe/idl.ypp" /* yacc.c:1646 */ { // ')' idl_global->set_parse_state (IDL_GlobalData::PS_OpQsSeen); } -#line 7186 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7205 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 371: -#line 4563 "fe/idl.ypp" /* yacc.c:1646 */ + case 382: +#line 4615 "fe/idl.ypp" /* yacc.c:1646 */ { // | '(' idl_global->set_parse_state (IDL_GlobalData::PS_OpSqSeen); } -#line 7195 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7214 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 372: -#line 4569 "fe/idl.ypp" /* yacc.c:1646 */ + case 383: +#line 4621 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_in_parameter ')' idl_global->set_parse_state (IDL_GlobalData::PS_OpQsSeen); } -#line 7204 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7223 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 374: -#line 4580 "fe/idl.ypp" /* yacc.c:1646 */ + case 385: +#line 4632 "fe/idl.ypp" /* yacc.c:1646 */ { // in_parameters : in_parameters ',' idl_global->set_parse_state (IDL_GlobalData::PS_OpParCommaSeen); } -#line 7213 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7232 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 377: -#line 4590 "fe/idl.ypp" /* yacc.c:1646 */ + case 388: +#line 4642 "fe/idl.ypp" /* yacc.c:1646 */ { // in_parameter : IDL_IN idl_global->set_parse_state (IDL_GlobalData::PS_OpParDirSeen); } -#line 7222 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7241 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 378: -#line 4595 "fe/idl.ypp" /* yacc.c:1646 */ + case 389: +#line 4647 "fe/idl.ypp" /* yacc.c:1646 */ { // param_type_spec idl_global->set_parse_state (IDL_GlobalData::PS_OpParTypeSeen); } -#line 7231 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7250 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 379: -#line 4600 "fe/idl.ypp" /* yacc.c:1646 */ + case 390: +#line 4652 "fe/idl.ypp" /* yacc.c:1646 */ { // declarator UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -7264,74 +7283,74 @@ yyreduce: delete (yyvsp[0].deval); (yyvsp[0].deval) = 0; } -#line 7268 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7287 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 380: -#line 4636 "fe/idl.ypp" /* yacc.c:1646 */ + case 391: +#line 4688 "fe/idl.ypp" /* yacc.c:1646 */ { // parameter_list : '(' idl_global->set_parse_state (IDL_GlobalData::PS_OpSqSeen); } -#line 7277 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7296 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 381: -#line 4641 "fe/idl.ypp" /* yacc.c:1646 */ + case 392: +#line 4693 "fe/idl.ypp" /* yacc.c:1646 */ { // ')' idl_global->set_parse_state (IDL_GlobalData::PS_OpQsSeen); } -#line 7286 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7305 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 382: -#line 4646 "fe/idl.ypp" /* yacc.c:1646 */ + case 393: +#line 4698 "fe/idl.ypp" /* yacc.c:1646 */ { // | '(' idl_global->set_parse_state (IDL_GlobalData::PS_OpSqSeen); } -#line 7295 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7314 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 383: -#line 4652 "fe/idl.ypp" /* yacc.c:1646 */ + case 394: +#line 4704 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_parameter ')' idl_global->set_parse_state (IDL_GlobalData::PS_OpQsSeen); } -#line 7304 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7323 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 385: -#line 4663 "fe/idl.ypp" /* yacc.c:1646 */ + case 396: +#line 4715 "fe/idl.ypp" /* yacc.c:1646 */ { // parameters : parameters ',' idl_global->set_parse_state (IDL_GlobalData::PS_OpParCommaSeen); } -#line 7313 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7332 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 388: -#line 4673 "fe/idl.ypp" /* yacc.c:1646 */ + case 399: +#line 4725 "fe/idl.ypp" /* yacc.c:1646 */ { // parameter : direction idl_global->set_parse_state (IDL_GlobalData::PS_OpParDirSeen); } -#line 7322 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7341 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 389: -#line 4678 "fe/idl.ypp" /* yacc.c:1646 */ + case 400: +#line 4730 "fe/idl.ypp" /* yacc.c:1646 */ { // param_type_spec idl_global->set_parse_state (IDL_GlobalData::PS_OpParTypeSeen); } -#line 7331 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7350 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 390: -#line 4683 "fe/idl.ypp" /* yacc.c:1646 */ + case 401: +#line 4735 "fe/idl.ypp" /* yacc.c:1646 */ { // declarator UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -7371,11 +7390,11 @@ yyreduce: delete (yyvsp[0].deval); (yyvsp[0].deval) = 0; } -#line 7375 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7394 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 391: -#line 4726 "fe/idl.ypp" /* yacc.c:1646 */ + case 402: +#line 4778 "fe/idl.ypp" /* yacc.c:1646 */ { // param_type_spec : base_type_spec (yyval.dcval) = @@ -7383,11 +7402,11 @@ yyreduce: (yyvsp[0].etval) ); } -#line 7387 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7406 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 394: -#line 4736 "fe/idl.ypp" /* yacc.c:1646 */ + case 405: +#line 4788 "fe/idl.ypp" /* yacc.c:1646 */ { // | string_type_spec // | wstring_type_spec @@ -7494,186 +7513,186 @@ yyreduce: (yyval.dcval) = d; } -#line 7498 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7517 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 395: -#line 4846 "fe/idl.ypp" /* yacc.c:1646 */ + case 406: +#line 4898 "fe/idl.ypp" /* yacc.c:1646 */ { // direction : IDL_IN (yyval.dival) = AST_Argument::dir_IN; } -#line 7507 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7526 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 396: -#line 4851 "fe/idl.ypp" /* yacc.c:1646 */ + case 407: +#line 4903 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_OUT (yyval.dival) = AST_Argument::dir_OUT; } -#line 7516 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7535 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 397: -#line 4856 "fe/idl.ypp" /* yacc.c:1646 */ + case 408: +#line 4908 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_INOUT (yyval.dival) = AST_Argument::dir_INOUT; } -#line 7525 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7544 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 398: -#line 4864 "fe/idl.ypp" /* yacc.c:1646 */ + case 409: +#line 4916 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_raises : IDL_RAISES idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseSeen); } -#line 7534 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7553 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 399: -#line 4869 "fe/idl.ypp" /* yacc.c:1646 */ + case 410: +#line 4921 "fe/idl.ypp" /* yacc.c:1646 */ { // '(' idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseSqSeen); } -#line 7543 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7562 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 400: -#line 4875 "fe/idl.ypp" /* yacc.c:1646 */ + case 411: +#line 4927 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_scoped_name ')' idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseQsSeen); (yyval.nlval) = (yyvsp[-1].nlval); } -#line 7553 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7572 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 401: -#line 4881 "fe/idl.ypp" /* yacc.c:1646 */ + case 412: +#line 4933 "fe/idl.ypp" /* yacc.c:1646 */ { (yyval.nlval) = 0; /* | EMPTY */ } -#line 7562 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7581 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 402: -#line 4889 "fe/idl.ypp" /* yacc.c:1646 */ + case 413: +#line 4941 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_getraises : IDL_GETRAISES idl_global->set_parse_state (IDL_GlobalData::PS_OpGetRaiseSeen); } -#line 7571 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7590 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 403: -#line 4894 "fe/idl.ypp" /* yacc.c:1646 */ + case 414: +#line 4946 "fe/idl.ypp" /* yacc.c:1646 */ { // '(' idl_global->set_parse_state (IDL_GlobalData::PS_OpGetRaiseSqSeen); } -#line 7580 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7599 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 404: -#line 4900 "fe/idl.ypp" /* yacc.c:1646 */ + case 415: +#line 4952 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_scoped_name ')' idl_global->set_parse_state (IDL_GlobalData::PS_OpGetRaiseQsSeen); (yyval.nlval) = (yyvsp[-1].nlval); } -#line 7590 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7609 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 405: -#line 4906 "fe/idl.ypp" /* yacc.c:1646 */ + case 416: +#line 4958 "fe/idl.ypp" /* yacc.c:1646 */ { (yyval.nlval) = 0; /* | EMPTY */ } -#line 7599 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7618 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 406: -#line 4914 "fe/idl.ypp" /* yacc.c:1646 */ + case 417: +#line 4966 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_setraises : IDL_SETRAISES idl_global->set_parse_state (IDL_GlobalData::PS_OpSetRaiseSeen); } -#line 7608 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7627 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 407: -#line 4919 "fe/idl.ypp" /* yacc.c:1646 */ + case 418: +#line 4971 "fe/idl.ypp" /* yacc.c:1646 */ { // '(' idl_global->set_parse_state (IDL_GlobalData::PS_OpSetRaiseSqSeen); } -#line 7617 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7636 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 408: -#line 4925 "fe/idl.ypp" /* yacc.c:1646 */ + case 419: +#line 4977 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_scoped_name ')' idl_global->set_parse_state (IDL_GlobalData::PS_OpSetRaiseQsSeen); (yyval.nlval) = (yyvsp[-1].nlval); } -#line 7627 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7646 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 409: -#line 4931 "fe/idl.ypp" /* yacc.c:1646 */ + case 420: +#line 4983 "fe/idl.ypp" /* yacc.c:1646 */ { (yyval.nlval) = 0; /* | EMPTY */ } -#line 7636 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7655 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 410: -#line 4939 "fe/idl.ypp" /* yacc.c:1646 */ + case 421: +#line 4991 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_context : IDL_CONTEXT idl_global->set_parse_state (IDL_GlobalData::PS_OpContextSeen); } -#line 7645 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7664 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 411: -#line 4944 "fe/idl.ypp" /* yacc.c:1646 */ + case 422: +#line 4996 "fe/idl.ypp" /* yacc.c:1646 */ { idl_global->set_parse_state (IDL_GlobalData::PS_OpContextSqSeen); // '(' } -#line 7654 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7673 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 412: -#line 4950 "fe/idl.ypp" /* yacc.c:1646 */ + case 423: +#line 5002 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_string_literal ')' idl_global->set_parse_state (IDL_GlobalData::PS_OpContextQsSeen); (yyval.slval) = (yyvsp[-1].slval); } -#line 7664 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7683 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 413: -#line 4956 "fe/idl.ypp" /* yacc.c:1646 */ + case 424: +#line 5008 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.slval) = 0; } -#line 7673 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7692 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 414: -#line 4964 "fe/idl.ypp" /* yacc.c:1646 */ + case 425: +#line 5016 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_string_literal : IDL_STRING_LITERAL string_literals ACE_NEW_RETURN ((yyval.slval), @@ -7681,20 +7700,20 @@ yyreduce: (yyvsp[0].slval)), 1); } -#line 7685 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7704 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 415: -#line 4976 "fe/idl.ypp" /* yacc.c:1646 */ + case 426: +#line 5028 "fe/idl.ypp" /* yacc.c:1646 */ { // string_literals : string_literals ',' idl_global->set_parse_state (IDL_GlobalData::PS_OpContextCommaSeen); } -#line 7694 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7713 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 416: -#line 4981 "fe/idl.ypp" /* yacc.c:1646 */ + case 427: +#line 5033 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_STRING_LITERAL UTL_StrList *sl = 0; @@ -7713,20 +7732,20 @@ yyreduce: (yyval.slval) = (yyvsp[-3].slval); } } -#line 7717 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7736 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 417: -#line 5000 "fe/idl.ypp" /* yacc.c:1646 */ + case 428: +#line 5052 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.slval) = 0; } -#line 7726 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7745 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 418: -#line 5008 "fe/idl.ypp" /* yacc.c:1646 */ + case 429: +#line 5060 "fe/idl.ypp" /* yacc.c:1646 */ { // typeid_dcl : IDL_TYPEID scoped_name IDL_STRING_LITERAL UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -7752,11 +7771,11 @@ yyreduce: delete (yyvsp[0].sval); (yyvsp[0].sval) = 0; } -#line 7756 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7775 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 419: -#line 5037 "fe/idl.ypp" /* yacc.c:1646 */ + case 430: +#line 5089 "fe/idl.ypp" /* yacc.c:1646 */ { // typeprefix_dcl : IDL_TYPEPREFIX scoped_name IDL_STRING_LITERAL UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -7791,13 +7810,13 @@ yyreduce: delete (yyvsp[0].sval); (yyvsp[0].sval) = 0; } -#line 7795 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7814 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 422: -#line 5081 "fe/idl.ypp" /* yacc.c:1646 */ + case 433: +#line 5133 "fe/idl.ypp" /* yacc.c:1646 */ { -// component_forward_decl : IDL_COMPONENT id +// component_forward_decl : IDL_COMPONENT defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ((yyvsp[0].idval), 0); @@ -7820,11 +7839,11 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 7824 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7843 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 423: -#line 5109 "fe/idl.ypp" /* yacc.c:1646 */ + case 434: +#line 5161 "fe/idl.ypp" /* yacc.c:1646 */ { // component_decl : component_header UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -7864,29 +7883,29 @@ yyreduce: */ idl_global->scopes ().push (c); } -#line 7868 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7887 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 424: -#line 5149 "fe/idl.ypp" /* yacc.c:1646 */ + case 435: +#line 5201 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_ComponentSqSeen); } -#line 7877 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7896 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 425: -#line 5154 "fe/idl.ypp" /* yacc.c:1646 */ + case 436: +#line 5206 "fe/idl.ypp" /* yacc.c:1646 */ { // component_exports idl_global->set_parse_state (IDL_GlobalData::PS_ComponentBodySeen); } -#line 7886 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7905 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 426: -#line 5159 "fe/idl.ypp" /* yacc.c:1646 */ + case 437: +#line 5211 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_ComponentQsSeen); @@ -7896,29 +7915,29 @@ yyreduce: */ idl_global->scopes ().pop (); } -#line 7900 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7919 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 427: -#line 5173 "fe/idl.ypp" /* yacc.c:1646 */ + case 438: +#line 5225 "fe/idl.ypp" /* yacc.c:1646 */ { -// component_header: IDL_COMPONENT id +// component_header: IDL_COMPONENT defining_id idl_global->set_parse_state (IDL_GlobalData::PS_ComponentIDSeen); } -#line 7909 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7928 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 428: -#line 5178 "fe/idl.ypp" /* yacc.c:1646 */ + case 439: +#line 5230 "fe/idl.ypp" /* yacc.c:1646 */ { // component_inheritance_spec idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen); } -#line 7918 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7937 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 429: -#line 5183 "fe/idl.ypp" /* yacc.c:1646 */ + case 440: +#line 5235 "fe/idl.ypp" /* yacc.c:1646 */ { // supports_spec idl_global->set_parse_state (IDL_GlobalData::PS_SupportSpecSeen); @@ -7953,164 +7972,164 @@ yyreduce: (yyvsp[-2].idlist) = 0; } } -#line 7957 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7976 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 430: -#line 5221 "fe/idl.ypp" /* yacc.c:1646 */ + case 441: +#line 5273 "fe/idl.ypp" /* yacc.c:1646 */ { // component_inheritance_spec : ':' idl_global->set_parse_state (IDL_GlobalData::PS_InheritColonSeen); } -#line 7966 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7985 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 431: -#line 5226 "fe/idl.ypp" /* yacc.c:1646 */ + case 442: +#line 5278 "fe/idl.ypp" /* yacc.c:1646 */ { // scoped_name (yyval.idlist) = (yyvsp[0].idlist); } -#line 7975 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 7994 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 432: -#line 5231 "fe/idl.ypp" /* yacc.c:1646 */ + case 443: +#line 5283 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.idlist) = 0; } -#line 7984 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8003 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 435: -#line 5244 "fe/idl.ypp" /* yacc.c:1646 */ + case 446: +#line 5296 "fe/idl.ypp" /* yacc.c:1646 */ { // component_export : provides_decl idl_global->set_parse_state (IDL_GlobalData::PS_ProvidesDeclSeen); } -#line 7993 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8012 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 436: -#line 5249 "fe/idl.ypp" /* yacc.c:1646 */ + case 447: +#line 5301 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 8002 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8021 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 437: -#line 5254 "fe/idl.ypp" /* yacc.c:1646 */ + case 448: +#line 5306 "fe/idl.ypp" /* yacc.c:1646 */ { // | uses_decl idl_global->set_parse_state (IDL_GlobalData::PS_UsesDeclSeen); } -#line 8011 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8030 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 438: -#line 5259 "fe/idl.ypp" /* yacc.c:1646 */ + case 449: +#line 5311 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 8020 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8039 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 439: -#line 5264 "fe/idl.ypp" /* yacc.c:1646 */ + case 450: +#line 5316 "fe/idl.ypp" /* yacc.c:1646 */ { // | emits_decl idl_global->set_parse_state (IDL_GlobalData::PS_EmitsDeclSeen); } -#line 8029 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8048 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 440: -#line 5269 "fe/idl.ypp" /* yacc.c:1646 */ + case 451: +#line 5321 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 8038 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8057 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 441: -#line 5274 "fe/idl.ypp" /* yacc.c:1646 */ + case 452: +#line 5326 "fe/idl.ypp" /* yacc.c:1646 */ { // | publishes_decl idl_global->set_parse_state (IDL_GlobalData::PS_PublishesDeclSeen); } -#line 8047 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8066 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 442: -#line 5279 "fe/idl.ypp" /* yacc.c:1646 */ + case 453: +#line 5331 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 8056 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8075 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 443: -#line 5284 "fe/idl.ypp" /* yacc.c:1646 */ + case 454: +#line 5336 "fe/idl.ypp" /* yacc.c:1646 */ { // | consumes_decl idl_global->set_parse_state (IDL_GlobalData::PS_ConsumesDeclSeen); } -#line 8065 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8084 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 444: -#line 5289 "fe/idl.ypp" /* yacc.c:1646 */ + case 455: +#line 5341 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 8074 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8093 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 445: -#line 5294 "fe/idl.ypp" /* yacc.c:1646 */ + case 456: +#line 5346 "fe/idl.ypp" /* yacc.c:1646 */ { // | attribute idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclSeen); } -#line 8083 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8102 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 446: -#line 5299 "fe/idl.ypp" /* yacc.c:1646 */ + case 457: +#line 5351 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 8092 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8111 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 447: -#line 5304 "fe/idl.ypp" /* yacc.c:1646 */ + case 458: +#line 5356 "fe/idl.ypp" /* yacc.c:1646 */ { // | extended_port_decl idl_global->set_parse_state (IDL_GlobalData::PS_ExtendedPortDeclSeen); } -#line 8101 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8120 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 448: -#line 5309 "fe/idl.ypp" /* yacc.c:1646 */ + case 459: +#line 5361 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 8110 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8129 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 449: -#line 5316 "fe/idl.ypp" /* yacc.c:1646 */ + case 460: +#line 5368 "fe/idl.ypp" /* yacc.c:1646 */ { // provides_decl : IDL_PROVIDES interface_type id UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -8198,22 +8217,22 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 8202 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8221 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 450: -#line 5407 "fe/idl.ypp" /* yacc.c:1646 */ + case 461: +#line 5459 "fe/idl.ypp" /* yacc.c:1646 */ { // interface_type : scoped_name // Lookups and checking are done where the 'interface_type' // token is used, in 'provides_decl' and 'uses_decl'. (yyval.idlist) = (yyvsp[0].idlist); } -#line 8213 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8232 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 451: -#line 5414 "fe/idl.ypp" /* yacc.c:1646 */ + case 462: +#line 5466 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_OBJECT Identifier *corba_id = 0; @@ -8237,11 +8256,11 @@ yyreduce: conc_name), 1); } -#line 8241 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8260 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 452: -#line 5440 "fe/idl.ypp" /* yacc.c:1646 */ + case 463: +#line 5492 "fe/idl.ypp" /* yacc.c:1646 */ { // uses_decl : uses_opt_multiple interface_type id UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -8345,40 +8364,40 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 8349 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8368 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 453: -#line 5547 "fe/idl.ypp" /* yacc.c:1646 */ + case 464: +#line 5599 "fe/idl.ypp" /* yacc.c:1646 */ { // uses_opt_multiple : IDL_USES opt_multiple // 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 8360 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8379 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 454: -#line 5557 "fe/idl.ypp" /* yacc.c:1646 */ + case 465: +#line 5609 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_multiple : IDL_MULTIPLE (yyval.bval) = true; } -#line 8369 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8388 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 455: -#line 5562 "fe/idl.ypp" /* yacc.c:1646 */ + case 466: +#line 5614 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.bval) = false; } -#line 8378 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8397 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 456: -#line 5569 "fe/idl.ypp" /* yacc.c:1646 */ + case 467: +#line 5621 "fe/idl.ypp" /* yacc.c:1646 */ { // emits_decl : IDL_EMITS scoped_name id UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -8449,11 +8468,11 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 8453 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8472 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 457: -#line 5642 "fe/idl.ypp" /* yacc.c:1646 */ + case 468: +#line 5694 "fe/idl.ypp" /* yacc.c:1646 */ { // publishes_decl : IDL_PUBLISHES scoped_name id UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -8524,11 +8543,11 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 8528 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8547 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 458: -#line 5715 "fe/idl.ypp" /* yacc.c:1646 */ + case 469: +#line 5767 "fe/idl.ypp" /* yacc.c:1646 */ { // consumes_decl : IDL_CONSUMES scoped_name id UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -8599,11 +8618,11 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 8603 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8622 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 459: -#line 5789 "fe/idl.ypp" /* yacc.c:1646 */ + case 470: +#line 5841 "fe/idl.ypp" /* yacc.c:1646 */ { // home_decl : home_header UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -8641,11 +8660,11 @@ yyreduce: */ idl_global->scopes ().push (h); } -#line 8645 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8664 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 460: -#line 5827 "fe/idl.ypp" /* yacc.c:1646 */ + case 471: +#line 5879 "fe/idl.ypp" /* yacc.c:1646 */ { // home_body /* @@ -8653,65 +8672,65 @@ yyreduce: */ idl_global->scopes ().pop (); } -#line 8657 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8676 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 461: -#line 5838 "fe/idl.ypp" /* yacc.c:1646 */ + case 472: +#line 5890 "fe/idl.ypp" /* yacc.c:1646 */ { // home_header : IDL_HOME idl_global->set_parse_state (IDL_GlobalData::PS_HomeSeen); } -#line 8666 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8685 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 462: -#line 5843 "fe/idl.ypp" /* yacc.c:1646 */ + case 473: +#line 5895 "fe/idl.ypp" /* yacc.c:1646 */ { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_HomeIDSeen); } -#line 8675 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8694 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 463: -#line 5848 "fe/idl.ypp" /* yacc.c:1646 */ + case 474: +#line 5900 "fe/idl.ypp" /* yacc.c:1646 */ { // home_inheritance_spec idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen); } -#line 8684 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8703 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 464: -#line 5853 "fe/idl.ypp" /* yacc.c:1646 */ + case 475: +#line 5905 "fe/idl.ypp" /* yacc.c:1646 */ { // supports_spec idl_global->set_parse_state (IDL_GlobalData::PS_SupportSpecSeen); } -#line 8693 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8712 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 465: -#line 5858 "fe/idl.ypp" /* yacc.c:1646 */ + case 476: +#line 5910 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_MANAGES idl_global->set_parse_state (IDL_GlobalData::PS_ManagesSeen); } -#line 8702 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8721 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 466: -#line 5863 "fe/idl.ypp" /* yacc.c:1646 */ + case 477: +#line 5915 "fe/idl.ypp" /* yacc.c:1646 */ { // scoped_name idl_global->set_parse_state (IDL_GlobalData::PS_ManagesIDSeen); } -#line 8711 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8730 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 467: -#line 5868 "fe/idl.ypp" /* yacc.c:1646 */ + case 478: +#line 5920 "fe/idl.ypp" /* yacc.c:1646 */ { // primary_key_spec idl_global->set_parse_state (IDL_GlobalData::PS_PrimaryKeySpecSeen); @@ -8758,121 +8777,121 @@ yyreduce: (yyvsp[-6].nlval) = 0; } } -#line 8762 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8781 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 468: -#line 5918 "fe/idl.ypp" /* yacc.c:1646 */ + case 479: +#line 5970 "fe/idl.ypp" /* yacc.c:1646 */ { // home_inheritance_spec ':' idl_global->set_parse_state (IDL_GlobalData::PS_InheritColonSeen); } -#line 8771 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8790 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 469: -#line 5923 "fe/idl.ypp" /* yacc.c:1646 */ + case 480: +#line 5975 "fe/idl.ypp" /* yacc.c:1646 */ { // scoped_name (yyval.idlist) = (yyvsp[0].idlist); } -#line 8780 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8799 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 470: -#line 5928 "fe/idl.ypp" /* yacc.c:1646 */ + case 481: +#line 5980 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.idlist) = 0; } -#line 8789 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8808 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 471: -#line 5937 "fe/idl.ypp" /* yacc.c:1646 */ + case 482: +#line 5989 "fe/idl.ypp" /* yacc.c:1646 */ { // primary_key_spec : IDL_PRIMARYKEY scoped_name (yyval.idlist) = (yyvsp[0].idlist); } -#line 8798 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8817 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 472: -#line 5942 "fe/idl.ypp" /* yacc.c:1646 */ + case 483: +#line 5994 "fe/idl.ypp" /* yacc.c:1646 */ { /* | EMPTY */ (yyval.idlist) = 0; } -#line 8807 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8826 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 473: -#line 5950 "fe/idl.ypp" /* yacc.c:1646 */ + case 484: +#line 6002 "fe/idl.ypp" /* yacc.c:1646 */ { // home_body : '{' idl_global->set_parse_state (IDL_GlobalData::PS_HomeSqSeen); } -#line 8816 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8835 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 474: -#line 5955 "fe/idl.ypp" /* yacc.c:1646 */ + case 485: +#line 6007 "fe/idl.ypp" /* yacc.c:1646 */ { // home_exports idl_global->set_parse_state (IDL_GlobalData::PS_HomeBodySeen); } -#line 8825 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8844 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 475: -#line 5960 "fe/idl.ypp" /* yacc.c:1646 */ + case 486: +#line 6012 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_HomeQsSeen); } -#line 8834 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8853 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 479: -#line 5974 "fe/idl.ypp" /* yacc.c:1646 */ + case 490: +#line 6026 "fe/idl.ypp" /* yacc.c:1646 */ { // home_export : factory_decl idl_global->set_parse_state (IDL_GlobalData::PS_FactoryDeclSeen); } -#line 8843 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8862 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 480: -#line 5979 "fe/idl.ypp" /* yacc.c:1646 */ + case 491: +#line 6031 "fe/idl.ypp" /* yacc.c:1646 */ { // | ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 8852 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8871 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 481: -#line 5984 "fe/idl.ypp" /* yacc.c:1646 */ + case 492: +#line 6036 "fe/idl.ypp" /* yacc.c:1646 */ { // | finder_decl idl_global->set_parse_state (IDL_GlobalData::PS_FinderDeclSeen); } -#line 8861 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8880 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 482: -#line 5989 "fe/idl.ypp" /* yacc.c:1646 */ + case 493: +#line 6041 "fe/idl.ypp" /* yacc.c:1646 */ { // | ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 8870 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8889 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 483: -#line 5998 "fe/idl.ypp" /* yacc.c:1646 */ + case 494: +#line 6050 "fe/idl.ypp" /* yacc.c:1646 */ { -// factory_decl : IDL_FACTORY id +// factory_decl : IDL_FACTORY defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ((yyvsp[0].idval), 0); @@ -8894,20 +8913,20 @@ yyreduce: */ idl_global->scopes ().push (f); } -#line 8898 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8917 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 484: -#line 6022 "fe/idl.ypp" /* yacc.c:1646 */ + case 495: +#line 6074 "fe/idl.ypp" /* yacc.c:1646 */ { // init_parameter_list idl_global->set_parse_state (IDL_GlobalData::PS_OpParsCompleted); } -#line 8907 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8926 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 485: -#line 6027 "fe/idl.ypp" /* yacc.c:1646 */ + case 496: +#line 6079 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_raises UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -8926,13 +8945,13 @@ yyreduce: */ idl_global->scopes ().pop (); } -#line 8930 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8949 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 486: -#line 6050 "fe/idl.ypp" /* yacc.c:1646 */ + case 497: +#line 6102 "fe/idl.ypp" /* yacc.c:1646 */ { -// finder_decl : IDL_FINDER id +// finder_decl : IDL_FINDER defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ((yyvsp[0].idval), 0); @@ -8958,20 +8977,20 @@ yyreduce: */ idl_global->scopes ().push (f); } -#line 8962 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8981 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 487: -#line 6078 "fe/idl.ypp" /* yacc.c:1646 */ + case 498: +#line 6130 "fe/idl.ypp" /* yacc.c:1646 */ { // init_parameter_list idl_global->set_parse_state (IDL_GlobalData::PS_OpParsCompleted); } -#line 8971 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 8990 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 488: -#line 6083 "fe/idl.ypp" /* yacc.c:1646 */ + case 499: +#line 6135 "fe/idl.ypp" /* yacc.c:1646 */ { // opt_raises UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -8990,13 +9009,13 @@ yyreduce: */ idl_global->scopes ().pop (); } -#line 8994 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9013 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 494: -#line 6117 "fe/idl.ypp" /* yacc.c:1646 */ + case 505: +#line 6169 "fe/idl.ypp" /* yacc.c:1646 */ { -// event_concrete_forward_decl : IDL_EVENTTYPE id +// event_concrete_forward_decl : IDL_EVENTTYPE defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ((yyvsp[0].idval), 0); @@ -9018,13 +9037,13 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 9022 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9041 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 495: -#line 6146 "fe/idl.ypp" /* yacc.c:1646 */ + case 506: +#line 6198 "fe/idl.ypp" /* yacc.c:1646 */ { -// event_abs_forward_decl : IDL_ABSTRACT IDL_EVENTTYPE id +// event_abs_forward_decl : IDL_ABSTRACT IDL_EVENTTYPE defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ((yyvsp[0].idval), 0); @@ -9046,11 +9065,11 @@ yyreduce: delete (yyvsp[0].idval); (yyvsp[0].idval) = 0; } -#line 9050 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9069 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 496: -#line 6174 "fe/idl.ypp" /* yacc.c:1646 */ + case 507: +#line 6226 "fe/idl.ypp" /* yacc.c:1646 */ { // event_abs_decl : event_abs_header event_rest_of_header UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -9095,29 +9114,29 @@ yyreduce: delete (yyvsp[-1].idval); (yyvsp[-1].idval) = 0; } -#line 9099 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9118 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 497: -#line 6219 "fe/idl.ypp" /* yacc.c:1646 */ + case 508: +#line 6271 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeSqSeen); } -#line 9108 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9127 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 498: -#line 6224 "fe/idl.ypp" /* yacc.c:1646 */ + case 509: +#line 6276 "fe/idl.ypp" /* yacc.c:1646 */ { // exports idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeBodySeen); } -#line 9117 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9136 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 499: -#line 6229 "fe/idl.ypp" /* yacc.c:1646 */ + case 510: +#line 6281 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeQsSeen); @@ -9127,22 +9146,22 @@ yyreduce: */ idl_global->scopes ().pop (); } -#line 9131 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9150 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 500: -#line 6244 "fe/idl.ypp" /* yacc.c:1646 */ + case 511: +#line 6296 "fe/idl.ypp" /* yacc.c:1646 */ { -// event_abs_header : IDL_ABSTRACT IDL_EVENTTYPE id +// event_abs_header : IDL_ABSTRACT IDL_EVENTTYPE defining_id (yyval.idval) = (yyvsp[0].idval); } -#line 9140 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9159 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 501: -#line 6254 "fe/idl.ypp" /* yacc.c:1646 */ + case 512: +#line 6306 "fe/idl.ypp" /* yacc.c:1646 */ { -// event_custom_header : IDL_CUSTOM IDL_EVENTTYPE id +// event_custom_header : IDL_CUSTOM IDL_EVENTTYPE defining_id idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeIDSeen); ACE_DEBUG ((LM_DEBUG, @@ -9154,31 +9173,31 @@ yyreduce: ACE_TEXT (" custom yet\n"))); (yyval.idval) = 0; } -#line 9158 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9177 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 502: -#line 6272 "fe/idl.ypp" /* yacc.c:1646 */ + case 513: +#line 6324 "fe/idl.ypp" /* yacc.c:1646 */ { -// event_plain_header : IDL_EVENTTYPE id +// event_plain_header : IDL_EVENTTYPE defining_id idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeIDSeen); (yyval.idval) = (yyvsp[0].idval); } -#line 9169 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9188 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 503: -#line 6282 "fe/idl.ypp" /* yacc.c:1646 */ + case 514: +#line 6334 "fe/idl.ypp" /* yacc.c:1646 */ { // event_rest_of_header : inheritance_spec idl_global->set_parse_state (IDL_GlobalData::PS_InheritSpecSeen); } -#line 9178 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9197 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 504: -#line 6287 "fe/idl.ypp" /* yacc.c:1646 */ + case 515: +#line 6339 "fe/idl.ypp" /* yacc.c:1646 */ { // supports_spec idl_global->set_parse_state (IDL_GlobalData::PS_SupportSpecSeen); @@ -9208,11 +9227,11 @@ yyreduce: (yyvsp[-2].nlval) = 0; } } -#line 9212 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9231 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 505: -#line 6321 "fe/idl.ypp" /* yacc.c:1646 */ + case 516: +#line 6373 "fe/idl.ypp" /* yacc.c:1646 */ { // event_decl : event_header event_rest_of_header UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -9262,29 +9281,29 @@ yyreduce: */ idl_global->scopes ().push (e); } -#line 9266 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9285 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 506: -#line 6371 "fe/idl.ypp" /* yacc.c:1646 */ + case 517: +#line 6423 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeSqSeen); } -#line 9275 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9294 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 507: -#line 6376 "fe/idl.ypp" /* yacc.c:1646 */ + case 518: +#line 6428 "fe/idl.ypp" /* yacc.c:1646 */ { // value_elements idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeBodySeen); } -#line 9284 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9303 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 508: -#line 6381 "fe/idl.ypp" /* yacc.c:1646 */ + case 519: +#line 6433 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeQsSeen); @@ -9294,120 +9313,120 @@ yyreduce: */ idl_global->scopes ().pop (); } -#line 9298 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9317 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 509: -#line 6394 "fe/idl.ypp" /* yacc.c:1646 */ + case 520: +#line 6446 "fe/idl.ypp" /* yacc.c:1646 */ { // event_header : event_custom_header (yyval.idval) = (yyvsp[0].idval); } -#line 9307 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9326 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 510: -#line 6399 "fe/idl.ypp" /* yacc.c:1646 */ + case 521: +#line 6451 "fe/idl.ypp" /* yacc.c:1646 */ { // event_header : event_plain_header (yyval.idval) = (yyvsp[0].idval); } -#line 9316 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9335 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 511: -#line 6407 "fe/idl.ypp" /* yacc.c:1646 */ + case 522: +#line 6459 "fe/idl.ypp" /* yacc.c:1646 */ { // formal_parameter_type : IDL_TYPENAME (yyval.ntval) = AST_Decl::NT_type; } -#line 9325 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9344 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 512: -#line 6412 "fe/idl.ypp" /* yacc.c:1646 */ + case 523: +#line 6464 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_STRUCT (yyval.ntval) = AST_Decl::NT_struct; } -#line 9334 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9353 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 513: -#line 6417 "fe/idl.ypp" /* yacc.c:1646 */ + case 524: +#line 6469 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_UNION (yyval.ntval) = AST_Decl::NT_union; } -#line 9343 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9362 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 514: -#line 6422 "fe/idl.ypp" /* yacc.c:1646 */ + case 525: +#line 6474 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_EVENTTYPE (yyval.ntval) = AST_Decl::NT_eventtype; } -#line 9352 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9371 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 515: -#line 6427 "fe/idl.ypp" /* yacc.c:1646 */ + case 526: +#line 6479 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_SEQUENCE (yyval.ntval) = AST_Decl::NT_sequence; } -#line 9361 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9380 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 516: -#line 6432 "fe/idl.ypp" /* yacc.c:1646 */ + case 527: +#line 6484 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_INTERFACE (yyval.ntval) = AST_Decl::NT_interface; } -#line 9370 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9389 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 517: -#line 6437 "fe/idl.ypp" /* yacc.c:1646 */ + case 528: +#line 6489 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_VALUETYPE (yyval.ntval) = AST_Decl::NT_valuetype; } -#line 9379 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9398 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 518: -#line 6442 "fe/idl.ypp" /* yacc.c:1646 */ + case 529: +#line 6494 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_ENUM (yyval.ntval) = AST_Decl::NT_enum; } -#line 9388 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9407 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 519: -#line 6447 "fe/idl.ypp" /* yacc.c:1646 */ + case 530: +#line 6499 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_EXCEPTION (yyval.ntval) = AST_Decl::NT_except; } -#line 9397 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9416 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 520: -#line 6452 "fe/idl.ypp" /* yacc.c:1646 */ + case 531: +#line 6504 "fe/idl.ypp" /* yacc.c:1646 */ { // IDL_CONST const_type (yyval.ntval) = AST_Decl::NT_const; t_param_const_type = (yyvsp[0].etval); } -#line 9407 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9426 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 521: -#line 6461 "fe/idl.ypp" /* yacc.c:1646 */ + case 532: +#line 6513 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_formal_parameter : formal_parameter formal_parameters if ((yyvsp[0].plval) == 0) @@ -9438,20 +9457,20 @@ yyreduce: (yyval.plval) = (yyvsp[0].plval); } -#line 9442 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9461 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 522: -#line 6495 "fe/idl.ypp" /* yacc.c:1646 */ + case 533: +#line 6547 "fe/idl.ypp" /* yacc.c:1646 */ { // formal_parameters : formal_parameters ',' // Maybe add a new parse state to set here. } -#line 9451 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9470 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 523: -#line 6500 "fe/idl.ypp" /* yacc.c:1646 */ + case 534: +#line 6552 "fe/idl.ypp" /* yacc.c:1646 */ { // formal_parameter if ((yyvsp[-3].plval) == 0) @@ -9467,20 +9486,20 @@ yyreduce: delete (yyvsp[0].pival); (yyvsp[0].pival) = 0; } -#line 9471 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9490 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 524: -#line 6516 "fe/idl.ypp" /* yacc.c:1646 */ + case 535: +#line 6568 "fe/idl.ypp" /* yacc.c:1646 */ { // /* EMPTY */ (yyval.plval) = 0; } -#line 9480 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9499 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 525: -#line 6524 "fe/idl.ypp" /* yacc.c:1646 */ + case 536: +#line 6576 "fe/idl.ypp" /* yacc.c:1646 */ { // formal_parameter : formal_parameter_type IDENTIFIER @@ -9506,11 +9525,11 @@ yyreduce: tao_enum_constant_decl = 0; } } -#line 9510 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9529 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 526: -#line 6550 "fe/idl.ypp" /* yacc.c:1646 */ + case 537: +#line 6602 "fe/idl.ypp" /* yacc.c:1646 */ { ACE_NEW_RETURN ((yyval.pival), FE_Utils::T_Param_Info, @@ -9525,11 +9544,11 @@ yyreduce: ACE::strdelete ((yyvsp[0].strval)); (yyvsp[0].strval) = 0; } -#line 9529 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9548 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 527: -#line 6568 "fe/idl.ypp" /* yacc.c:1646 */ + case 538: +#line 6620 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_formal_parameter_name : formal_parameter_name formal_parameter_names ACE_NEW_RETURN ((yyval.slval), @@ -9537,11 +9556,11 @@ yyreduce: (yyvsp[0].slval)), 1); } -#line 9541 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9560 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 528: -#line 6579 "fe/idl.ypp" /* yacc.c:1646 */ + case 539: +#line 6631 "fe/idl.ypp" /* yacc.c:1646 */ { // formal_parameter_names : formal_parameter_names ',' formal_parameter_name UTL_StrList *sl = 0; @@ -9560,42 +9579,42 @@ yyreduce: (yyval.slval) = (yyvsp[-2].slval); } } -#line 9564 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9583 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 529: -#line 6598 "fe/idl.ypp" /* yacc.c:1646 */ + case 540: +#line 6650 "fe/idl.ypp" /* yacc.c:1646 */ { // /* EMPTY */ (yyval.slval) = 0; } -#line 9573 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9592 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 530: -#line 6606 "fe/idl.ypp" /* yacc.c:1646 */ + case 541: +#line 6658 "fe/idl.ypp" /* yacc.c:1646 */ { // formal_parameter_name : IDENTIFIER ACE_NEW_RETURN ((yyval.sval), UTL_String ((yyvsp[0].strval), true), 1); } -#line 9584 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9603 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 531: -#line 6616 "fe/idl.ypp" /* yacc.c:1646 */ + case 542: +#line 6668 "fe/idl.ypp" /* yacc.c:1646 */ { // porttype_decl : IDL_PORTTYPE idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeSeen); } -#line 9593 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9612 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 532: -#line 6621 "fe/idl.ypp" /* yacc.c:1646 */ + case 543: +#line 6673 "fe/idl.ypp" /* yacc.c:1646 */ { -// IDENTIFIER +// annotations IDENTIFIER idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeIDSeen); UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -9612,29 +9631,29 @@ yyreduce: // Push it on the scopes stack. idl_global->scopes ().push (p); } -#line 9616 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9635 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 533: -#line 6640 "fe/idl.ypp" /* yacc.c:1646 */ + case 544: +#line 6692 "fe/idl.ypp" /* yacc.c:1646 */ { // '{' idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeSqSeen); } -#line 9625 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9644 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 534: -#line 6645 "fe/idl.ypp" /* yacc.c:1646 */ + case 545: +#line 6697 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_port_export idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeBodySeen); } -#line 9634 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9653 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 535: -#line 6650 "fe/idl.ypp" /* yacc.c:1646 */ + case 546: +#line 6702 "fe/idl.ypp" /* yacc.c:1646 */ { // '}' idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeQsSeen); @@ -9642,84 +9661,84 @@ yyreduce: // Done with this port type - pop it off the scopes stack. idl_global->scopes ().pop (); } -#line 9646 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9665 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 536: -#line 6661 "fe/idl.ypp" /* yacc.c:1646 */ + case 547: +#line 6713 "fe/idl.ypp" /* yacc.c:1646 */ { // at_least_one_port_export : port_export port_exports } -#line 9654 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9673 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 537: -#line 6668 "fe/idl.ypp" /* yacc.c:1646 */ + case 548: +#line 6720 "fe/idl.ypp" /* yacc.c:1646 */ { // port_exports : port_exports port_export } -#line 9662 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9681 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 538: -#line 6672 "fe/idl.ypp" /* yacc.c:1646 */ + case 549: +#line 6724 "fe/idl.ypp" /* yacc.c:1646 */ { // | /* EMPTY */ } -#line 9670 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9689 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 539: -#line 6679 "fe/idl.ypp" /* yacc.c:1646 */ + case 550: +#line 6731 "fe/idl.ypp" /* yacc.c:1646 */ { // port_export : provides_decl } -#line 9678 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9697 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 540: -#line 6683 "fe/idl.ypp" /* yacc.c:1646 */ + case 551: +#line 6735 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' } -#line 9686 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9705 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 541: -#line 6687 "fe/idl.ypp" /* yacc.c:1646 */ + case 552: +#line 6739 "fe/idl.ypp" /* yacc.c:1646 */ { // | uses_decl } -#line 9694 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9713 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 542: -#line 6691 "fe/idl.ypp" /* yacc.c:1646 */ + case 553: +#line 6743 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' } -#line 9702 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9721 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 543: -#line 6695 "fe/idl.ypp" /* yacc.c:1646 */ + case 554: +#line 6747 "fe/idl.ypp" /* yacc.c:1646 */ { // | attribute idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclSeen); } -#line 9711 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9730 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 544: -#line 6700 "fe/idl.ypp" /* yacc.c:1646 */ + case 555: +#line 6752 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' } -#line 9719 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9738 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 545: -#line 6707 "fe/idl.ypp" /* yacc.c:1646 */ + case 556: +#line 6759 "fe/idl.ypp" /* yacc.c:1646 */ { // extended_port_decl : IDL_PORT scoped_name IDENTIFIER idl_global->set_parse_state (IDL_GlobalData::PS_ExtendedPortDeclSeen); @@ -9789,11 +9808,11 @@ yyreduce: delete (yyvsp[-1].idlist); (yyvsp[-1].idlist) = 0; } -#line 9793 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9812 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 546: -#line 6777 "fe/idl.ypp" /* yacc.c:1646 */ + case 557: +#line 6829 "fe/idl.ypp" /* yacc.c:1646 */ { // | IDL_MIRRORPORT scoped_name IDENTIFIER idl_global->set_parse_state (IDL_GlobalData::PS_MirrorPortDeclSeen); @@ -9841,13 +9860,13 @@ yyreduce: delete (yyvsp[-1].idlist); (yyvsp[-1].idlist) = 0; } -#line 9845 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9864 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 547: -#line 6828 "fe/idl.ypp" /* yacc.c:1646 */ + case 558: +#line 6880 "fe/idl.ypp" /* yacc.c:1646 */ { -// at_least_one_actual_parameter : actual_parameter actual_parameters +// at_least_one_actual_parameter : annotations actual_parameter actual_parameters if ((yyvsp[0].alval) == 0) { ACE_NEW_RETURN ((yyvsp[0].alval), @@ -9858,37 +9877,37 @@ yyreduce: (yyvsp[0].alval)->enqueue_head ((yyvsp[-1].dcval)); (yyval.alval) = (yyvsp[0].alval); } -#line 9862 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9881 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 548: -#line 6844 "fe/idl.ypp" /* yacc.c:1646 */ + case 559: +#line 6896 "fe/idl.ypp" /* yacc.c:1646 */ { -// actual_parameters : actual_parameters ',' actual_parameter - if ((yyvsp[-2].alval) == 0) +// actual_parameters : actual_parameters ',' annotations actual_parameter + if ((yyvsp[-3].alval) == 0) { - ACE_NEW_RETURN ((yyvsp[-2].alval), + ACE_NEW_RETURN ((yyvsp[-3].alval), FE_Utils::T_ARGLIST, 1); } - (yyvsp[-2].alval)->enqueue_tail ((yyvsp[0].dcval)); - (yyval.alval) = (yyvsp[-2].alval); + (yyvsp[-3].alval)->enqueue_tail ((yyvsp[0].dcval)); + (yyval.alval) = (yyvsp[-3].alval); } -#line 9879 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9898 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 549: -#line 6857 "fe/idl.ypp" /* yacc.c:1646 */ + case 560: +#line 6909 "fe/idl.ypp" /* yacc.c:1646 */ { // | /* EMPTY */ (yyval.alval) = 0; } -#line 9888 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9907 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 550: -#line 6865 "fe/idl.ypp" /* yacc.c:1646 */ + case 561: +#line 6917 "fe/idl.ypp" /* yacc.c:1646 */ { // actual_parameter : expression // To avoid grammar conflicts with this LALR(1) parser, @@ -9945,29 +9964,29 @@ yyreduce: 0); } } -#line 9949 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9968 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 552: -#line 6929 "fe/idl.ypp" /* yacc.c:1646 */ + case 563: +#line 6981 "fe/idl.ypp" /* yacc.c:1646 */ { // connector_header : IDL_CONNECTOR idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorSeen); } -#line 9958 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9977 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 553: -#line 6934 "fe/idl.ypp" /* yacc.c:1646 */ + case 564: +#line 6986 "fe/idl.ypp" /* yacc.c:1646 */ { -// IDENTIFIER +// annotations IDENTIFIER idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorIDSeen); } -#line 9967 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 9986 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 554: -#line 6939 "fe/idl.ypp" /* yacc.c:1646 */ + case 565: +#line 6991 "fe/idl.ypp" /* yacc.c:1646 */ { // component_inheritance_spec UTL_Scope *s = idl_global->scopes ().top_non_null (); @@ -10020,29 +10039,29 @@ yyreduce: idl_global->scopes ().push (c); } } -#line 10024 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10043 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 555: -#line 6995 "fe/idl.ypp" /* yacc.c:1646 */ + case 566: +#line 7047 "fe/idl.ypp" /* yacc.c:1646 */ { // connector_body " '{' idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorSqSeen); } -#line 10033 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10052 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 556: -#line 7000 "fe/idl.ypp" /* yacc.c:1646 */ + case 567: +#line 7052 "fe/idl.ypp" /* yacc.c:1646 */ { // connector_exports idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorBodySeen); } -#line 10042 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10061 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 557: -#line 7005 "fe/idl.ypp" /* yacc.c:1646 */ + case 568: +#line 7057 "fe/idl.ypp" /* yacc.c:1646 */ { // '} idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorQsSeen); @@ -10050,83 +10069,83 @@ yyreduce: // Done with this connector - pop it off the scope stack. idl_global->scopes ().pop (); } -#line 10054 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10073 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 560: -#line 7021 "fe/idl.ypp" /* yacc.c:1646 */ + case 571: +#line 7073 "fe/idl.ypp" /* yacc.c:1646 */ { // connector_export : provides_decl idl_global->set_parse_state (IDL_GlobalData::PS_ProvidesDeclSeen); } -#line 10063 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10082 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 561: -#line 7026 "fe/idl.ypp" /* yacc.c:1646 */ + case 572: +#line 7078 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 10072 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10091 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 562: -#line 7031 "fe/idl.ypp" /* yacc.c:1646 */ + case 573: +#line 7083 "fe/idl.ypp" /* yacc.c:1646 */ { // | uses_decl idl_global->set_parse_state (IDL_GlobalData::PS_UsesDeclSeen); } -#line 10081 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10100 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 563: -#line 7036 "fe/idl.ypp" /* yacc.c:1646 */ + case 574: +#line 7088 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 10090 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10109 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 564: -#line 7041 "fe/idl.ypp" /* yacc.c:1646 */ + case 575: +#line 7093 "fe/idl.ypp" /* yacc.c:1646 */ { // | attribute idl_global->set_parse_state (IDL_GlobalData::PS_AttrDeclSeen); } -#line 10099 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10118 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 565: -#line 7046 "fe/idl.ypp" /* yacc.c:1646 */ + case 576: +#line 7098 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 10108 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10127 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 566: -#line 7051 "fe/idl.ypp" /* yacc.c:1646 */ + case 577: +#line 7103 "fe/idl.ypp" /* yacc.c:1646 */ { // | extended_port_decl idl_global->set_parse_state (IDL_GlobalData::PS_ExtendedPortDeclSeen); } -#line 10117 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10136 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; - case 567: -#line 7056 "fe/idl.ypp" /* yacc.c:1646 */ + case 578: +#line 7108 "fe/idl.ypp" /* yacc.c:1646 */ { // ';' idl_global->set_parse_state (IDL_GlobalData::PS_NoState); } -#line 10126 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10145 "fe/idl.tab.cpp" /* yacc.c:1646 */ break; -#line 10130 "fe/idl.tab.cpp" /* yacc.c:1646 */ +#line 10149 "fe/idl.tab.cpp" /* yacc.c:1646 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -10354,7 +10373,7 @@ yyreturn: #endif return yyresult; } -#line 7062 "fe/idl.ypp" /* yacc.c:1906 */ +#line 7114 "fe/idl.ypp" /* yacc.c:1906 */ /* programs */ diff --git a/TAO/TAO_IDL/fe/idl.tab.hpp b/TAO/TAO_IDL/fe/idl.tab.hpp index 6a6cf292f4a..a14c0d7cc86 100644 --- a/TAO/TAO_IDL/fe/idl.tab.hpp +++ b/TAO/TAO_IDL/fe/idl.tab.hpp @@ -136,7 +136,7 @@ extern int tao_yydebug; typedef union YYSTYPE YYSTYPE; union YYSTYPE { -#line 154 "fe/idl.ypp" /* yacc.c:1909 */ +#line 152 "fe/idl.ypp" /* yacc.c:1909 */ AST_Decl *dcval; /* Decl value */ UTL_StrList *slval; /* String list */ diff --git a/TAO/TAO_IDL/fe/idl.ypp b/TAO/TAO_IDL/fe/idl.ypp index d186fa2b832..0fb4ac1ac93 100644 --- a/TAO/TAO_IDL/fe/idl.ypp +++ b/TAO/TAO_IDL/fe/idl.ypp @@ -339,6 +339,7 @@ AST_Expression::ExprType t_param_const_type = AST_Expression::EV_none; %type <bval> opt_truncatable opt_multiple uses_opt_multiple %type <idval> interface_decl value_decl union_decl struct_decl id +%type <idval> defining_id %type <idval> event_header event_plain_header event_custom_header %type <idval> event_abs_header @@ -359,7 +360,7 @@ AST_Expression::ExprType t_param_const_type = AST_Expression::EV_none; start : definitions ; definitions - : definitions definition + : definitions annotations definition | /* EMPTY */ ; @@ -376,11 +377,18 @@ definition ; at_least_one_definition - : definitions definition + : definitions annotations definition ; fixed_definition - : type_dcl + : + /* TODO: + annotation_dcl + { + idl_global->set_parse_state (IDL_GlobalData::PS_AnnotationDeclSeen); + } + | */ + type_dcl { // fixed_definition : type_dcl idl_global->set_parse_state (IDL_GlobalData::PS_TypeDeclSeen); @@ -694,7 +702,7 @@ at_least_one_tpl_definition ; tpl_definitions - : tpl_definitions tpl_definition + : tpl_definitions annotations tpl_definition | /* EMPTY */ ; @@ -716,9 +724,9 @@ template_module_ref idl_global->set_parse_state ( IDL_GlobalData::PS_ModuleRefParamsSeen); } - id + defining_id { -// id +// defining_id idl_global->set_parse_state ( IDL_GlobalData::PS_ModuleRefIDSeen); @@ -810,9 +818,9 @@ template_module_inst idl_global->set_parse_state ( IDL_GlobalData::PS_InstModuleArgsSeen); } - id + defining_id { -// id +// defining_id idl_global->set_parse_state ( IDL_GlobalData::PS_InstModuleIDSeen); @@ -948,9 +956,9 @@ interface_decl: // interface_decl : IDL_INTERFACE idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceSeen); } - id + defining_id { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_InterfaceIDSeen); $$ = $3; } @@ -1291,9 +1299,9 @@ value_decl // value_decl : IDL_VALUETYPE idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeSeen); } - id + defining_id { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_ValueTypeIDSeen); $$ = $3; } @@ -1689,6 +1697,18 @@ id : IDENTIFIER } ; +defining_id : annotations IDENTIFIER + { + /* defining_id is a defining identifier + whereas id is usually a reference to a defining identifier */ + ACE_NEW_RETURN ($$, + Identifier ($2), + 1); + ACE::strdelete ($2); + $2 = 0; + } + ; + interface_forward : interface_decl { @@ -1804,9 +1824,9 @@ const_dcl : // const_type idl_global->set_parse_state (IDL_GlobalData::PS_ConstTypeSeen); } - id + defining_id { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_ConstIDSeen); } '=' @@ -2323,6 +2343,39 @@ positive_int_expr : } ; +/* Annotations + TODO: actions + TODO: annotation_dcl and friends + */ + +annotations + : annotations annotation_appl + | /* EMPTY */ + ; + +annotation_appl + : '@' scoped_name '(' annotation_appl_params ')' + | '@' scoped_name + ; + +annotation_appl_params + : const_expr + | at_least_one_annotation_appl_param + ; + +at_least_one_annotation_appl_param : + annotation_appl_param annotation_appl_named_params + ; + +annotation_appl_named_params + : annotation_appl_named_params ',' annotation_appl_param + | /* EMPTY */ + ; + +annotation_appl_param + : IDENTIFIER '=' const_expr + ; + type_dcl : IDL_TYPEDEF { @@ -2625,9 +2678,9 @@ simple_declarators ; simple_declarator : - id + defining_id { -// simple_declarator : id +// simple_declarator : defining_id UTL_ScopedName *sn = 0; ACE_NEW_RETURN (sn, UTL_ScopedName ($1, @@ -2778,9 +2831,9 @@ struct_decl : // struct_decl : IDL_STRUCT idl_global->set_parse_state (IDL_GlobalData::PS_StructSeen); } - id + defining_id { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_StructIDSeen); $$ = $3; } @@ -2864,6 +2917,7 @@ member : ; member_i : + annotations type_spec { // member_i : type_spec @@ -2885,21 +2939,21 @@ member_i : /* * Check for illegal recursive use of type. */ - if ($1 != 0 - && AST_illegal_recursive_type ($1)) + if ($2 != 0 + && AST_illegal_recursive_type ($2)) { idl_global->err ()->error1 (UTL_Error::EIDL_RECURSIVE_TYPE, - $1); + $2); } /* * Create a node representing a struct or exception member * Add it to the enclosing scope. */ else if (s != 0 - && $1 != 0 - && $3 != 0) + && $2 != 0 + && $4 != 0) { - for (UTL_DecllistActiveIterator l ($3); + for (UTL_DecllistActiveIterator l ($4); !l.is_done (); l.next ()) { @@ -2910,7 +2964,7 @@ member_i : continue; } - AST_Type *tp = d->compose ($1); + AST_Type *tp = d->compose ($2); if (tp == 0) { @@ -2928,9 +2982,9 @@ member_i : } } - $3->destroy (); - delete $3; - $3 = 0; + $4->destroy (); + delete $4; + $4 = 0; } | error { @@ -2951,9 +3005,9 @@ union_decl : // union_decl : IDL_UNION idl_global->set_parse_state (IDL_GlobalData::PS_UnionSeen); } - id + defining_id { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_UnionIDSeen); $$ = $3; } @@ -3010,7 +3064,7 @@ union_type { // ')' /* - * The top of the scopes must an empty union we added after we + * The top of the scopes must be an empty union we added after we * encountered 'union <id> switch ('. Now we are ready to add a * correct one. Temporarily remove the top so that we setup the * correct union in a right scope. @@ -3255,9 +3309,9 @@ case_branch : // case_branch : at_least_one_case_label idl_global->set_parse_state (IDL_GlobalData::PS_UnionLabelSeen); } - element_spec + annotations element_spec { -// element_spec +// annotations element_spec idl_global->set_parse_state (IDL_GlobalData::PS_UnionElemSeen); } ';' @@ -3265,7 +3319,7 @@ case_branch : // ';' UTL_Scope *s = idl_global->scopes ().top_non_null (); AST_UnionBranch *b = 0; - AST_Field *f = $3; + AST_Field *f = $4; idl_global->set_parse_state (IDL_GlobalData::PS_UnionElemCompleted); /* @@ -3274,7 +3328,7 @@ case_branch : */ if (s != 0 && $1 != 0 - && $3 != 0) + && $4 != 0) { b = idl_global->gen ()->create_union_branch ( @@ -3316,12 +3370,12 @@ at_least_one_case_label : ; case_labels - : case_labels case_label + : case_labels annotations case_label { -// case_labels : case_labels case_label +// case_labels : case_labels annotations case_label UTL_LabelList *ll = 0; ACE_NEW_RETURN (ll, - UTL_LabelList ($2, + UTL_LabelList ($3, 0), 1); @@ -3486,9 +3540,9 @@ enum_type : // enum_type : IDL_ENUM idl_global->set_parse_state (IDL_GlobalData::PS_EnumSeen); } - id + defining_id { -// id +// defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ($3, 0); @@ -3565,13 +3619,13 @@ enumerators ; enumerator : - IDENTIFIER + annotations IDENTIFIER { -// enumerator : IDENTIFIER +// enumerator : annotations IDENTIFIER UTL_Scope *s = idl_global->scopes ().top_non_null (); - Identifier id ($1); - ACE::strdelete ($1); - $1 = 0; + Identifier id ($2); + ACE::strdelete ($2); + $2 = 0; UTL_ScopedName n (&id, 0); AST_EnumVal *e = 0; @@ -3944,9 +3998,9 @@ wstring_head : ; array_declarator : - id + defining_id { -// array_declarator : id +// array_declarator : defining_id idl_global->set_parse_state (IDL_GlobalData::PS_ArrayIDSeen); } at_least_one_array_dim @@ -4279,9 +4333,9 @@ exception : // exception : IDL_EXCEPTION idl_global->set_parse_state (IDL_GlobalData::PS_ExceptSeen); } - id + defining_id { -// id +// defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ($3, 0); @@ -4337,13 +4391,13 @@ operation : // operation : opt_op_attribute op_type_spec idl_global->set_parse_state (IDL_GlobalData::PS_OpTypeSeen); } - IDENTIFIER + annotations IDENTIFIER { -// IDENTIFIER +// annotations IDENTIFIER UTL_Scope *s = idl_global->scopes ().top_non_null (); - Identifier id ($4); - ACE::strdelete ($4); - $4 = 0; + Identifier id ($5); + ACE::strdelete ($5); + $5 = 0; UTL_ScopedName n (&id, 0); AST_Operation *o = 0; @@ -4426,14 +4480,14 @@ operation : { o = AST_Operation::narrow_from_scope (s); - if ($8 != 0 && o != 0) + if ($9 != 0 && o != 0) { - (void) o->fe_add_exceptions ($8); + (void) o->fe_add_exceptions ($9); } - if ($10 != 0) + if ($11 != 0) { - (void) o->fe_add_context ($10); + (void) o->fe_add_context ($11); } } @@ -4483,9 +4537,9 @@ init_decl //@@ PS_FactorySeen? idl_global->set_parse_state (IDL_GlobalData::PS_OpTypeSeen); } - IDENTIFIER + annotations IDENTIFIER { -// IDENTIFIER +// annotations IDENTIFIER UTL_Scope *s = idl_global->scopes ().top_non_null (); if (s->is_abstract ()) @@ -4501,9 +4555,9 @@ init_decl idl_global->set_err_count (idl_global->err_count () + 1); } - Identifier id ($3); - ACE::strdelete ($3); - $3 = 0; + Identifier id ($4); + ACE::strdelete ($4); + $4 = 0; UTL_ScopedName n (&id, 0); @@ -4535,11 +4589,11 @@ init_decl // opt_raises idl_global->set_parse_state (IDL_GlobalData::PS_OpRaiseCompleted); - if ($7 != 0) + if ($8 != 0) { UTL_Scope *s = idl_global->scopes ().top_non_null (); AST_Factory *f = AST_Factory::narrow_from_scope (s); - (void) f->fe_add_exceptions ($7); + (void) f->fe_add_exceptions ($8); } idl_global->scopes ().pop (); @@ -5075,9 +5129,9 @@ component component_forward_decl : IDL_COMPONENT - id + defining_id { -// component_forward_decl : IDL_COMPONENT id +// component_forward_decl : IDL_COMPONENT defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ($2, 0); @@ -5167,9 +5221,9 @@ component_decl : component_header : IDL_COMPONENT - id + defining_id { -// component_header: IDL_COMPONENT id +// component_header: IDL_COMPONENT defining_id idl_global->set_parse_state (IDL_GlobalData::PS_ComponentIDSeen); } component_inheritance_spec @@ -5837,9 +5891,9 @@ home_header : // home_header : IDL_HOME idl_global->set_parse_state (IDL_GlobalData::PS_HomeSeen); } - id + defining_id { -// id +// defining_id idl_global->set_parse_state (IDL_GlobalData::PS_HomeIDSeen); } home_inheritance_spec @@ -5992,9 +6046,9 @@ home_export factory_decl : IDL_FACTORY - id + defining_id { -// factory_decl : IDL_FACTORY id +// factory_decl : IDL_FACTORY defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ($2, 0); @@ -6044,9 +6098,9 @@ factory_decl : finder_decl : IDL_FINDER - id + defining_id { -// finder_decl : IDL_FINDER id +// finder_decl : IDL_FINDER defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ($2, 0); @@ -6111,9 +6165,9 @@ event_forward_decl event_concrete_forward_decl : IDL_EVENTTYPE - id + defining_id { -// event_concrete_forward_decl : IDL_EVENTTYPE id +// event_concrete_forward_decl : IDL_EVENTTYPE defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ($2, 0); @@ -6140,9 +6194,9 @@ event_concrete_forward_decl : event_abs_forward_decl : IDL_ABSTRACT IDL_EVENTTYPE - id + defining_id { -// event_abs_forward_decl : IDL_ABSTRACT IDL_EVENTTYPE id +// event_abs_forward_decl : IDL_ABSTRACT IDL_EVENTTYPE defining_id UTL_Scope *s = idl_global->scopes ().top_non_null (); UTL_ScopedName n ($3, 0); @@ -6238,9 +6292,9 @@ event_abs_decl : event_abs_header : IDL_ABSTRACT IDL_EVENTTYPE - id + defining_id { -// event_abs_header : IDL_ABSTRACT IDL_EVENTTYPE id +// event_abs_header : IDL_ABSTRACT IDL_EVENTTYPE defining_id $$ = $3; } ; @@ -6248,9 +6302,9 @@ event_abs_header : event_custom_header : IDL_CUSTOM IDL_EVENTTYPE - id + defining_id { -// event_custom_header : IDL_CUSTOM IDL_EVENTTYPE id +// event_custom_header : IDL_CUSTOM IDL_EVENTTYPE defining_id idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeIDSeen); ACE_DEBUG ((LM_DEBUG, @@ -6266,9 +6320,9 @@ event_custom_header : event_plain_header : IDL_EVENTTYPE - id + defining_id { -// event_plain_header : IDL_EVENTTYPE id +// event_plain_header : IDL_EVENTTYPE defining_id idl_global->set_parse_state (IDL_GlobalData::PS_EventTypeIDSeen); $$ = $2; @@ -6615,15 +6669,15 @@ porttype_decl // porttype_decl : IDL_PORTTYPE idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeSeen); } - IDENTIFIER + annotations IDENTIFIER { -// IDENTIFIER +// annotations IDENTIFIER idl_global->set_parse_state (IDL_GlobalData::PS_PorttypeIDSeen); UTL_Scope *s = idl_global->scopes ().top_non_null (); - Identifier id ($3); - ACE::strdelete ($3); - $3 = 0; + Identifier id ($4); + ACE::strdelete ($4); + $4 = 0; UTL_ScopedName sn (&id, 0); AST_PortType *p = @@ -6822,25 +6876,25 @@ extended_port_decl ; at_least_one_actual_parameter - : actual_parameter actual_parameters + : annotations actual_parameter actual_parameters { -// at_least_one_actual_parameter : actual_parameter actual_parameters - if ($2 == 0) +// at_least_one_actual_parameter : annotations actual_parameter actual_parameters + if ($3 == 0) { - ACE_NEW_RETURN ($2, + ACE_NEW_RETURN ($3, FE_Utils::T_ARGLIST, 1); } - $2->enqueue_head ($1); - $<alval>$ = $2; + $3->enqueue_head ($2); + $<alval>$ = $3; } ; actual_parameters - : actual_parameters ',' actual_parameter + : actual_parameters ',' annotations actual_parameter { -// actual_parameters : actual_parameters ',' actual_parameter +// actual_parameters : actual_parameters ',' annotations actual_parameter if ($1 == 0) { ACE_NEW_RETURN ($1, @@ -6848,7 +6902,7 @@ actual_parameters 1); } - $1->enqueue_tail ($3); + $1->enqueue_tail ($4); $<alval>$ = $1; } | /* EMPTY */ @@ -6928,9 +6982,9 @@ connector_header // connector_header : IDL_CONNECTOR idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorSeen); } - IDENTIFIER + annotations IDENTIFIER { -// IDENTIFIER +// annotations IDENTIFIER idl_global->set_parse_state (IDL_GlobalData::PS_ConnectorIDSeen); } component_inheritance_spec @@ -6940,20 +6994,20 @@ connector_header AST_Connector *parent = 0; bool so_far_so_good = true; - Identifier id ($3); - ACE::strdelete ($3); - $3 = 0; + Identifier id ($4); + ACE::strdelete ($4); + $4 = 0; UTL_ScopedName sn (&id, 0); - if ($5 != 0) + if ($6 != 0) { AST_Decl *d = - s->lookup_by_name ($5); + s->lookup_by_name ($6); if (d == 0) { - idl_global->err ()->lookup_error ($5); + idl_global->err ()->lookup_error ($6); so_far_so_good = false; } @@ -6969,9 +7023,9 @@ connector_header so_far_so_good = false; } - $5->destroy (); - delete $5; - $5 = 0; + $6->destroy (); + delete $6; + $6 = 0; } if (so_far_so_good) diff --git a/TAO/TAO_IDL/fe/idl.yy.cpp b/TAO/TAO_IDL/fe/idl.yy.cpp index 15644ea96d1..5a7237f40ef 100644 --- a/TAO/TAO_IDL/fe/idl.yy.cpp +++ b/TAO/TAO_IDL/fe/idl.yy.cpp @@ -1,6 +1,6 @@ -#line 2 "fe/idl.yy.cpp" +#line 1 "fe/idl.yy.cpp" -#line 4 "fe/idl.yy.cpp" +#line 3 "fe/idl.yy.cpp" #define YY_INT_ALIGNED short int @@ -8,11 +8,17 @@ #define yy_create_buffer tao_yy_create_buffer #define yy_delete_buffer tao_yy_delete_buffer -#define yy_flex_debug tao_yy_flex_debug +#define yy_scan_buffer tao_yy_scan_buffer +#define yy_scan_string tao_yy_scan_string +#define yy_scan_bytes tao_yy_scan_bytes #define yy_init_buffer tao_yy_init_buffer #define yy_flush_buffer tao_yy_flush_buffer #define yy_load_buffer_state tao_yy_load_buffer_state #define yy_switch_to_buffer tao_yy_switch_to_buffer +#define yypush_buffer_state tao_yypush_buffer_state +#define yypop_buffer_state tao_yypop_buffer_state +#define yyensure_buffer_stack tao_yyensure_buffer_stack +#define yy_flex_debug tao_yy_flex_debug #define yyin tao_yyin #define yyleng tao_yyleng #define yylex tao_yylex @@ -27,16 +33,251 @@ #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 -#define YY_FLEX_MINOR_VERSION 5 -#define YY_FLEX_SUBMINOR_VERSION 35 +#define YY_FLEX_MINOR_VERSION 6 +#define YY_FLEX_SUBMINOR_VERSION 4 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif +#ifdef yy_create_buffer +#define tao_yy_create_buffer_ALREADY_DEFINED +#else +#define yy_create_buffer tao_yy_create_buffer +#endif + +#ifdef yy_delete_buffer +#define tao_yy_delete_buffer_ALREADY_DEFINED +#else +#define yy_delete_buffer tao_yy_delete_buffer +#endif + +#ifdef yy_scan_buffer +#define tao_yy_scan_buffer_ALREADY_DEFINED +#else +#define yy_scan_buffer tao_yy_scan_buffer +#endif + +#ifdef yy_scan_string +#define tao_yy_scan_string_ALREADY_DEFINED +#else +#define yy_scan_string tao_yy_scan_string +#endif + +#ifdef yy_scan_bytes +#define tao_yy_scan_bytes_ALREADY_DEFINED +#else +#define yy_scan_bytes tao_yy_scan_bytes +#endif + +#ifdef yy_init_buffer +#define tao_yy_init_buffer_ALREADY_DEFINED +#else +#define yy_init_buffer tao_yy_init_buffer +#endif + +#ifdef yy_flush_buffer +#define tao_yy_flush_buffer_ALREADY_DEFINED +#else +#define yy_flush_buffer tao_yy_flush_buffer +#endif + +#ifdef yy_load_buffer_state +#define tao_yy_load_buffer_state_ALREADY_DEFINED +#else +#define yy_load_buffer_state tao_yy_load_buffer_state +#endif + +#ifdef yy_switch_to_buffer +#define tao_yy_switch_to_buffer_ALREADY_DEFINED +#else +#define yy_switch_to_buffer tao_yy_switch_to_buffer +#endif + +#ifdef yypush_buffer_state +#define tao_yypush_buffer_state_ALREADY_DEFINED +#else +#define yypush_buffer_state tao_yypush_buffer_state +#endif + +#ifdef yypop_buffer_state +#define tao_yypop_buffer_state_ALREADY_DEFINED +#else +#define yypop_buffer_state tao_yypop_buffer_state +#endif + +#ifdef yyensure_buffer_stack +#define tao_yyensure_buffer_stack_ALREADY_DEFINED +#else +#define yyensure_buffer_stack tao_yyensure_buffer_stack +#endif + +#ifdef yylex +#define tao_yylex_ALREADY_DEFINED +#else +#define yylex tao_yylex +#endif + +#ifdef yyrestart +#define tao_yyrestart_ALREADY_DEFINED +#else +#define yyrestart tao_yyrestart +#endif + +#ifdef yylex_init +#define tao_yylex_init_ALREADY_DEFINED +#else +#define yylex_init tao_yylex_init +#endif + +#ifdef yylex_init_extra +#define tao_yylex_init_extra_ALREADY_DEFINED +#else +#define yylex_init_extra tao_yylex_init_extra +#endif + +#ifdef yylex_destroy +#define tao_yylex_destroy_ALREADY_DEFINED +#else +#define yylex_destroy tao_yylex_destroy +#endif + +#ifdef yyget_debug +#define tao_yyget_debug_ALREADY_DEFINED +#else +#define yyget_debug tao_yyget_debug +#endif + +#ifdef yyset_debug +#define tao_yyset_debug_ALREADY_DEFINED +#else +#define yyset_debug tao_yyset_debug +#endif + +#ifdef yyget_extra +#define tao_yyget_extra_ALREADY_DEFINED +#else +#define yyget_extra tao_yyget_extra +#endif + +#ifdef yyset_extra +#define tao_yyset_extra_ALREADY_DEFINED +#else +#define yyset_extra tao_yyset_extra +#endif + +#ifdef yyget_in +#define tao_yyget_in_ALREADY_DEFINED +#else +#define yyget_in tao_yyget_in +#endif + +#ifdef yyset_in +#define tao_yyset_in_ALREADY_DEFINED +#else +#define yyset_in tao_yyset_in +#endif + +#ifdef yyget_out +#define tao_yyget_out_ALREADY_DEFINED +#else +#define yyget_out tao_yyget_out +#endif + +#ifdef yyset_out +#define tao_yyset_out_ALREADY_DEFINED +#else +#define yyset_out tao_yyset_out +#endif + +#ifdef yyget_leng +#define tao_yyget_leng_ALREADY_DEFINED +#else +#define yyget_leng tao_yyget_leng +#endif + +#ifdef yyget_text +#define tao_yyget_text_ALREADY_DEFINED +#else +#define yyget_text tao_yyget_text +#endif + +#ifdef yyget_lineno +#define tao_yyget_lineno_ALREADY_DEFINED +#else +#define yyget_lineno tao_yyget_lineno +#endif + +#ifdef yyset_lineno +#define tao_yyset_lineno_ALREADY_DEFINED +#else +#define yyset_lineno tao_yyset_lineno +#endif + +#ifdef yywrap +#define tao_yywrap_ALREADY_DEFINED +#else +#define yywrap tao_yywrap +#endif + +#ifdef yyalloc +#define tao_yyalloc_ALREADY_DEFINED +#else +#define yyalloc tao_yyalloc +#endif + +#ifdef yyrealloc +#define tao_yyrealloc_ALREADY_DEFINED +#else +#define yyrealloc tao_yyrealloc +#endif + +#ifdef yyfree +#define tao_yyfree_ALREADY_DEFINED +#else +#define yyfree tao_yyfree +#endif + +#ifdef yytext +#define tao_yytext_ALREADY_DEFINED +#else +#define yytext tao_yytext +#endif + +#ifdef yyleng +#define tao_yyleng_ALREADY_DEFINED +#else +#define yyleng tao_yyleng +#endif + +#ifdef yyin +#define tao_yyin_ALREADY_DEFINED +#else +#define yyin tao_yyin +#endif + +#ifdef yyout +#define tao_yyout_ALREADY_DEFINED +#else +#define yyout tao_yyout +#endif + +#ifdef yy_flex_debug +#define tao_yy_flex_debug_ALREADY_DEFINED +#else +#define yy_flex_debug tao_yy_flex_debug +#endif + +#ifdef yylineno +#define tao_yylineno_ALREADY_DEFINED +#else +#define yylineno tao_yylineno +#endif + /* First, we deal with platform-specific or compiler-specific issues. */ /* begin standard C headers. */ #include "ace/OS_NS_stdio.h" +#include "ace/OS_NS_errno.h" /* end standard C headers. */ @@ -100,60 +341,48 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif +#ifndef SIZE_MAX +#define SIZE_MAX (~(size_t)0) +#endif + #endif /* ! C99 */ #endif /* ! FLEXINT_H */ -#ifdef __cplusplus - -/* The "const" storage-class-modifier is valid. */ -#define YY_USE_CONST - -#else /* ! __cplusplus */ - -/* C99 requires __STDC__ to be defined as 1. */ -#if defined (__STDC__) - -#define YY_USE_CONST +/* begin standard C++ headers. */ -#endif /* defined (__STDC__) */ -#endif /* ! __cplusplus */ - -#ifdef YY_USE_CONST +/* TODO: this is always defined, so inline it */ #define yyconst const + +#if defined(__GNUC__) && __GNUC__ >= 3 +#define yynoreturn __attribute__((__noreturn__)) #else -#define yyconst +#define yynoreturn #endif /* Returned upon end-of-file. */ #define YY_NULL 0 -/* Promotes a possibly negative, possibly signed char to an unsigned - * integer for use as an array index. If the signed char is negative, - * we want to instead treat it as an 8-bit unsigned char, hence the - * double cast. +/* Promotes a possibly negative, possibly signed char to an + * integer in range [0..255] for use as an array index. */ -#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) +#define YY_SC_TO_UI(c) ((YY_CHAR) (c)) /* Enter a start condition. This macro really ought to take a parameter, * but we do it the disgusting crufty way forced on us by the ()-less * definition of BEGIN. */ #define BEGIN (yy_start) = 1 + 2 * - /* Translate the current start state into a value that can be later handed * to BEGIN to return to the state. The YYSTATE alias is for lex * compatibility. */ #define YY_START (((yy_start) - 1) / 2) #define YYSTATE YY_START - /* Action number for EOF rule of a given start state. */ #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) - /* Special action meaning "start processing a new file". */ -#define YY_NEW_FILE tao_yyrestart(tao_yyin ) - +#define YY_NEW_FILE yyrestart( yyin ) #define YY_END_OF_BUFFER_CHAR 0 /* Size of default input buffer. */ @@ -178,100 +407,100 @@ typedef unsigned int flex_uint32_t; typedef struct yy_buffer_state *YY_BUFFER_STATE; #endif -extern int tao_yyleng; +#ifndef YY_TYPEDEF_YY_SIZE_T +#define YY_TYPEDEF_YY_SIZE_T +typedef size_t yy_size_t; +#endif + +extern int yyleng; -extern FILE *tao_yyin, *tao_yyout; +extern FILE *yyin, *yyout; #define EOB_ACT_CONTINUE_SCAN 0 #define EOB_ACT_END_OF_FILE 1 #define EOB_ACT_LAST_MATCH 2 #define YY_LESS_LINENO(n) + #define YY_LINENO_REWIND_TO(ptr) /* Return all but the first "n" matched characters back to the input stream. */ #define yyless(n) \ - do \ - { \ - /* Undo effects of setting up tao_yytext. */ \ + do \ + { \ + /* Undo effects of setting up yytext. */ \ int yyless_macro_arg = (n); \ YY_LESS_LINENO(yyless_macro_arg);\ - *yy_cp = (yy_hold_char); \ - YY_RESTORE_YY_MORE_OFFSET \ - (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ - YY_DO_BEFORE_ACTION; /* set up tao_yytext again */ \ - } \ - while ( 0 ) - + *yy_cp = (yy_hold_char); \ + YY_RESTORE_YY_MORE_OFFSET \ + (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ + YY_DO_BEFORE_ACTION; /* set up yytext again */ \ + } \ + while ( 0 ) #define unput(c) yyunput( c, (yytext_ptr) ) -#ifndef YY_TYPEDEF_YY_SIZE_T -#define YY_TYPEDEF_YY_SIZE_T -typedef size_t yy_size_t; -#endif - #ifndef YY_STRUCT_YY_BUFFER_STATE #define YY_STRUCT_YY_BUFFER_STATE struct yy_buffer_state - { - FILE *yy_input_file; + { + FILE *yy_input_file; - char *yy_ch_buf; /* input buffer */ - char *yy_buf_pos; /* current position in input buffer */ + char *yy_ch_buf; /* input buffer */ + char *yy_buf_pos; /* current position in input buffer */ - /* Size of input buffer in bytes, not including room for EOB - * characters. - */ - yy_size_t yy_buf_size; + /* Size of input buffer in bytes, not including room for EOB + * characters. + */ + int yy_buf_size; - /* Number of characters read into yy_ch_buf, not including EOB - * characters. - */ - int yy_n_chars; + /* Number of characters read into yy_ch_buf, not including EOB + * characters. + */ + int yy_n_chars; - /* Whether we "own" the buffer - i.e., we know we created it, - * and can realloc() it to grow it, and should free() it to - * delete it. - */ - int yy_is_our_buffer; + /* Whether we "own" the buffer - i.e., we know we created it, + * and can realloc() it to grow it, and should free() it to + * delete it. + */ + int yy_is_our_buffer; - /* Whether this is an "interactive" input source; if so, and - * if we're using stdio for input, then we want to use getc() - * instead of static_cast<int> (fread()), to make sure we stop fetching input after - * each newline. - */ - int yy_is_interactive; + /* Whether this is an "interactive" input source; if so, and + * if we're using stdio for input, then we want to use getc() + * instead of fread(), to make sure we stop fetching input after + * each newline. + */ + int yy_is_interactive; - /* Whether we're considered to be at the beginning of a line. - * If so, '^' rules will be active on the next match, otherwise - * not. - */ - int yy_at_bol; + /* Whether we're considered to be at the beginning of a line. + * If so, '^' rules will be active on the next match, otherwise + * not. + */ + int yy_at_bol; int yy_bs_lineno; /**< The line count. */ int yy_bs_column; /**< The column count. */ - /* Whether to try to fill the input buffer when we reach the - * end of it. - */ - int yy_fill_buffer; + /* Whether to try to fill the input buffer when we reach the + * end of it. + */ + int yy_fill_buffer; - int yy_buffer_status; + int yy_buffer_status; #define YY_BUFFER_NEW 0 #define YY_BUFFER_NORMAL 1 - /* When an EOF's been seen but there's still some text to process - * then we mark the buffer as YY_EOF_PENDING, to indicate that we - * shouldn't try reading from the input source any more. We might - * still have a bunch of tokens to match, though, because of - * possible backing-up. - * - * When we actually see the EOF, we change the status to "new" - * (via tao_yyrestart()), so that the user can continue scanning by - * just pointing tao_yyin at a new input file. - */ + /* When an EOF's been seen but there's still some text to process + * then we mark the buffer as YY_EOF_PENDING, to indicate that we + * shouldn't try reading from the input source any more. We might + * still have a bunch of tokens to match, though, because of + * possible backing-up. + * + * When we actually see the EOF, we change the status to "new" + * (via yyrestart()), so that the user can continue scanning by + * just pointing yyin at a new input file. + */ #define YY_BUFFER_EOF_PENDING 2 - }; + }; #endif /* !YY_STRUCT_YY_BUFFER_STATE */ /* Stack of input buffers. */ @@ -288,115 +517,107 @@ static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ : 0) - /* Same as previous macro, but useful when we know that the buffer stack is not * 0 or when we need an lvalue. For internal use only. */ #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] -/* yy_hold_char holds the character lost when tao_yytext is formed. */ +/* yy_hold_char holds the character lost when yytext is formed. */ static char yy_hold_char; -static int yy_n_chars; /* number of characters read into yy_ch_buf */ -int tao_yyleng; +static int yy_n_chars; /* number of characters read into yy_ch_buf */ +int yyleng; /* Points to current character in buffer. */ -static char *yy_c_buf_p = (char *) 0; -static int yy_init = 0; /* whether we need to initialize */ -static int yy_start = 0; /* start state number */ +static char *yy_c_buf_p = 0; +static int yy_init = 0; /* whether we need to initialize */ +static int yy_start = 0; /* start state number */ -/* Flag which is used to allow tao_yywrap()'s to do buffer switches - * instead of setting up a fresh tao_yyin. A bit of a hack ... +/* Flag which is used to allow yywrap()'s to do buffer switches + * instead of setting up a fresh yyin. A bit of a hack ... */ static int yy_did_buffer_switch_on_eof; -void tao_yyrestart (FILE *input_file ); -void tao_yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ); -YY_BUFFER_STATE tao_yy_create_buffer (FILE *file,int size ); -void tao_yy_delete_buffer (YY_BUFFER_STATE b ); -void tao_yy_flush_buffer (YY_BUFFER_STATE b ); -void tao_yypush_buffer_state (YY_BUFFER_STATE new_buffer ); -void tao_yypop_buffer_state (void ); +void yyrestart ( FILE *input_file ); +void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer ); +YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size ); +void yy_delete_buffer ( YY_BUFFER_STATE b ); +void yy_flush_buffer ( YY_BUFFER_STATE b ); +void yypush_buffer_state ( YY_BUFFER_STATE new_buffer ); +void yypop_buffer_state ( void ); -static void tao_yyensure_buffer_stack (void ); -static void tao_yy_load_buffer_state (void ); -static void tao_yy_init_buffer (YY_BUFFER_STATE b,FILE *file ); +static void yyensure_buffer_stack ( void ); +static void yy_load_buffer_state ( void ); +static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file ); +#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER ) -#define YY_FLUSH_BUFFER tao_yy_flush_buffer(YY_CURRENT_BUFFER ) +YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size ); +YY_BUFFER_STATE yy_scan_string ( const char *yy_str ); +YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len ); -YY_BUFFER_STATE tao_yy_scan_buffer (char *base,yy_size_t size ); -YY_BUFFER_STATE tao_yy_scan_string (yyconst char *yy_str ); -YY_BUFFER_STATE tao_yy_scan_bytes (yyconst char *bytes,int len ); - -void *tao_yyalloc (yy_size_t ); -void *tao_yyrealloc (void *,yy_size_t ); -void tao_yyfree (void * ); - -#define yy_new_buffer tao_yy_create_buffer +void *yyalloc ( yy_size_t ); +void *yyrealloc ( void *, yy_size_t ); +void yyfree ( void * ); +#define yy_new_buffer yy_create_buffer #define yy_set_interactive(is_interactive) \ - { \ - if ( ! YY_CURRENT_BUFFER ){ \ - tao_yyensure_buffer_stack (); \ - YY_CURRENT_BUFFER_LVALUE = \ - tao_yy_create_buffer(tao_yyin,YY_BUF_SIZE ); \ - } \ - YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ - } - + { \ + if ( ! YY_CURRENT_BUFFER ){ \ + yyensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + yy_create_buffer( yyin, YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ + } #define yy_set_bol(at_bol) \ - { \ - if ( ! YY_CURRENT_BUFFER ){\ - tao_yyensure_buffer_stack (); \ - YY_CURRENT_BUFFER_LVALUE = \ - tao_yy_create_buffer(tao_yyin,YY_BUF_SIZE ); \ - } \ - YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ - } - + { \ + if ( ! YY_CURRENT_BUFFER ){\ + yyensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + yy_create_buffer( yyin, YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ + } #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) /* Begin user sect3 */ +typedef flex_uint8_t YY_CHAR; -typedef unsigned char YY_CHAR; - -FILE *tao_yyin = (FILE *) 0, *tao_yyout = (FILE *) 0; +FILE *yyin = 0, *yyout = 0; typedef int yy_state_type; -extern int tao_yylineno; +extern int yylineno; +int yylineno = 1; -int tao_yylineno = 1; +extern char yytext[]; -extern char tao_yytext[]; - -static yy_state_type yy_get_previous_state (void ); -static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); -static int yy_get_next_buffer (void ); -static void yy_fatal_error (yyconst char msg[] ); +static yy_state_type yy_get_previous_state ( void ); +static yy_state_type yy_try_NUL_trans ( yy_state_type current_state ); +static int yy_get_next_buffer ( void ); +static void yynoreturn yy_fatal_error ( const char* msg ); /* Done after the current pattern has been matched and before the - * corresponding action - sets up tao_yytext. + * corresponding action - sets up yytext. */ #define YY_DO_BEFORE_ACTION \ - (yytext_ptr) = yy_bp; \ - tao_yyleng = (int) (yy_cp - yy_bp); \ - (yy_hold_char) = *yy_cp; \ - *yy_cp = '\0'; \ - if ( tao_yyleng >= YYLMAX ) \ - YY_FATAL_ERROR( "token too large, exceeds YYLMAX" ); \ - yy_flex_strncpy( tao_yytext, (yytext_ptr), tao_yyleng + 1 ); \ - (yy_c_buf_p) = yy_cp; - + (yytext_ptr) = yy_bp; \ + yyleng = (int) (yy_cp - yy_bp); \ + (yy_hold_char) = *yy_cp; \ + *yy_cp = '\0'; \ + if ( yyleng >= YYLMAX ) \ + YY_FATAL_ERROR( "token too large, exceeds YYLMAX" ); \ + yy_flex_strncpy( yytext, (yytext_ptr), yyleng + 1 ); \ + (yy_c_buf_p) = yy_cp; #define YY_NUM_RULES 111 #define YY_END_OF_BUFFER 112 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info - { - flex_int32_t yy_verify; - flex_int32_t yy_nxt; - }; -static yyconst flex_int16_t yy_accept[593] = + { + flex_int32_t yy_verify; + flex_int32_t yy_nxt; + }; +static const flex_int16_t yy_accept[593] = { 0, 108, 108, 112, 110, 108, 109, 109, 110, 110, 110, 110, 110, 83, 79, 110, 110, 110, 74, 74, 74, @@ -466,7 +687,7 @@ static yyconst flex_int16_t yy_accept[593] = } ; -static yyconst flex_int32_t yy_ec[256] = +static const YY_CHAR yy_ec[256] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, @@ -498,7 +719,7 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst flex_int32_t yy_meta[61] = +static const YY_CHAR yy_meta[61] = { 0, 1, 1, 2, 1, 1, 3, 1, 4, 1, 1, 1, 1, 1, 5, 5, 6, 1, 1, 1, 1, @@ -508,7 +729,7 @@ static yyconst flex_int32_t yy_meta[61] = 7, 7, 8, 7, 8, 9, 8, 7, 8, 7 } ; -static yyconst flex_int16_t yy_base[621] = +static const flex_int16_t yy_base[621] = { 0, 0, 59, 1177, 1178, 60, 1178, 1178, 57, 1141, 55, 58, 66, 81, 74, 1158, 1156, 1153, 0, 1150, 70, @@ -580,7 +801,7 @@ static yyconst flex_int16_t yy_base[621] = 834, 840, 846, 852, 861, 870, 879, 888, 897, 906 } ; -static yyconst flex_int16_t yy_def[621] = +static const flex_int16_t yy_def[621] = { 0, 592, 1, 592, 592, 592, 592, 592, 593, 594, 592, 592, 592, 592, 592, 592, 592, 592, 595, 595, 595, @@ -652,7 +873,7 @@ static yyconst flex_int16_t yy_def[621] = 592, 592, 592, 592, 592, 592, 592, 592, 592, 592 } ; -static yyconst flex_int16_t yy_nxt[1239] = +static const flex_int16_t yy_nxt[1239] = { 0, 4, 5, 6, 7, 5, 8, 4, 9, 4, 4, 10, 11, 12, 13, 14, 14, 15, 16, 4, 17, @@ -792,7 +1013,7 @@ static yyconst flex_int16_t yy_nxt[1239] = 592, 592, 592, 592, 592, 592, 592, 592 } ; -static yyconst flex_int16_t yy_chk[1239] = +static const flex_int16_t yy_chk[1239] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -935,8 +1156,8 @@ static yyconst flex_int16_t yy_chk[1239] = static yy_state_type yy_last_accepting_state; static char *yy_last_accepting_cpos; -extern int tao_yy_flex_debug; -int tao_yy_flex_debug = 0; +extern int yy_flex_debug; +int yy_flex_debug = 0; /* The intent behind this definition is that it'll catch * any uses of REJECT which flex missed. @@ -949,7 +1170,7 @@ int tao_yy_flex_debug = 0; #define YYLMAX 8192 #endif -char tao_yytext[YYLMAX]; +char yytext[YYLMAX]; char *yytext_ptr; #line 1 "fe/idl.ll" #line 2 "fe/idl.ll" @@ -1055,7 +1276,7 @@ static char * idl_get_pragma_string (char *); static bool idl_valid_version (char *); static AST_Decl * idl_find_node (const char *); -#define ace_yytext tao_yytext +#define ace_yytext yytext #ifdef USE_MCPP_BUFFER_LEXING #include "mcpp_yyinput.h" @@ -1065,8 +1286,9 @@ static AST_Decl * idl_find_node (const char *); #undef ECHO #endif +#line 1291 "fe/idl.yy.cpp" /* SO we don't choke on files that use \r\n */ -#line 1073 "fe/idl.yy.cpp" +#line 1293 "fe/idl.yy.cpp" #define INITIAL 0 @@ -1082,36 +1304,36 @@ static AST_Decl * idl_find_node (const char *); #define YY_EXTRA_TYPE void * #endif -static int yy_init_globals (void ); +static int yy_init_globals ( void ); /* Accessor methods to globals. These are made visible to non-reentrant scanners for convenience. */ -int tao_yylex_destroy (void ); +int yylex_destroy ( void ); -int tao_yyget_debug (void ); +int yyget_debug ( void ); -void tao_yyset_debug (int debug_flag ); +void yyset_debug ( int debug_flag ); -YY_EXTRA_TYPE tao_yyget_extra (void ); +YY_EXTRA_TYPE yyget_extra ( void ); -void tao_yyset_extra (YY_EXTRA_TYPE user_defined ); +void yyset_extra ( YY_EXTRA_TYPE user_defined ); -FILE *tao_yyget_in (void ); +FILE *yyget_in ( void ); -void tao_yyset_in (FILE * in_str ); +void yyset_in ( FILE * _in_str ); -FILE *tao_yyget_out (void ); +FILE *yyget_out ( void ); -void tao_yyset_out (FILE * out_str ); +void yyset_out ( FILE * _out_str ); -int tao_yyget_leng (void ); + int yyget_leng ( void ); -char *tao_yyget_text (void ); +char *yyget_text ( void ); -int tao_yyget_lineno (void ); +int yyget_lineno ( void ); -void tao_yyset_lineno (int line_number ); +void yyset_lineno ( int _line_number ); /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1119,28 +1341,31 @@ void tao_yyset_lineno (int line_number ); #ifndef YY_SKIP_YYWRAP #ifdef __cplusplus -extern "C" int tao_yywrap (void ); +extern "C" int yywrap ( void ); #else -extern int tao_yywrap (void ); +extern int yywrap ( void ); #endif #endif - static void yyunput (int c,char *buf_ptr ); +#ifndef YY_NO_UNPUT + + static void yyunput ( int c, char *buf_ptr ); + +#endif #ifndef yytext_ptr -static void yy_flex_strncpy (char *,yyconst char *,int ); +static void yy_flex_strncpy ( char *, const char *, int ); #endif #ifdef YY_NEED_STRLEN -static int yy_flex_strlen (yyconst char * ); +static int yy_flex_strlen ( const char * ); #endif #ifndef YY_NO_INPUT - #ifdef __cplusplus -static int yyinput (void ); +static int yyinput ( void ); #else -static int input (void ); +static int input ( void ); #endif #endif @@ -1160,7 +1385,7 @@ static int input (void ); /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO do { if (fwrite( tao_yytext, tao_yyleng, 1, tao_yyout )) {} } while (0) +#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -1168,33 +1393,33 @@ static int input (void ); */ #ifndef YY_INPUT #define YY_INPUT(buf,result,max_size) \ - if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ + if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ + { \ + int c = '*'; \ + int n; \ + for ( n = 0; n < max_size && \ + (c = ACE_OS::getc( yyin )) != EOF && c != '\n'; ++n ) \ + buf[n] = (char) c; \ + if ( c == '\n' ) \ + buf[n++] = (char) c; \ + if ( c == EOF && ferror( yyin ) ) \ + YY_FATAL_ERROR( "input in flex scanner failed" ); \ + result = n; \ + } \ + else \ + { \ + errno=0; \ + while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \ + { \ + if( errno != EINTR) \ { \ - int c = '*'; \ - size_t n; \ - for ( n = 0; n < max_size && \ - (c = ACE_OS::getc( tao_yyin )) != EOF && c != '\n'; ++n ) \ - buf[n] = (char) c; \ - if ( c == '\n' ) \ - buf[n++] = (char) c; \ - if ( c == EOF && ferror( tao_yyin ) ) \ - YY_FATAL_ERROR( "input in flex scanner failed" ); \ - result = static_cast<int> (n); \ + YY_FATAL_ERROR( "input in flex scanner failed" ); \ + break; \ } \ - else \ - { \ - errno=0; \ - while ( (result = static_cast<int> (fread(buf, 1, max_size, tao_yyin)))==0 && ferror(tao_yyin)) \ - { \ - if( errno != EINTR) \ - { \ - YY_FATAL_ERROR( "input in flex scanner failed" ); \ - break; \ - } \ - errno=0; \ - clearerr(tao_yyin); \ - } \ - }\ + errno=0; \ + clearerr(yyin); \ + } \ + }\ \ #endif @@ -1225,12 +1450,12 @@ static int input (void ); #ifndef YY_DECL #define YY_DECL_IS_OURS 1 -extern int tao_yylex (void); +extern int yylex (void); -#define YY_DECL int tao_yylex (void) +#define YY_DECL int yylex (void) #endif /* !YY_DECL */ -/* Code executed at the beginning of each rule, after tao_yytext and tao_yyleng +/* Code executed at the beginning of each rule, after yytext and yyleng * have been set up. */ #ifndef YY_USER_ACTION @@ -1239,466 +1464,467 @@ extern int tao_yylex (void); /* Code executed at the end of each rule. */ #ifndef YY_BREAK -#define YY_BREAK ACE_NOTREACHED (break;) +#define YY_BREAK /*LINTED*/break; #endif #define YY_RULE_SETUP \ - if ( tao_yyleng > 0 ) \ - YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \ - (tao_yytext[tao_yyleng - 1] == '\n'); \ - YY_USER_ACTION + if ( yyleng > 0 ) \ + YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \ + (yytext[yyleng - 1] == '\n'); \ + YY_USER_ACTION /** The main scanner function which does all the work. */ YY_DECL { - yy_state_type yy_current_state; - char *yy_cp, *yy_bp; - int yy_act; + yy_state_type yy_current_state; + char *yy_cp, *yy_bp; + int yy_act; -#line 122 "fe/idl.ll" + if ( !(yy_init) ) + { + (yy_init) = 1; +#ifdef YY_USER_INIT + YY_USER_INIT; +#endif -#line 1266 "fe/idl.yy.cpp" + if ( ! (yy_start) ) + (yy_start) = 1; /* first start state */ - if ( !(yy_init) ) - { - (yy_init) = 1; + if ( ! yyin ) + yyin = stdin; -#ifdef YY_USER_INIT - YY_USER_INIT; -#endif + if ( ! yyout ) + yyout = stdout; - if ( ! (yy_start) ) - (yy_start) = 1; /* first start state */ + if ( ! YY_CURRENT_BUFFER ) { + yyensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + yy_create_buffer( yyin, YY_BUF_SIZE ); + } - if ( ! tao_yyin ) - tao_yyin = stdin; + yy_load_buffer_state( ); + } - if ( ! tao_yyout ) - tao_yyout = stdout; + { +#line 122 "fe/idl.ll" - if ( ! YY_CURRENT_BUFFER ) { - tao_yyensure_buffer_stack (); - YY_CURRENT_BUFFER_LVALUE = - tao_yy_create_buffer(tao_yyin,YY_BUF_SIZE ); - } - tao_yy_load_buffer_state( ); - } +#line 1516 "fe/idl.yy.cpp" - while ( 1 ) /* loops until end-of-file is reached */ - { - yy_cp = (yy_c_buf_p); + while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ + { + yy_cp = (yy_c_buf_p); - /* Support of tao_yytext. */ - *yy_cp = (yy_hold_char); + /* Support of yytext. */ + *yy_cp = (yy_hold_char); - /* yy_bp points to the position in yy_ch_buf of the start of - * the current run. - */ - yy_bp = yy_cp; + /* yy_bp points to the position in yy_ch_buf of the start of + * the current run. + */ + yy_bp = yy_cp; - yy_current_state = (yy_start); - yy_current_state += YY_AT_BOL(); + yy_current_state = (yy_start); + yy_current_state += YY_AT_BOL(); yy_match: - do - { - YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; - if ( yy_accept[yy_current_state] ) - { - (yy_last_accepting_state) = yy_current_state; - (yy_last_accepting_cpos) = yy_cp; - } - while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) - { - yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 593 ) - yy_c = yy_meta[(unsigned int) yy_c]; - } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - ++yy_cp; - } - while ( yy_current_state != 592 ); - yy_cp = (yy_last_accepting_cpos); - yy_current_state = (yy_last_accepting_state); + do + { + YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ; + if ( yy_accept[yy_current_state] ) + { + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; + } + while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) + { + yy_current_state = (int) yy_def[yy_current_state]; + if ( yy_current_state >= 593 ) + yy_c = yy_meta[yy_c]; + } + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; + ++yy_cp; + } + while ( yy_current_state != 592 ); + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); yy_find_action: - yy_act = yy_accept[yy_current_state]; + yy_act = yy_accept[yy_current_state]; - YY_DO_BEFORE_ACTION; + YY_DO_BEFORE_ACTION; -do_action: /* This label is used only to access EOF actions. */ +do_action: /* This label is used only to access EOF actions. */ - switch ( yy_act ) - { /* beginning of action switch */ - case 0: /* must back up */ - /* undo the effects of YY_DO_BEFORE_ACTION */ - *yy_cp = (yy_hold_char); - yy_cp = (yy_last_accepting_cpos); - yy_current_state = (yy_last_accepting_state); - goto yy_find_action; + switch ( yy_act ) + { /* beginning of action switch */ + case 0: /* must back up */ + /* undo the effects of YY_DO_BEFORE_ACTION */ + *yy_cp = (yy_hold_char); + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); + goto yy_find_action; case 1: YY_RULE_SETUP #line 124 "fe/idl.ll" return IDL_ANY; - YY_BREAK + YY_BREAK case 2: YY_RULE_SETUP #line 125 "fe/idl.ll" return IDL_OBJECT; - YY_BREAK + YY_BREAK case 3: YY_RULE_SETUP #line 126 "fe/idl.ll" return IDL_MODULE; - YY_BREAK + YY_BREAK case 4: YY_RULE_SETUP #line 127 "fe/idl.ll" return IDL_RAISES; - YY_BREAK + YY_BREAK case 5: YY_RULE_SETUP #line 128 "fe/idl.ll" return IDL_READONLY; - YY_BREAK + YY_BREAK case 6: YY_RULE_SETUP #line 129 "fe/idl.ll" return IDL_ATTRIBUTE; - YY_BREAK + YY_BREAK case 7: YY_RULE_SETUP #line 130 "fe/idl.ll" return IDL_EXCEPTION; - YY_BREAK + YY_BREAK case 8: YY_RULE_SETUP #line 131 "fe/idl.ll" return IDL_CONTEXT; - YY_BREAK + YY_BREAK case 9: YY_RULE_SETUP #line 132 "fe/idl.ll" return IDL_INTERFACE; - YY_BREAK + YY_BREAK case 10: YY_RULE_SETUP #line 133 "fe/idl.ll" return IDL_CONST; - YY_BREAK + YY_BREAK case 11: YY_RULE_SETUP #line 134 "fe/idl.ll" return IDL_TYPEDEF; - YY_BREAK + YY_BREAK case 12: YY_RULE_SETUP #line 135 "fe/idl.ll" return IDL_STRUCT; - YY_BREAK + YY_BREAK case 13: YY_RULE_SETUP #line 136 "fe/idl.ll" return IDL_ENUM; - YY_BREAK + YY_BREAK case 14: YY_RULE_SETUP #line 137 "fe/idl.ll" return IDL_STRING; - YY_BREAK + YY_BREAK case 15: YY_RULE_SETUP #line 138 "fe/idl.ll" return IDL_WSTRING; - YY_BREAK + YY_BREAK case 16: YY_RULE_SETUP #line 139 "fe/idl.ll" return IDL_SEQUENCE; - YY_BREAK + YY_BREAK case 17: YY_RULE_SETUP #line 140 "fe/idl.ll" return IDL_UNION; - YY_BREAK + YY_BREAK case 18: YY_RULE_SETUP #line 141 "fe/idl.ll" return IDL_FIXED; - YY_BREAK + YY_BREAK case 19: YY_RULE_SETUP #line 142 "fe/idl.ll" return IDL_SWITCH; - YY_BREAK + YY_BREAK case 20: YY_RULE_SETUP #line 143 "fe/idl.ll" return IDL_CASE; - YY_BREAK + YY_BREAK case 21: YY_RULE_SETUP #line 144 "fe/idl.ll" return IDL_DEFAULT; - YY_BREAK + YY_BREAK case 22: YY_RULE_SETUP #line 145 "fe/idl.ll" return IDL_FLOAT; - YY_BREAK + YY_BREAK case 23: YY_RULE_SETUP #line 146 "fe/idl.ll" return IDL_DOUBLE; - YY_BREAK + YY_BREAK case 24: YY_RULE_SETUP #line 147 "fe/idl.ll" return IDL_LONG; - YY_BREAK + YY_BREAK case 25: YY_RULE_SETUP #line 148 "fe/idl.ll" return IDL_SHORT; - YY_BREAK + YY_BREAK case 26: YY_RULE_SETUP #line 149 "fe/idl.ll" return IDL_UNSIGNED; - YY_BREAK + YY_BREAK case 27: YY_RULE_SETUP #line 150 "fe/idl.ll" return IDL_CHAR; - YY_BREAK + YY_BREAK case 28: YY_RULE_SETUP #line 151 "fe/idl.ll" return IDL_WCHAR; - YY_BREAK + YY_BREAK case 29: YY_RULE_SETUP #line 152 "fe/idl.ll" return IDL_BOOLEAN; - YY_BREAK + YY_BREAK case 30: YY_RULE_SETUP #line 153 "fe/idl.ll" return IDL_OCTET; - YY_BREAK + YY_BREAK case 31: YY_RULE_SETUP #line 154 "fe/idl.ll" return IDL_VOID; - YY_BREAK + YY_BREAK case 32: YY_RULE_SETUP #line 155 "fe/idl.ll" return IDL_NATIVE; - YY_BREAK + YY_BREAK case 33: YY_RULE_SETUP #line 156 "fe/idl.ll" return IDL_LOCAL; - YY_BREAK + YY_BREAK case 34: YY_RULE_SETUP #line 157 "fe/idl.ll" return IDL_ABSTRACT; - YY_BREAK + YY_BREAK case 35: YY_RULE_SETUP #line 159 "fe/idl.ll" return IDL_CUSTOM; - YY_BREAK + YY_BREAK case 36: YY_RULE_SETUP #line 160 "fe/idl.ll" return IDL_FACTORY; - YY_BREAK + YY_BREAK case 37: YY_RULE_SETUP #line 161 "fe/idl.ll" return IDL_PRIVATE; - YY_BREAK + YY_BREAK case 38: YY_RULE_SETUP #line 162 "fe/idl.ll" return IDL_PUBLIC; - YY_BREAK + YY_BREAK case 39: YY_RULE_SETUP #line 163 "fe/idl.ll" return IDL_SUPPORTS; - YY_BREAK + YY_BREAK case 40: YY_RULE_SETUP #line 164 "fe/idl.ll" return IDL_TRUNCATABLE; - YY_BREAK + YY_BREAK case 41: YY_RULE_SETUP #line 165 "fe/idl.ll" return IDL_VALUETYPE; - YY_BREAK + YY_BREAK case 42: YY_RULE_SETUP #line 167 "fe/idl.ll" return IDL_COMPONENT; - YY_BREAK + YY_BREAK case 43: YY_RULE_SETUP #line 168 "fe/idl.ll" return IDL_CONSUMES; - YY_BREAK + YY_BREAK case 44: YY_RULE_SETUP #line 169 "fe/idl.ll" return IDL_EMITS; - YY_BREAK + YY_BREAK case 45: YY_RULE_SETUP #line 170 "fe/idl.ll" return IDL_EVENTTYPE; - YY_BREAK + YY_BREAK case 46: YY_RULE_SETUP #line 171 "fe/idl.ll" return IDL_FINDER; - YY_BREAK + YY_BREAK case 47: YY_RULE_SETUP #line 172 "fe/idl.ll" return IDL_GETRAISES; - YY_BREAK + YY_BREAK case 48: YY_RULE_SETUP #line 173 "fe/idl.ll" return IDL_HOME; - YY_BREAK + YY_BREAK case 49: YY_RULE_SETUP #line 174 "fe/idl.ll" return IDL_IMPORT; - YY_BREAK + YY_BREAK case 50: YY_RULE_SETUP #line 175 "fe/idl.ll" return IDL_MULTIPLE; - YY_BREAK + YY_BREAK case 51: YY_RULE_SETUP #line 176 "fe/idl.ll" return IDL_PRIMARYKEY; - YY_BREAK + YY_BREAK case 52: YY_RULE_SETUP #line 177 "fe/idl.ll" return IDL_PROVIDES; - YY_BREAK + YY_BREAK case 53: YY_RULE_SETUP #line 178 "fe/idl.ll" return IDL_PUBLISHES; - YY_BREAK + YY_BREAK case 54: YY_RULE_SETUP #line 179 "fe/idl.ll" return IDL_SETRAISES; - YY_BREAK + YY_BREAK case 55: YY_RULE_SETUP #line 180 "fe/idl.ll" return IDL_TYPEID; - YY_BREAK + YY_BREAK case 56: YY_RULE_SETUP #line 181 "fe/idl.ll" return IDL_TYPEPREFIX; - YY_BREAK + YY_BREAK case 57: YY_RULE_SETUP #line 182 "fe/idl.ll" return IDL_USES; - YY_BREAK + YY_BREAK case 58: YY_RULE_SETUP #line 183 "fe/idl.ll" return IDL_MANAGES; - YY_BREAK + YY_BREAK case 59: YY_RULE_SETUP #line 185 "fe/idl.ll" return IDL_TYPENAME; - YY_BREAK + YY_BREAK case 60: YY_RULE_SETUP #line 186 "fe/idl.ll" return IDL_PORT; - YY_BREAK + YY_BREAK case 61: YY_RULE_SETUP #line 187 "fe/idl.ll" return IDL_MIRRORPORT; - YY_BREAK + YY_BREAK case 62: YY_RULE_SETUP #line 188 "fe/idl.ll" return IDL_PORTTYPE; - YY_BREAK + YY_BREAK case 63: YY_RULE_SETUP #line 189 "fe/idl.ll" return IDL_CONNECTOR; - YY_BREAK + YY_BREAK case 64: YY_RULE_SETUP #line 190 "fe/idl.ll" return IDL_ALIAS; - YY_BREAK + YY_BREAK case 65: YY_RULE_SETUP #line 192 "fe/idl.ll" return IDL_TRUETOK; - YY_BREAK + YY_BREAK case 66: YY_RULE_SETUP #line 193 "fe/idl.ll" return IDL_FALSETOK; - YY_BREAK + YY_BREAK case 67: YY_RULE_SETUP #line 195 "fe/idl.ll" return IDL_INOUT; - YY_BREAK + YY_BREAK case 68: YY_RULE_SETUP #line 196 "fe/idl.ll" return IDL_IN; - YY_BREAK + YY_BREAK case 69: YY_RULE_SETUP #line 197 "fe/idl.ll" return IDL_OUT; - YY_BREAK + YY_BREAK case 70: YY_RULE_SETUP #line 198 "fe/idl.ll" return IDL_ONEWAY; - YY_BREAK + YY_BREAK case 71: YY_RULE_SETUP #line 200 "fe/idl.ll" return IDL_LEFT_SHIFT; - YY_BREAK + YY_BREAK case 72: YY_RULE_SETUP #line 201 "fe/idl.ll" return IDL_RIGHT_SHIFT; - YY_BREAK + YY_BREAK case 73: YY_RULE_SETUP #line 202 "fe/idl.ll" @@ -1706,7 +1932,7 @@ YY_RULE_SETUP tao_yylval.strval = ACE::strnew ("::"); return IDL_SCOPE_DELIMITOR; } - YY_BREAK + YY_BREAK case 74: YY_RULE_SETUP #line 207 "fe/idl.ll" @@ -1742,7 +1968,7 @@ YY_RULE_SETUP return IDENTIFIER; } - YY_BREAK + YY_BREAK case 75: YY_RULE_SETUP #line 240 "fe/idl.ll" @@ -1750,7 +1976,7 @@ YY_RULE_SETUP tao_yylval.dval = idl_atof (ace_yytext); return IDL_FLOATING_PT_LITERAL; } - YY_BREAK + YY_BREAK case 76: YY_RULE_SETUP #line 244 "fe/idl.ll" @@ -1758,7 +1984,7 @@ YY_RULE_SETUP tao_yylval.dval = idl_atof (ace_yytext); return IDL_FLOATING_PT_LITERAL; } - YY_BREAK + YY_BREAK case 77: YY_RULE_SETUP #line 249 "fe/idl.ll" @@ -1766,7 +1992,7 @@ YY_RULE_SETUP tao_yylval.fixval = ACE_CDR::Fixed::from_string (ace_yytext); return IDL_FIXED_PT_LITERAL; } - YY_BREAK + YY_BREAK case 78: YY_RULE_SETUP #line 254 "fe/idl.ll" @@ -1774,7 +2000,7 @@ YY_RULE_SETUP tao_yylval.ival = idl_atoi (ace_yytext, 10); return IDL_INTEGER_LITERAL; } - YY_BREAK + YY_BREAK case 79: YY_RULE_SETUP #line 258 "fe/idl.ll" @@ -1782,7 +2008,7 @@ YY_RULE_SETUP tao_yylval.uival = idl_atoui (ace_yytext, 10); return IDL_UINTEGER_LITERAL; } - YY_BREAK + YY_BREAK case 80: YY_RULE_SETUP #line 262 "fe/idl.ll" @@ -1790,7 +2016,7 @@ YY_RULE_SETUP tao_yylval.ival = idl_atoi (ace_yytext, 16); return IDL_INTEGER_LITERAL; } - YY_BREAK + YY_BREAK case 81: YY_RULE_SETUP #line 266 "fe/idl.ll" @@ -1798,7 +2024,7 @@ YY_RULE_SETUP tao_yylval.uival = idl_atoui (ace_yytext, 16); return IDL_UINTEGER_LITERAL; } - YY_BREAK + YY_BREAK case 82: YY_RULE_SETUP #line 270 "fe/idl.ll" @@ -1806,7 +2032,7 @@ YY_RULE_SETUP tao_yylval.ival = idl_atoi (ace_yytext, 8); return IDL_INTEGER_LITERAL; } - YY_BREAK + YY_BREAK case 83: YY_RULE_SETUP #line 274 "fe/idl.ll" @@ -1814,7 +2040,7 @@ YY_RULE_SETUP tao_yylval.uival = idl_atoui (ace_yytext, 8); return IDL_UINTEGER_LITERAL; } - YY_BREAK + YY_BREAK case 84: /* rule 84 can match eol */ YY_RULE_SETUP @@ -1839,7 +2065,7 @@ YY_RULE_SETUP IDL_STRING_LITERAL); return IDL_STRING_LITERAL; } - YY_BREAK + YY_BREAK case 85: /* rule 85 can match eol */ YY_RULE_SETUP @@ -1862,7 +2088,7 @@ YY_RULE_SETUP tao_yylval.wsval = idl_wstring_escape_reader (tmp + 2); return IDL_WSTRING_LITERAL; } - YY_BREAK + YY_BREAK case 86: YY_RULE_SETUP #line 317 "fe/idl.ll" @@ -1870,7 +2096,7 @@ YY_RULE_SETUP tao_yylval.cval = ace_yytext[1]; return IDL_CHARACTER_LITERAL; } - YY_BREAK + YY_BREAK case 87: YY_RULE_SETUP #line 321 "fe/idl.ll" @@ -1879,7 +2105,7 @@ YY_RULE_SETUP tao_yylval.cval = idl_escape_reader (ace_yytext + 1); return IDL_CHARACTER_LITERAL; } - YY_BREAK + YY_BREAK case 88: YY_RULE_SETUP #line 326 "fe/idl.ll" @@ -1888,7 +2114,7 @@ YY_RULE_SETUP tao_yylval.cval = idl_escape_reader (ace_yytext + 1); return IDL_CHARACTER_LITERAL; } - YY_BREAK + YY_BREAK case 89: YY_RULE_SETUP #line 331 "fe/idl.ll" @@ -1896,7 +2122,7 @@ YY_RULE_SETUP tao_yylval.cval = idl_escape_reader (ace_yytext + 1); return IDL_CHARACTER_LITERAL; } - YY_BREAK + YY_BREAK case 90: YY_RULE_SETUP #line 335 "fe/idl.ll" @@ -1905,7 +2131,7 @@ YY_RULE_SETUP tao_yylval.wcval = ace_yytext[2]; return IDL_WCHAR_LITERAL; } - YY_BREAK + YY_BREAK case 91: YY_RULE_SETUP #line 340 "fe/idl.ll" @@ -1914,7 +2140,7 @@ YY_RULE_SETUP tao_yylval.wcval = idl_wchar_escape_reader (ace_yytext + 2); return IDL_WCHAR_LITERAL; } - YY_BREAK + YY_BREAK case 92: /* rule 92 can match eol */ #line 346 "fe/idl.ll" @@ -1927,7 +2153,7 @@ YY_RULE_SETUP idl_store_pragma (ace_yytext); break; } - YY_BREAK + YY_BREAK case 94: /* rule 94 can match eol */ #line 352 "fe/idl.ll" @@ -1939,7 +2165,7 @@ YY_RULE_SETUP idl_global->set_lineno(idl_global->lineno () + 1); break; } - YY_BREAK + YY_BREAK case 96: /* rule 96 can match eol */ #line 357 "fe/idl.ll" @@ -1951,7 +2177,7 @@ YY_RULE_SETUP idl_parse_line_and_file (ace_yytext); break; } - YY_BREAK + YY_BREAK case 98: /* rule 98 can match eol */ #line 362 "fe/idl.ll" @@ -1963,7 +2189,7 @@ YY_RULE_SETUP idl_parse_line_and_file (ace_yytext); break; } - YY_BREAK + YY_BREAK case 100: /* rule 100 can match eol */ #line 367 "fe/idl.ll" @@ -1975,7 +2201,7 @@ YY_RULE_SETUP idl_parse_line_and_file (ace_yytext); break; } - YY_BREAK + YY_BREAK case 102: /* rule 102 can match eol */ #line 372 "fe/idl.ll" @@ -1987,7 +2213,7 @@ YY_RULE_SETUP idl_parse_line_and_file (ace_yytext); break; } - YY_BREAK + YY_BREAK case 104: /* rule 104 can match eol */ #line 377 "fe/idl.ll" @@ -2000,7 +2226,7 @@ YY_RULE_SETUP idl_global->set_lineno (idl_global->lineno () + 1); break; } - YY_BREAK + YY_BREAK case 106: /* rule 106 can match eol */ YY_RULE_SETUP @@ -2010,7 +2236,7 @@ YY_RULE_SETUP idl_global->set_lineno(idl_global->lineno () + 1); break; } - YY_BREAK + YY_BREAK case 107: YY_RULE_SETUP #line 387 "fe/idl.ll" @@ -2033,12 +2259,12 @@ YY_RULE_SETUP } break; } - YY_BREAK + YY_BREAK case 108: YY_RULE_SETUP #line 406 "fe/idl.ll" break; - YY_BREAK + YY_BREAK case 109: /* rule 109 can match eol */ YY_RULE_SETUP @@ -2047,385 +2273,394 @@ YY_RULE_SETUP idl_global->set_lineno (idl_global->lineno () + 1); break; } - YY_BREAK + YY_BREAK case 110: YY_RULE_SETUP #line 411 "fe/idl.ll" return ace_yytext[0]; - YY_BREAK + YY_BREAK case 111: YY_RULE_SETUP #line 413 "fe/idl.ll" ECHO; - YY_BREAK -#line 2065 "fe/idl.yy.cpp" + YY_BREAK +#line 2289 "fe/idl.yy.cpp" case YY_STATE_EOF(INITIAL): - yyterminate(); + yyterminate(); + + case YY_END_OF_BUFFER: + { + /* Amount of text matched not including the EOB char. */ + int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; - case YY_END_OF_BUFFER: + /* Undo the effects of YY_DO_BEFORE_ACTION. */ + *yy_cp = (yy_hold_char); + YY_RESTORE_YY_MORE_OFFSET + + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) + { + /* We're scanning a new file or input source. It's + * possible that this happened because the user + * just pointed yyin at a new source and called + * yylex(). If so, then we have to assure + * consistency between YY_CURRENT_BUFFER and our + * globals. Here is the right place to do so, because + * this is the first action (other than possibly a + * back-up) that will match for the new input source. + */ + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; + } + + /* Note that here we test for yy_c_buf_p "<=" to the position + * of the first EOB in the buffer, since yy_c_buf_p will + * already have been incremented past the NUL character + * (since all states make transitions on EOB to the + * end-of-buffer state). Contrast this with the test + * in input(). + */ + if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) + { /* This was really a NUL. */ + yy_state_type yy_next_state; + + (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; + + yy_current_state = yy_get_previous_state( ); + + /* Okay, we're now positioned to make the NUL + * transition. We couldn't have + * yy_get_previous_state() go ahead and do it + * for us because it doesn't know how to deal + * with the possibility of jamming (and we don't + * want to build jamming into it because then it + * will run more slowly). + */ + + yy_next_state = yy_try_NUL_trans( yy_current_state ); + + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + + if ( yy_next_state ) { - /* Amount of text matched not including the EOB char. */ - int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; + /* Consume the NUL. */ + yy_cp = ++(yy_c_buf_p); + yy_current_state = yy_next_state; + goto yy_match; + } - /* Undo the effects of YY_DO_BEFORE_ACTION. */ - *yy_cp = (yy_hold_char); - YY_RESTORE_YY_MORE_OFFSET + else + { + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); + goto yy_find_action; + } + } - if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) - { - /* We're scanning a new file or input source. It's - * possible that this happened because the user - * just pointed tao_yyin at a new source and called - * tao_yylex(). If so, then we have to assure - * consistency between YY_CURRENT_BUFFER and our - * globals. Here is the right place to do so, because - * this is the first action (other than possibly a - * back-up) that will match for the new input source. - */ - (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; - YY_CURRENT_BUFFER_LVALUE->yy_input_file = tao_yyin; - YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; - } + else switch ( yy_get_next_buffer( ) ) + { + case EOB_ACT_END_OF_FILE: + { + (yy_did_buffer_switch_on_eof) = 0; - /* Note that here we test for yy_c_buf_p "<=" to the position - * of the first EOB in the buffer, since yy_c_buf_p will - * already have been incremented past the NUL character - * (since all states make transitions on EOB to the - * end-of-buffer state). Contrast this with the test - * in input(). - */ - if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) - { /* This was really a NUL. */ - yy_state_type yy_next_state; - - (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; - - yy_current_state = yy_get_previous_state( ); - - /* Okay, we're now positioned to make the NUL - * transition. We couldn't have - * yy_get_previous_state() go ahead and do it - * for us because it doesn't know how to deal - * with the possibility of jamming (and we don't - * want to build jamming into it because then it - * will run more slowly). - */ - - yy_next_state = yy_try_NUL_trans( yy_current_state ); - - yy_bp = (yytext_ptr) + YY_MORE_ADJ; - - if ( yy_next_state ) - { - /* Consume the NUL. */ - yy_cp = ++(yy_c_buf_p); - yy_current_state = yy_next_state; - goto yy_match; - } - - else - { - yy_cp = (yy_last_accepting_cpos); - yy_current_state = (yy_last_accepting_state); - goto yy_find_action; - } - } + if ( yywrap( ) ) + { + /* Note: because we've taken care in + * yy_get_next_buffer() to have set up + * yytext, we can now set up + * yy_c_buf_p so that if some total + * hoser (like flex itself) wants to + * call the scanner after we return the + * YY_NULL, it'll still work - another + * YY_NULL will get returned. + */ + (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; + + yy_act = YY_STATE_EOF(YY_START); + goto do_action; + } - else switch ( yy_get_next_buffer( ) ) - { - case EOB_ACT_END_OF_FILE: - { - (yy_did_buffer_switch_on_eof) = 0; - - if ( tao_yywrap( ) ) - { - /* Note: because we've taken care in - * yy_get_next_buffer() to have set up - * tao_yytext, we can now set up - * yy_c_buf_p so that if some total - * hoser (like flex itself) wants to - * call the scanner after we return the - * YY_NULL, it'll still work - another - * YY_NULL will get returned. - */ - (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; - - yy_act = YY_STATE_EOF(YY_START); - goto do_action; - } - - else - { - if ( ! (yy_did_buffer_switch_on_eof) ) - YY_NEW_FILE; - } - break; - } - - case EOB_ACT_CONTINUE_SCAN: - (yy_c_buf_p) = - (yytext_ptr) + yy_amount_of_matched_text; - - yy_current_state = yy_get_previous_state( ); - - yy_cp = (yy_c_buf_p); - yy_bp = (yytext_ptr) + YY_MORE_ADJ; - goto yy_match; - - case EOB_ACT_LAST_MATCH: - (yy_c_buf_p) = - &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; - - yy_current_state = yy_get_previous_state( ); - - yy_cp = (yy_c_buf_p); - yy_bp = (yytext_ptr) + YY_MORE_ADJ; - goto yy_find_action; - } + else + { + if ( ! (yy_did_buffer_switch_on_eof) ) + YY_NEW_FILE; + } break; } - default: - YY_FATAL_ERROR( - "fatal flex scanner internal error--no action found" ); - } /* end of action switch */ - } /* end of scanning one token */ -} /* end of tao_yylex */ + case EOB_ACT_CONTINUE_SCAN: + (yy_c_buf_p) = + (yytext_ptr) + yy_amount_of_matched_text; + + yy_current_state = yy_get_previous_state( ); + + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + goto yy_match; + + case EOB_ACT_LAST_MATCH: + (yy_c_buf_p) = + &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; + + yy_current_state = yy_get_previous_state( ); + + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + goto yy_find_action; + } + break; + } + + default: + YY_FATAL_ERROR( + "fatal flex scanner internal error--no action found" ); + } /* end of action switch */ + } /* end of scanning one token */ + } /* end of user's declarations */ +} /* end of yylex */ /* yy_get_next_buffer - try to read in a new buffer * * Returns a code representing an action: - * EOB_ACT_LAST_MATCH - - * EOB_ACT_CONTINUE_SCAN - continue scanning from current position - * EOB_ACT_END_OF_FILE - end of file + * EOB_ACT_LAST_MATCH - + * EOB_ACT_CONTINUE_SCAN - continue scanning from current position + * EOB_ACT_END_OF_FILE - end of file */ static int yy_get_next_buffer (void) { char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; - char *source = (yytext_ptr); - int number_to_move, i; - int ret_val; + char *source = (yytext_ptr); + int number_to_move, i; + int ret_val; - if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) - YY_FATAL_ERROR( - "fatal flex scanner internal error--end of buffer missed" ); + if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) + YY_FATAL_ERROR( + "fatal flex scanner internal error--end of buffer missed" ); - if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) - { /* Don't try to fill the buffer, so this is an EOF. */ - if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) - { - /* We matched a single character, the EOB, so - * treat this as a final EOF. - */ - return EOB_ACT_END_OF_FILE; - } - - else - { - /* We matched some text prior to the EOB, first - * process it. - */ - return EOB_ACT_LAST_MATCH; - } - } + if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) + { /* Don't try to fill the buffer, so this is an EOF. */ + if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) + { + /* We matched a single character, the EOB, so + * treat this as a final EOF. + */ + return EOB_ACT_END_OF_FILE; + } - /* Try to read more data. */ + else + { + /* We matched some text prior to the EOB, first + * process it. + */ + return EOB_ACT_LAST_MATCH; + } + } - /* First move last chars to start of buffer. */ - number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; + /* Try to read more data. */ - for ( i = 0; i < number_to_move; ++i ) - *(dest++) = *(source++); + /* First move last chars to start of buffer. */ + number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1); - if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) - /* don't do the read, it's not guaranteed to return an EOF, - * just force an EOF - */ - YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; + for ( i = 0; i < number_to_move; ++i ) + *(dest++) = *(source++); - else - { - int num_to_read = (int) - (YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1); + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) + /* don't do the read, it's not guaranteed to return an EOF, + * just force an EOF + */ + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; - while ( num_to_read <= 0 ) - { /* Not enough room in the buffer - grow it. */ + else + { + int num_to_read = + YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; - /* just a shorter name for the current buffer */ - YY_BUFFER_STATE b = YY_CURRENT_BUFFER; + while ( num_to_read <= 0 ) + { /* Not enough room in the buffer - grow it. */ - int yy_c_buf_p_offset = - (int) ((yy_c_buf_p) - b->yy_ch_buf); + /* just a shorter name for the current buffer */ + YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE; - if ( b->yy_is_our_buffer ) - { - int new_size = (int)(b->yy_buf_size * 2); + int yy_c_buf_p_offset = + (int) ((yy_c_buf_p) - b->yy_ch_buf); - if ( new_size <= 0 ) - b->yy_buf_size += b->yy_buf_size / 8; - else - b->yy_buf_size *= 2; + if ( b->yy_is_our_buffer ) + { + int new_size = b->yy_buf_size * 2; - b->yy_ch_buf = (char *) - /* Include room in for 2 EOB chars. */ - tao_yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ); - } - else - /* Can't grow it, we don't own it. */ - b->yy_ch_buf = 0; + if ( new_size <= 0 ) + b->yy_buf_size += b->yy_buf_size / 8; + else + b->yy_buf_size *= 2; - if ( ! b->yy_ch_buf ) - YY_FATAL_ERROR( - "fatal error - scanner input buffer overflow" ); + b->yy_ch_buf = (char *) + /* Include room in for 2 EOB chars. */ + yyrealloc( (void *) b->yy_ch_buf, + (yy_size_t) (b->yy_buf_size + 2) ); + } + else + /* Can't grow it, we don't own it. */ + b->yy_ch_buf = 0; - (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; + if ( ! b->yy_ch_buf ) + YY_FATAL_ERROR( + "fatal error - scanner input buffer overflow" ); - num_to_read = (int)(YY_CURRENT_BUFFER_LVALUE->yy_buf_size - - number_to_move - 1); + (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; - } + num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - + number_to_move - 1; - if ( num_to_read > YY_READ_BUF_SIZE ) - num_to_read = YY_READ_BUF_SIZE; + } - /* Read in more data. */ - YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), - (yy_n_chars), (size_t) num_to_read ); + if ( num_to_read > YY_READ_BUF_SIZE ) + num_to_read = YY_READ_BUF_SIZE; - YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); - } + /* Read in more data. */ + YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), + (yy_n_chars), num_to_read ); - if ( (yy_n_chars) == 0 ) - { - if ( number_to_move == YY_MORE_ADJ ) - { - ret_val = EOB_ACT_END_OF_FILE; - tao_yyrestart(tao_yyin ); - } + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } - else - { - ret_val = EOB_ACT_LAST_MATCH; - YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = - YY_BUFFER_EOF_PENDING; - } - } + if ( (yy_n_chars) == 0 ) + { + if ( number_to_move == YY_MORE_ADJ ) + { + ret_val = EOB_ACT_END_OF_FILE; + yyrestart( yyin ); + } else - ret_val = EOB_ACT_CONTINUE_SCAN; - - if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { - /* Extend the array by 50%, plus the number we really need. */ - yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); - YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) tao_yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); - if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) - YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + { + ret_val = EOB_ACT_LAST_MATCH; + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = + YY_BUFFER_EOF_PENDING; + } } - (yy_n_chars) += number_to_move; - YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; - YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; + else + ret_val = EOB_ACT_CONTINUE_SCAN; + + if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { + /* Extend the array by 50%, plus the number we really need. */ + int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc( + (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size ); + if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + /* "- 2" to take care of EOB's */ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2); + } + + (yy_n_chars) += number_to_move; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; - (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; + (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; - return ret_val; + return ret_val; } /* yy_get_previous_state - get the state just before the EOB char was reached */ static yy_state_type yy_get_previous_state (void) { - yy_state_type yy_current_state; - char *yy_cp; + yy_state_type yy_current_state; + char *yy_cp; - yy_current_state = (yy_start); - yy_current_state += YY_AT_BOL(); + yy_current_state = (yy_start); + yy_current_state += YY_AT_BOL(); - for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) - { - YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); - if ( yy_accept[yy_current_state] ) - { - (yy_last_accepting_state) = yy_current_state; - (yy_last_accepting_cpos) = yy_cp; - } - while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) - { - yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 593 ) - yy_c = yy_meta[(unsigned int) yy_c]; - } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - } + for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) + { + YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); + if ( yy_accept[yy_current_state] ) + { + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; + } + while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) + { + yy_current_state = (int) yy_def[yy_current_state]; + if ( yy_current_state >= 593 ) + yy_c = yy_meta[yy_c]; + } + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; + } - return yy_current_state; + return yy_current_state; } /* yy_try_NUL_trans - try to make a transition on the NUL character * * synopsis - * next_state = yy_try_NUL_trans( current_state ); + * next_state = yy_try_NUL_trans( current_state ); */ static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) { - int yy_is_jam; + int yy_is_jam; char *yy_cp = (yy_c_buf_p); - YY_CHAR yy_c = 1; - if ( yy_accept[yy_current_state] ) - { - (yy_last_accepting_state) = yy_current_state; - (yy_last_accepting_cpos) = yy_cp; - } - while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) - { - yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 593 ) - yy_c = yy_meta[(unsigned int) yy_c]; - } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 592); + YY_CHAR yy_c = 1; + if ( yy_accept[yy_current_state] ) + { + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; + } + while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) + { + yy_current_state = (int) yy_def[yy_current_state]; + if ( yy_current_state >= 593 ) + yy_c = yy_meta[yy_c]; + } + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; + yy_is_jam = (yy_current_state == 592); return yy_is_jam ? 0 : yy_current_state; } +#ifndef YY_NO_UNPUT + static void yyunput (int c, char * yy_bp ) { char *yy_cp; yy_cp = (yy_c_buf_p); - /* undo effects of setting up tao_yytext */ - *yy_cp = (yy_hold_char); + /* undo effects of setting up yytext */ + *yy_cp = (yy_hold_char); + + if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) + { /* need to shift things up to make room */ + /* +2 for EOB chars. */ + int number_to_move = (yy_n_chars) + 2; + char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; + char *source = + &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; + + while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) + *--dest = *--source; + + yy_cp += (int) (dest - source); + yy_bp += (int) (dest - source); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = + (yy_n_chars) = (int) YY_CURRENT_BUFFER_LVALUE->yy_buf_size; if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) - { /* need to shift things up to make room */ - /* +2 for EOB chars. */ - int number_to_move = (yy_n_chars) + 2; - char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ - YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; - char *source = - &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; - - while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) - *--dest = *--source; - - yy_cp += (int) (dest - source); - yy_bp += (int) (dest - source); - YY_CURRENT_BUFFER_LVALUE->yy_n_chars = - (yy_n_chars) = static_cast<int> (YY_CURRENT_BUFFER_LVALUE->yy_buf_size); - - if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) - YY_FATAL_ERROR( "flex scanner push-back overflow" ); - } + YY_FATAL_ERROR( "flex scanner push-back overflow" ); + } - *--yy_cp = (char) c; + *--yy_cp = (char) c; - (yytext_ptr) = yy_bp; - (yy_hold_char) = *yy_cp; - (yy_c_buf_p) = yy_cp; + (yytext_ptr) = yy_bp; + (yy_hold_char) = *yy_cp; + (yy_c_buf_p) = yy_cp; } +#endif + #ifndef YY_NO_INPUT #ifdef __cplusplus static int yyinput (void) @@ -2434,133 +2669,133 @@ static int yy_get_next_buffer (void) #endif { - int c; + int c; - *(yy_c_buf_p) = (yy_hold_char); + *(yy_c_buf_p) = (yy_hold_char); - if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) + if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) + { + /* yy_c_buf_p now points to the character we want to return. + * If this occurs *before* the EOB characters, then it's a + * valid NUL; if not, then we've hit the end of the buffer. + */ + if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) + /* This was really a NUL. */ + *(yy_c_buf_p) = '\0'; + + else + { /* need more input */ + int offset = (int) ((yy_c_buf_p) - (yytext_ptr)); + ++(yy_c_buf_p); + + switch ( yy_get_next_buffer( ) ) { - /* yy_c_buf_p now points to the character we want to return. - * If this occurs *before* the EOB characters, then it's a - * valid NUL; if not, then we've hit the end of the buffer. - */ - if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) - /* This was really a NUL. */ - *(yy_c_buf_p) = '\0'; + case EOB_ACT_LAST_MATCH: + /* This happens because yy_g_n_b() + * sees that we've accumulated a + * token and flags that we need to + * try matching the token before + * proceeding. But for input(), + * there's no matching to consider. + * So convert the EOB_ACT_LAST_MATCH + * to EOB_ACT_END_OF_FILE. + */ + + /* Reset buffer status. */ + yyrestart( yyin ); + + /*FALLTHROUGH*/ + + case EOB_ACT_END_OF_FILE: + { + if ( yywrap( ) ) + return 0; - else - { /* need more input */ - int offset = static_cast<int> ((yy_c_buf_p) - (yytext_ptr)); - ++(yy_c_buf_p); - - switch ( yy_get_next_buffer( ) ) - { - case EOB_ACT_LAST_MATCH: - /* This happens because yy_g_n_b() - * sees that we've accumulated a - * token and flags that we need to - * try matching the token before - * proceeding. But for input(), - * there's no matching to consider. - * So convert the EOB_ACT_LAST_MATCH - * to EOB_ACT_END_OF_FILE. - */ - - /* Reset buffer status. */ - tao_yyrestart(tao_yyin ); - - /*FALLTHROUGH*/ - - case EOB_ACT_END_OF_FILE: - { - if ( tao_yywrap( ) ) - return EOF; - - if ( ! (yy_did_buffer_switch_on_eof) ) - YY_NEW_FILE; + if ( ! (yy_did_buffer_switch_on_eof) ) + YY_NEW_FILE; #ifdef __cplusplus - return yyinput(); + return yyinput(); #else - return input(); + return input(); #endif - } + } - case EOB_ACT_CONTINUE_SCAN: - (yy_c_buf_p) = (yytext_ptr) + offset; - break; - } - } + case EOB_ACT_CONTINUE_SCAN: + (yy_c_buf_p) = (yytext_ptr) + offset; + break; } + } + } - c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ - *(yy_c_buf_p) = '\0'; /* preserve tao_yytext */ - (yy_hold_char) = *++(yy_c_buf_p); + c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ + *(yy_c_buf_p) = '\0'; /* preserve yytext */ + (yy_hold_char) = *++(yy_c_buf_p); - YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n'); + YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n'); - return c; + return c; } -#endif /* ifndef YY_NO_INPUT */ +#endif /* ifndef YY_NO_INPUT */ /** Immediately switch to a different input stream. * @param input_file A readable stream. * * @note This function does not reset the start condition to @c INITIAL . */ - void tao_yyrestart (FILE * input_file ) + void yyrestart (FILE * input_file ) { - if ( ! YY_CURRENT_BUFFER ){ - tao_yyensure_buffer_stack (); - YY_CURRENT_BUFFER_LVALUE = - tao_yy_create_buffer(tao_yyin,YY_BUF_SIZE ); - } + if ( ! YY_CURRENT_BUFFER ){ + yyensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + yy_create_buffer( yyin, YY_BUF_SIZE ); + } - tao_yy_init_buffer(YY_CURRENT_BUFFER,input_file ); - tao_yy_load_buffer_state( ); + yy_init_buffer( YY_CURRENT_BUFFER, input_file ); + yy_load_buffer_state( ); } /** Switch to a different input buffer. * @param new_buffer The new input buffer. * */ - void tao_yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) + void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) { - /* TODO. We should be able to replace this entire function body - * with - * tao_yypop_buffer_state(); - * tao_yypush_buffer_state(new_buffer); + /* TODO. We should be able to replace this entire function body + * with + * yypop_buffer_state(); + * yypush_buffer_state(new_buffer); */ - tao_yyensure_buffer_stack (); - if ( YY_CURRENT_BUFFER == new_buffer ) - return; + yyensure_buffer_stack (); + if ( YY_CURRENT_BUFFER == new_buffer ) + return; - if ( YY_CURRENT_BUFFER ) - { - /* Flush out information for old buffer. */ - *(yy_c_buf_p) = (yy_hold_char); - YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); - YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); - } + if ( YY_CURRENT_BUFFER ) + { + /* Flush out information for old buffer. */ + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } - YY_CURRENT_BUFFER_LVALUE = new_buffer; - tao_yy_load_buffer_state( ); + YY_CURRENT_BUFFER_LVALUE = new_buffer; + yy_load_buffer_state( ); - /* We don't actually know whether we did this switch during - * EOF (tao_yywrap()) processing, but the only time this flag - * is looked at is after tao_yywrap() is called, so it's safe - * to go ahead and always set it. - */ - (yy_did_buffer_switch_on_eof) = 1; + /* We don't actually know whether we did this switch during + * EOF (yywrap()) processing, but the only time this flag + * is looked at is after yywrap() is called, so it's safe + * to go ahead and always set it. + */ + (yy_did_buffer_switch_on_eof) = 1; } -static void tao_yy_load_buffer_state (void) +static void yy_load_buffer_state (void) { - (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; - (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; - tao_yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; - (yy_hold_char) = *(yy_c_buf_p); + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; + yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; + (yy_hold_char) = *(yy_c_buf_p); } /** Allocate and initialize an input buffer state. @@ -2569,65 +2804,65 @@ static void tao_yy_load_buffer_state (void) * * @return the allocated buffer state. */ - YY_BUFFER_STATE tao_yy_create_buffer (FILE * file, int size ) + YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) { - YY_BUFFER_STATE b; + YY_BUFFER_STATE b; - b = (YY_BUFFER_STATE) tao_yyalloc(sizeof( struct yy_buffer_state ) ); - if ( ! b ) - YY_FATAL_ERROR( "out of dynamic memory in tao_yy_create_buffer()" ); + b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); + if ( ! b ) + YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); - b->yy_buf_size = size; + b->yy_buf_size = size; - /* yy_ch_buf has to be 2 characters longer than the size given because - * we need to put in 2 end-of-buffer characters. - */ - b->yy_ch_buf = (char *) tao_yyalloc(b->yy_buf_size + 2 ); - if ( ! b->yy_ch_buf ) - YY_FATAL_ERROR( "out of dynamic memory in tao_yy_create_buffer()" ); + /* yy_ch_buf has to be 2 characters longer than the size given because + * we need to put in 2 end-of-buffer characters. + */ + b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) ); + if ( ! b->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); - b->yy_is_our_buffer = 1; + b->yy_is_our_buffer = 1; - tao_yy_init_buffer(b,file ); + yy_init_buffer( b, file ); - return b; + return b; } /** Destroy the buffer. - * @param b a buffer created with tao_yy_create_buffer() + * @param b a buffer created with yy_create_buffer() * */ - void tao_yy_delete_buffer (YY_BUFFER_STATE b ) + void yy_delete_buffer (YY_BUFFER_STATE b ) { - if ( ! b ) - return; + if ( ! b ) + return; - if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ - YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; + if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ + YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; - if ( b->yy_is_our_buffer ) - tao_yyfree((void *) b->yy_ch_buf ); + if ( b->yy_is_our_buffer ) + yyfree( (void *) b->yy_ch_buf ); - tao_yyfree((void *) b ); + yyfree( (void *) b ); } /* Initializes or reinitializes a buffer. * This function is sometimes called more than once on the same buffer, - * such as during a tao_yyrestart() or at EOF. + * such as during a yyrestart() or at EOF. */ - static void tao_yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) + static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) { - int oerrno = errno; + int oerrno = errno; - tao_yy_flush_buffer(b ); + yy_flush_buffer( b ); - b->yy_input_file = file; - b->yy_fill_buffer = 1; + b->yy_input_file = file; + b->yy_fill_buffer = 1; - /* If b is the current buffer, then tao_yy_init_buffer was _probably_ - * called from tao_yyrestart() or through yy_get_next_buffer. + /* If b is the current buffer, then yy_init_buffer was _probably_ + * called from yyrestart() or through yy_get_next_buffer. * In that case, we don't want to reset the lineno or column. */ if (b != YY_CURRENT_BUFFER){ @@ -2637,34 +2872,34 @@ static void tao_yy_load_buffer_state (void) b->yy_is_interactive = 0; - errno = oerrno; + errno = oerrno; } /** Discard all buffered characters. On the next scan, YY_INPUT will be called. * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. * */ - void tao_yy_flush_buffer (YY_BUFFER_STATE b ) + void yy_flush_buffer (YY_BUFFER_STATE b ) { - if ( ! b ) - return; + if ( ! b ) + return; - b->yy_n_chars = 0; + b->yy_n_chars = 0; - /* We always need two end-of-buffer characters. The first causes - * a transition to the end-of-buffer state. The second causes - * a jam in that state. - */ - b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; - b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; + /* We always need two end-of-buffer characters. The first causes + * a transition to the end-of-buffer state. The second causes + * a jam in that state. + */ + b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; + b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; - b->yy_buf_pos = &b->yy_ch_buf[0]; + b->yy_buf_pos = &b->yy_ch_buf[0]; - b->yy_at_bol = 1; - b->yy_buffer_status = YY_BUFFER_NEW; + b->yy_at_bol = 1; + b->yy_buffer_status = YY_BUFFER_NEW; - if ( b == YY_CURRENT_BUFFER ) - tao_yy_load_buffer_state( ); + if ( b == YY_CURRENT_BUFFER ) + yy_load_buffer_state( ); } /** Pushes the new state onto the stack. The new state becomes @@ -2673,96 +2908,96 @@ static void tao_yy_load_buffer_state (void) * @param new_buffer The new state. * */ -void tao_yypush_buffer_state (YY_BUFFER_STATE new_buffer ) +void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) { - if (new_buffer == 0) - return; + if (new_buffer == 0) + return; - tao_yyensure_buffer_stack(); + yyensure_buffer_stack(); - /* This block is copied from tao_yy_switch_to_buffer. */ - if ( YY_CURRENT_BUFFER ) - { - /* Flush out information for old buffer. */ - *(yy_c_buf_p) = (yy_hold_char); - YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); - YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); - } + /* This block is copied from yy_switch_to_buffer. */ + if ( YY_CURRENT_BUFFER ) + { + /* Flush out information for old buffer. */ + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } - /* Only push if top exists. Otherwise, replace top. */ - if (YY_CURRENT_BUFFER) - (yy_buffer_stack_top)++; - YY_CURRENT_BUFFER_LVALUE = new_buffer; + /* Only push if top exists. Otherwise, replace top. */ + if (YY_CURRENT_BUFFER) + (yy_buffer_stack_top)++; + YY_CURRENT_BUFFER_LVALUE = new_buffer; - /* copied from tao_yy_switch_to_buffer. */ - tao_yy_load_buffer_state( ); - (yy_did_buffer_switch_on_eof) = 1; + /* copied from yy_switch_to_buffer. */ + yy_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; } /** Removes and deletes the top of the stack, if present. * The next element becomes the new top. * */ -void tao_yypop_buffer_state (void) +void yypop_buffer_state (void) { - if (!YY_CURRENT_BUFFER) - return; + if (!YY_CURRENT_BUFFER) + return; - tao_yy_delete_buffer(YY_CURRENT_BUFFER ); - YY_CURRENT_BUFFER_LVALUE = 0; - if ((yy_buffer_stack_top) > 0) - --(yy_buffer_stack_top); + yy_delete_buffer(YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = 0; + if ((yy_buffer_stack_top) > 0) + --(yy_buffer_stack_top); - if (YY_CURRENT_BUFFER) { - tao_yy_load_buffer_state( ); - (yy_did_buffer_switch_on_eof) = 1; - } + if (YY_CURRENT_BUFFER) { + yy_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; + } } /* Allocates the stack if it does not exist. * Guarantees space for at least one push. */ -static void tao_yyensure_buffer_stack (void) +static void yyensure_buffer_stack (void) { - int num_to_alloc; + yy_size_t num_to_alloc; - if (!(yy_buffer_stack)) { + if (!(yy_buffer_stack)) { - /* First allocation is just for 2 elements, since we don't know if this - * scanner will even need a stack. We use 2 instead of 1 to avoid an - * immediate realloc on the next call. + /* First allocation is just for 2 elements, since we don't know if this + * scanner will even need a stack. We use 2 instead of 1 to avoid an + * immediate realloc on the next call. */ - num_to_alloc = 1; - (yy_buffer_stack) = (struct yy_buffer_state**)tao_yyalloc - (num_to_alloc * sizeof(struct yy_buffer_state*) - ); - if ( ! (yy_buffer_stack) ) - YY_FATAL_ERROR( "out of dynamic memory in tao_yyensure_buffer_stack()" ); - - memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); - - (yy_buffer_stack_max) = num_to_alloc; - (yy_buffer_stack_top) = 0; - return; - } + num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */ + (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc + (num_to_alloc * sizeof(struct yy_buffer_state*) + ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); + + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); + + (yy_buffer_stack_max) = num_to_alloc; + (yy_buffer_stack_top) = 0; + return; + } - if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ + if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ - /* Increase the buffer to prepare for a possible push. */ - int grow_size = 8 /* arbitrary grow size */; + /* Increase the buffer to prepare for a possible push. */ + yy_size_t grow_size = 8 /* arbitrary grow size */; - num_to_alloc = static_cast<int> (yy_buffer_stack_max) + grow_size; - (yy_buffer_stack) = (struct yy_buffer_state**)tao_yyrealloc - ((yy_buffer_stack), - num_to_alloc * sizeof(struct yy_buffer_state*) - ); - if ( ! (yy_buffer_stack) ) - YY_FATAL_ERROR( "out of dynamic memory in tao_yyensure_buffer_stack()" ); + num_to_alloc = (yy_buffer_stack_max) + grow_size; + (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc + ((yy_buffer_stack), + num_to_alloc * sizeof(struct yy_buffer_state*) + ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); - /* zero only the new slots.*/ - memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); - (yy_buffer_stack_max) = num_to_alloc; - } + /* zero only the new slots.*/ + memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); + (yy_buffer_stack_max) = num_to_alloc; + } } /** Setup the input buffer state to scan directly from a user-specified character buffer. @@ -2771,238 +3006,238 @@ static void tao_yyensure_buffer_stack (void) * * @return the newly allocated buffer state object. */ -YY_BUFFER_STATE tao_yy_scan_buffer (char * base, yy_size_t size ) +YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) { - YY_BUFFER_STATE b; - - if ( size < 2 || - base[size-2] != YY_END_OF_BUFFER_CHAR || - base[size-1] != YY_END_OF_BUFFER_CHAR ) - /* They forgot to leave room for the EOB's. */ - return 0; - - b = (YY_BUFFER_STATE) tao_yyalloc(sizeof( struct yy_buffer_state ) ); - if ( ! b ) - YY_FATAL_ERROR( "out of dynamic memory in tao_yy_scan_buffer()" ); - - b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ - b->yy_buf_pos = b->yy_ch_buf = base; - b->yy_is_our_buffer = 0; - b->yy_input_file = 0; - b->yy_n_chars = static_cast<int> (b->yy_buf_size); - b->yy_is_interactive = 0; - b->yy_at_bol = 1; - b->yy_fill_buffer = 0; - b->yy_buffer_status = YY_BUFFER_NEW; - - tao_yy_switch_to_buffer(b ); - - return b; + YY_BUFFER_STATE b; + + if ( size < 2 || + base[size-2] != YY_END_OF_BUFFER_CHAR || + base[size-1] != YY_END_OF_BUFFER_CHAR ) + /* They forgot to leave room for the EOB's. */ + return 0; + + b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); + if ( ! b ) + YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); + + b->yy_buf_size = (int) (size - 2); /* "- 2" to take care of EOB's */ + b->yy_buf_pos = b->yy_ch_buf = base; + b->yy_is_our_buffer = 0; + b->yy_input_file = 0; + b->yy_n_chars = b->yy_buf_size; + b->yy_is_interactive = 0; + b->yy_at_bol = 1; + b->yy_fill_buffer = 0; + b->yy_buffer_status = YY_BUFFER_NEW; + + yy_switch_to_buffer( b ); + + return b; } -/** Setup the input buffer state to scan a string. The next call to tao_yylex() will +/** Setup the input buffer state to scan a string. The next call to yylex() will * scan from a @e copy of @a str. * @param yystr a NUL-terminated string to scan * * @return the newly allocated buffer state object. * @note If you want to scan bytes that may contain NUL values, then use - * tao_yy_scan_bytes() instead. + * yy_scan_bytes() instead. */ -YY_BUFFER_STATE tao_yy_scan_string (yyconst char * yystr ) +YY_BUFFER_STATE yy_scan_string (const char * yystr ) { - return tao_yy_scan_bytes(yystr, static_cast<int> (strlen(yystr)) ); + return yy_scan_bytes( yystr, (int) strlen(yystr) ); } -/** Setup the input buffer state to scan the given bytes. The next call to tao_yylex() will +/** Setup the input buffer state to scan the given bytes. The next call to yylex() will * scan from a @e copy of @a bytes. * @param yybytes the byte buffer to scan * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. * * @return the newly allocated buffer state object. */ -YY_BUFFER_STATE tao_yy_scan_bytes (yyconst char * yybytes, int _yybytes_len ) +YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len ) { - YY_BUFFER_STATE b; - char *buf; - yy_size_t n; - int i; + YY_BUFFER_STATE b; + char *buf; + yy_size_t n; + int i; - /* Get memory for full buffer, including space for trailing EOB's. */ - n = _yybytes_len + 2; - buf = (char *) tao_yyalloc(n ); - if ( ! buf ) - YY_FATAL_ERROR( "out of dynamic memory in tao_yy_scan_bytes()" ); + /* Get memory for full buffer, including space for trailing EOB's. */ + n = (yy_size_t) (_yybytes_len + 2); + buf = (char *) yyalloc( n ); + if ( ! buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); - for ( i = 0; i < _yybytes_len; ++i ) - buf[i] = yybytes[i]; + for ( i = 0; i < _yybytes_len; ++i ) + buf[i] = yybytes[i]; - buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; + buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; - b = tao_yy_scan_buffer(buf,n ); - if ( ! b ) - YY_FATAL_ERROR( "bad buffer in tao_yy_scan_bytes()" ); + b = yy_scan_buffer( buf, n ); + if ( ! b ) + YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); - /* It's okay to grow etc. this buffer, and we should throw it - * away when we're done. - */ - b->yy_is_our_buffer = 1; + /* It's okay to grow etc. this buffer, and we should throw it + * away when we're done. + */ + b->yy_is_our_buffer = 1; - return b; + return b; } #ifndef YY_EXIT_FAILURE #define YY_EXIT_FAILURE 2 #endif -static void yy_fatal_error (yyconst char* msg ) +static void yynoreturn yy_fatal_error (const char* msg ) { - (void) fprintf( stderr, "%s\n", msg ); - exit( YY_EXIT_FAILURE ); + fprintf( stderr, "%s\n", msg ); + exit( YY_EXIT_FAILURE ); } /* Redefine yyless() so it works in section 3 code. */ #undef yyless #define yyless(n) \ - do \ - { \ - /* Undo effects of setting up tao_yytext. */ \ + do \ + { \ + /* Undo effects of setting up yytext. */ \ int yyless_macro_arg = (n); \ YY_LESS_LINENO(yyless_macro_arg);\ - tao_yytext[tao_yyleng] = (yy_hold_char); \ - (yy_c_buf_p) = tao_yytext + yyless_macro_arg; \ - (yy_hold_char) = *(yy_c_buf_p); \ - *(yy_c_buf_p) = '\0'; \ - tao_yyleng = yyless_macro_arg; \ - } \ - while ( 0 ) + yytext[yyleng] = (yy_hold_char); \ + (yy_c_buf_p) = yytext + yyless_macro_arg; \ + (yy_hold_char) = *(yy_c_buf_p); \ + *(yy_c_buf_p) = '\0'; \ + yyleng = yyless_macro_arg; \ + } \ + while ( 0 ) /* Accessor methods (get/set functions) to struct members. */ /** Get the current line number. * */ -int tao_yyget_lineno (void) +int yyget_lineno (void) { - return tao_yylineno; + return yylineno; } /** Get the input stream. * */ -FILE *tao_yyget_in (void) +FILE *yyget_in (void) { - return tao_yyin; + return yyin; } /** Get the output stream. * */ -FILE *tao_yyget_out (void) +FILE *yyget_out (void) { - return tao_yyout; + return yyout; } /** Get the length of the current token. * */ -int tao_yyget_leng (void) +int yyget_leng (void) { - return tao_yyleng; + return yyleng; } /** Get the current token. * */ -char *tao_yyget_text (void) +char *yyget_text (void) { - return tao_yytext; + return yytext; } /** Set the current line number. - * @param line_number + * @param _line_number line number * */ -void tao_yyset_lineno (int line_number ) +void yyset_lineno (int _line_number ) { - tao_yylineno = line_number; + yylineno = _line_number; } /** Set the input stream. This does not discard the current * input buffer. - * @param in_str A readable stream. + * @param _in_str A readable stream. * - * @see tao_yy_switch_to_buffer + * @see yy_switch_to_buffer */ -void tao_yyset_in (FILE * in_str ) +void yyset_in (FILE * _in_str ) { - tao_yyin = in_str ; + yyin = _in_str ; } -void tao_yyset_out (FILE * out_str ) +void yyset_out (FILE * _out_str ) { - tao_yyout = out_str ; + yyout = _out_str ; } -int tao_yyget_debug (void) +int yyget_debug (void) { - return tao_yy_flex_debug; + return yy_flex_debug; } -void tao_yyset_debug (int bdebug ) +void yyset_debug (int _bdebug ) { - tao_yy_flex_debug = bdebug ; + yy_flex_debug = _bdebug ; } static int yy_init_globals (void) { /* Initialization is the same as for the non-reentrant scanner. - * This function is called from tao_yylex_destroy(), so don't allocate here. + * This function is called from yylex_destroy(), so don't allocate here. */ (yy_buffer_stack) = 0; (yy_buffer_stack_top) = 0; (yy_buffer_stack_max) = 0; - (yy_c_buf_p) = (char *) 0; + (yy_c_buf_p) = 0; (yy_init) = 0; (yy_start) = 0; /* Defined in main.c */ #ifdef YY_STDINIT - tao_yyin = stdin; - tao_yyout = stdout; + yyin = stdin; + yyout = stdout; #else - tao_yyin = (FILE *) 0; - tao_yyout = (FILE *) 0; + yyin = 0; + yyout = 0; #endif /* For future reference: Set errno on error, since we are called by - * tao_yylex_init() + * yylex_init() */ return 0; } -/* tao_yylex_destroy is for both reentrant and non-reentrant scanners. */ -int tao_yylex_destroy (void) +/* yylex_destroy is for both reentrant and non-reentrant scanners. */ +int yylex_destroy (void) { /* Pop the buffer stack, destroying each element. */ - while(YY_CURRENT_BUFFER){ - tao_yy_delete_buffer(YY_CURRENT_BUFFER ); - YY_CURRENT_BUFFER_LVALUE = 0; - tao_yypop_buffer_state(); - } + while(YY_CURRENT_BUFFER){ + yy_delete_buffer( YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = 0; + yypop_buffer_state(); + } - /* Destroy the stack itself. */ - tao_yyfree((yy_buffer_stack) ); - (yy_buffer_stack) = 0; + /* Destroy the stack itself. */ + yyfree((yy_buffer_stack) ); + (yy_buffer_stack) = 0; /* Reset the globals. This is important in a non-reentrant scanner so the next time - * tao_yylex() is called, initialization will occur. */ + * yylex() is called, initialization will occur. */ yy_init_globals( ); return 0; @@ -3013,52 +3248,53 @@ int tao_yylex_destroy (void) */ #ifndef yytext_ptr -static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) +static void yy_flex_strncpy (char* s1, const char * s2, int n ) { - int i; - for ( i = 0; i < n; ++i ) - s1[i] = s2[i]; + + int i; + for ( i = 0; i < n; ++i ) + s1[i] = s2[i]; } #endif #ifdef YY_NEED_STRLEN -static int yy_flex_strlen (yyconst char * s ) +static int yy_flex_strlen (const char * s ) { - int n; - for ( n = 0; s[n]; ++n ) - ; + int n; + for ( n = 0; s[n]; ++n ) + ; - return n; + return n; } #endif -void *tao_yyalloc (yy_size_t size ) +void *yyalloc (yy_size_t size ) { - return (void *) malloc( size ); + return malloc(size); } -void *tao_yyrealloc (void * ptr, yy_size_t size ) +void *yyrealloc (void * ptr, yy_size_t size ) { - /* The cast to (char *) in the following accommodates both - * implementations that use char* generic pointers, and those - * that use void* generic pointers. It works with the latter - * because both ANSI C and C++ allow castless assignment from - * any pointer type to void*, and deal with argument conversions - * as though doing an assignment. - */ - return (void *) realloc( (char *) ptr, size ); + + /* The cast to (char *) in the following accommodates both + * implementations that use char* generic pointers, and those + * that use void* generic pointers. It works with the latter + * because both ANSI C and C++ allow castless assignment from + * any pointer type to void*, and deal with argument conversions + * as though doing an assignment. + */ + return realloc(ptr, size); } -void tao_yyfree (void * ptr ) +void yyfree (void * ptr ) { - free( (char *) ptr ); /* see tao_yyrealloc() for (char *) cast */ + free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ } #define YYTABLES_NAME "yytables" #line 413 "fe/idl.ll" - /* subroutines */ static bool diff --git a/TAO/TAO_IDL/tao_idl_fe.mpc b/TAO/TAO_IDL/tao_idl_fe.mpc index fac0aa7b49b..8feb6d337b2 100644 --- a/TAO/TAO_IDL/tao_idl_fe.mpc +++ b/TAO/TAO_IDL/tao_idl_fe.mpc @@ -25,10 +25,10 @@ project(TAO_IDL_GEN) { "ifeq ($(notdir $(LEX)), flex)" " $(LEX) -t -P tao_yy -ofe/idl.yy.cpp fe/idl.ll | \\" " sed -e 's/ NULL/ 0/g' \\" - " -e 's/ / /g' \\" + " -e 's/ / /g' \\" " -e 's/ *$$\/\/g' \\" " -e 's/YY_BREAK break;/YY_BREAK ACE_NOTREACHED (break;)/g' \\" - " -e 's/fread\([^\)]*\)/static_cast<int> (&)/g' \\" + " -e 's@#include <errno\.h>@#include \"ace/OS_NS_errno.h\"@' \\" " -e 's@#include <stdio\.h>@#include \"ace/OS_NS_stdio.h\"@' \\" " -e 's@#include <unistd\.h>@#include \"ace/os_include/os_ctype.h\"@' \\" " -e 's@c = getc@c = ACE_OS::getc@' \\" @@ -36,7 +36,7 @@ project(TAO_IDL_GEN) { " -e '/#include <[seu]/d' \\" " > fe/idl.yy.cpp" "else" - " @echo 'ERROR: You must use flex 2.5.35 or higher to process this file'" + " @echo 'ERROR: You must use flex 2.6.4 or higher to process this file'" " @/bin/false" "endif" diff --git a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEventChannel.h b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEventChannel.h index 0a3ad7bbe82..217847c8491 100644 --- a/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEventChannel.h +++ b/TAO/orbsvcs/orbsvcs/CosEvent/CEC_TypedEventChannel.h @@ -86,7 +86,7 @@ public: /** * If not zero the event channel will deactive its Impl and call - * orb->shutdown(0), when destoy is invoked. + * orb->shutdown(0), when destroy is invoked. */ int destroy_on_shutdown; diff --git a/TAO/orbsvcs/orbsvcs/Naming/Hash_Naming_Context.h b/TAO/orbsvcs/orbsvcs/Naming/Hash_Naming_Context.h index fca03ee81ca..1f3ec0ccab5 100644 --- a/TAO/orbsvcs/orbsvcs/Naming/Hash_Naming_Context.h +++ b/TAO/orbsvcs/orbsvcs/Naming/Hash_Naming_Context.h @@ -61,7 +61,7 @@ public: /** * Add a binding with the specified parameters to the table. * Return 0 on success and -1 on failure, 1 if there already is a - * binding with <id> and <kind>. + * binding with @a id and @a kind. */ virtual int bind (const char *id, const char *kind, @@ -69,7 +69,7 @@ public: CosNaming::BindingType type) = 0; /** - * Overwrite a binding containing <id> and <kind> (or create a new + * Overwrite a binding containing @a id and @a kind (or create a new * one if one doesn't exist) with the specified parameters. Returns * -1 on failure. */ @@ -78,16 +78,16 @@ public: CORBA::Object_ptr obj, CosNaming::BindingType type) = 0; - /// Remove a binding containing <id> and <kind> from the table. + /// Remove a binding containing @a id and @a kind from the table. /// Return 0 on success and -1 on failure. virtual int unbind (const char * id, const char * kind) = 0; /** - * Find the binding containing <id> and <kind> in the table, and + * Find the binding containing @a id and @a kind in the table, and * pass binding's type and object back to the caller by reference. * Return 0 on success and -1 on failure. Note: a 'duplicated' object - * reference is assigned to <obj>, so the caller is responsible for + * reference is assigned to @a obj, so the caller is responsible for * its deallocation. */ virtual int find (const char * id, @@ -141,7 +141,7 @@ public: // = CosNaming::NamingContext idl interface methods. /** - * Create a binding for name <n> and object <obj> in the naming + * Create a binding for name @a n and object @a obj in the naming * context. Compound names are treated as follows: ctx->bind (<c1; * c2; c3; cn>, obj) = (ctx->resolve (<c1; c2; cn-1>))->bind (<cn>, * obj) if the there already exists a binding for the specified @@ -153,7 +153,7 @@ public: CORBA::Object_ptr obj); /** - * This is similar to <bind> operation above, except for when the + * This is similar to bind() operation above, except for when the * binding for the specified name already exists in the specified * context. In that case, the existing binding is replaced with the * new one. @@ -205,7 +205,7 @@ public: * Delete the naming context. The user should take care to <unbind> any * bindings in which the given context is bound to some names, to * avoid dangling references when invoking <destroy> operation. - * NOTE: <destory> is a no-op on the root context. + * NOTE: <destroy> is a no-op on the root context. * NOTE: after <destroy> is invoked on a Naming Context, all * BindingIterators associated with that Naming Context are also destroyed. */ diff --git a/TAO/orbsvcs/orbsvcs/Naming/Naming_Context_Interface.h b/TAO/orbsvcs/orbsvcs/Naming/Naming_Context_Interface.h index a87cf97f8d4..a50a36eba42 100644 --- a/TAO/orbsvcs/orbsvcs/Naming/Naming_Context_Interface.h +++ b/TAO/orbsvcs/orbsvcs/Naming/Naming_Context_Interface.h @@ -129,7 +129,7 @@ public: * Delete the naming context. The user should take care to <unbind> any * bindings in which the given context is bound to some names, to * avoid dangling references when invoking <destroy> operation. - * NOTE: <destory> is a no-op on the root context. + * NOTE: <destroy> is a no-op on the root context. * NOTE: after <destroy> is invoked on a Naming Context, all * BindingIterators associated with that Naming Context are also destroyed. */ @@ -325,7 +325,7 @@ public: * Delete the naming context. The user should take care to <unbind> any * bindings in which the given context is bound to some names, to * avoid dangling references when invoking <destroy> operation. - * NOTE: <destory> is a no-op on the root context. + * NOTE: <destroy> is a no-op on the root context. * NOTE: after <destroy> is invoked on a Naming Context, all * BindingIterators associated with that Naming Context are also destroyed. */ diff --git a/TAO/orbsvcs/orbsvcs/Naming/Storable_Naming_Context.h b/TAO/orbsvcs/orbsvcs/Naming/Storable_Naming_Context.h index b40a8da924a..67116707bc7 100644 --- a/TAO/orbsvcs/orbsvcs/Naming/Storable_Naming_Context.h +++ b/TAO/orbsvcs/orbsvcs/Naming/Storable_Naming_Context.h @@ -351,7 +351,7 @@ public: * Delete the naming context. The user should take care to <unbind> any * bindings in which the given context is bound to some names, to * avoid dangling references when invoking <destroy> operation. - * NOTE: <destory> is a no-op on the root context. + * NOTE: <destroy> is a no-op on the root context. * NOTE: after <destroy> is invoked on a Naming Context, all * BindingIterators associated with that Naming Context are also destroyed. */ diff --git a/TAO/tests/Bug_2953_Regression/client.cpp b/TAO/tests/Bug_2953_Regression/client.cpp index 97767d80a2a..e85c91e7923 100644 --- a/TAO/tests/Bug_2953_Regression/client.cpp +++ b/TAO/tests/Bug_2953_Regression/client.cpp @@ -18,7 +18,7 @@ void shutdownORB(CORBA::ORB_ptr orb, const char * orbid) orb->destroy(); ACE_DEBUG ((LM_DEBUG, - "ORB <%C> is destoyed\n", + "ORB <%C> is destroyed\n", orbid)); } diff --git a/TAO/tests/Bug_2953_Regression/server.cpp b/TAO/tests/Bug_2953_Regression/server.cpp index 0c7ac2eb322..5c55c057945 100644 --- a/TAO/tests/Bug_2953_Regression/server.cpp +++ b/TAO/tests/Bug_2953_Regression/server.cpp @@ -209,7 +209,7 @@ void shutdownORB(CORBA::ORB_ptr orb, const char * orbid) orb->destroy(); ACE_DEBUG ((LM_DEBUG, - "ORB <%C> is destoyed\n", + "ORB <%C> is destroyed\n", orbid)); } diff --git a/TAO/tests/Bug_3683_Regression/Echo.idl b/TAO/tests/Bug_3683_Regression/Echo.idl index ffc69e77ab6..52779336b89 100644 --- a/TAO/tests/Bug_3683_Regression/Echo.idl +++ b/TAO/tests/Bug_3683_Regression/Echo.idl @@ -2,24 +2,22 @@ #if !defined (_ECHO_IDL) #define _ECHO_IDL +// Defines an interface that encapsulates operations that return the +// mesg string to be displayed and shuts down the server. interface Echo { - // = TITLE - // Defines an interface that encapsulates operations that return the - // mesg string to be displayed and shuts down the server. - typedef sequence<Object> List; - List echo_list (in string message); // This operation returns the message as a sequence of Objects and // displays it on the screen as a string. + List echo_list (in string message); - string echo_string (in string message); // This operation returns the message as a string and displays it on // the screen. + string echo_string (in string message); - oneway void shutdown (); // This operation will shutdown the server. + oneway void shutdown (); }; #endif /* _ECHO_IDL */ diff --git a/TAO/tests/Bug_3683_Regression/Simple_util.h b/TAO/tests/Bug_3683_Regression/Simple_util.h index a890314a03c..b0564357d7c 100644 --- a/TAO/tests/Bug_3683_Regression/Simple_util.h +++ b/TAO/tests/Bug_3683_Regression/Simple_util.h @@ -27,7 +27,7 @@ * A template server definition. This template can be used by * single server/client projects for definition of their * server/clients. See the directories time, bank, echo for - * further details of implemenatation. + * further details of implementation. */ template <class Servant> class Server diff --git a/TAO/tests/Bug_3940_Regression/Bug_3940_Regression.mpc b/TAO/tests/Bug_3940_Regression/Bug_3940_Regression.mpc new file mode 100644 index 00000000000..92fc577565c --- /dev/null +++ b/TAO/tests/Bug_3940_Regression/Bug_3940_Regression.mpc @@ -0,0 +1,3 @@ +// -*- MPC -*- +project (test3940) : taolib_with_idl { +} diff --git a/TAO/tests/Bug_3940_Regression/README b/TAO/tests/Bug_3940_Regression/README new file mode 100644 index 00000000000..0f8198c1b8f --- /dev/null +++ b/TAO/tests/Bug_3940_Regression/README @@ -0,0 +1,16 @@ + + +This is a compile only test. If it compiles, it's passed. + +tao_idl choked on the annotation syntax of IDL4 (and DDS-XTypes) +because that syntax was unknown to its IDL grammar: + + tao_idl -Wb,pre_include=ace/pre.h -Wb,post_include=ace/post.h -I../.. -Sa -St test.idl + syntax error + Error - tao_idl: "test.idl", line 3: Illegal syntax following module '{' opener + make[1]: *** [testC.h] Error 1 + +The first patch for this bug adds a rule in the lexer to ignore the annotations +by consuming them without action. +Actual processing of annotations is still to be done. + diff --git a/TAO/tests/Bug_3940_Regression/test.idl b/TAO/tests/Bug_3940_Regression/test.idl new file mode 100644 index 00000000000..0bb7fbcc68c --- /dev/null +++ b/TAO/tests/Bug_3940_Regression/test.idl @@ -0,0 +1,19 @@ +#if !defined (__BORLANDC__) + +module test { + + @unit("deg") + @range(min=0.0, max=360.0) + typedef float angle_t; + + @unit("degC") @min(-60) @max(100) typedef short temperature_t; + + struct structure { + @key unsigned long key; + angle_t degrees; + temperature_t celsius; + }; + +}; + +#endif diff --git a/TAO/tests/Smart_Proxies/Benchmark/client.cpp b/TAO/tests/Smart_Proxies/Benchmark/client.cpp index 09546145c47..57c559330aa 100644 --- a/TAO/tests/Smart_Proxies/Benchmark/client.cpp +++ b/TAO/tests/Smart_Proxies/Benchmark/client.cpp @@ -125,7 +125,7 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[]) // user-defined smart factory on the heap as the smart proxy // generated classes take care of destroying the object. This // way it a win situation for the application developer who - // doesnt have to make sure to destoy it and also for the smart + // doesnt have to make sure to destroy it and also for the smart // proxy designer who now can manage the lifetime of the object // much surely. diff --git a/TAO/tests/Smart_Proxies/Policy/client.cpp b/TAO/tests/Smart_Proxies/Policy/client.cpp index e6017a2b44a..b28fe0a4b24 100644 --- a/TAO/tests/Smart_Proxies/Policy/client.cpp +++ b/TAO/tests/Smart_Proxies/Policy/client.cpp @@ -103,7 +103,7 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[]) // user-defined smart factory on the heap as the smart proxy // generated classes take care of destroying the object. This // way it a win situation for the application developer who - // doesnt have to make sure to destoy it and also for the smart + // doesnt have to make sure to destroy it and also for the smart // proxy designer who now can manage the lifetime of the object // much surely. // By default this factory is permanent (i.e. registered for diff --git a/TAO/tests/Smart_Proxies/client.cpp b/TAO/tests/Smart_Proxies/client.cpp index 47d5bab2cb2..f6bdb290393 100644 --- a/TAO/tests/Smart_Proxies/client.cpp +++ b/TAO/tests/Smart_Proxies/client.cpp @@ -60,7 +60,7 @@ ACE_TMAIN(int argc, ACE_TCHAR *argv[]) // user-defined smart factory on the heap as the smart proxy // generated classes take care of destroying the object. This // way it a win situation for the application developer who - // doesnt have to make sure to destoy it and also for the smart + // doesnt have to make sure to destroy it and also for the smart // proxy designer who now can manage the lifetime of the object // much surely. Smart_Test_Factory *test_factory = 0; |