zorba-coders team mailing list archive
-
zorba-coders team
-
Mailing list archive
-
Message #21585
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
Nicolae Brinza has proposed merging lp:~zorba-coders/zorba/new-jsoniq into lp:zorba.
Commit message:
Added "common" language option and warnings. Re-enabled path expressions in JSONiq grammar.
Requested reviews:
Nicolae Brinza (nbrinza)
For more details, see:
https://code.launchpad.net/~zorba-coders/zorba/new-jsoniq/+merge/162375
Added "common" language option and warnings. Re-enabled path expressions in JSONiq grammar.
--
The attached diff has been truncated due to its size.
https://code.launchpad.net/~zorba-coders/zorba/new-jsoniq/+merge/162375
Your team Zorba Coders is subscribed to branch lp:zorba.
=== modified file 'include/zorba/pregenerated/diagnostic_list.h'
--- include/zorba/pregenerated/diagnostic_list.h 2013-05-02 10:19:11 +0000
+++ include/zorba/pregenerated/diagnostic_list.h 2013-05-03 15:29:30 +0000
@@ -952,6 +952,8 @@
extern ZORBA_DLL_PUBLIC ZorbaWarningCode ZWST0008_DEPRECATED;
+extern ZORBA_DLL_PUBLIC ZorbaWarningCode ZWST0009_COMMON_LANGUAGE_WARNING;
+
} // namespace zwarn
} // namespace zorba
#endif /* ZORBA_DIAGNOSTIC_LIST_API_H */
=== modified file 'modules/com/zorba-xquery/www/modules/pregenerated/warnings.xq'
--- modules/com/zorba-xquery/www/modules/pregenerated/warnings.xq 2013-04-25 18:28:49 +0000
+++ modules/com/zorba-xquery/www/modules/pregenerated/warnings.xq 2013-05-03 15:29:30 +0000
@@ -80,4 +80,12 @@
(:~
:)
-declare variable $zwarn:ZWST0008 as xs:QName := fn:QName($zwarn:NS, "zwarn:ZWST0008");
\ No newline at end of file
+declare variable $zwarn:ZWST0008 as xs:QName := fn:QName($zwarn:NS, "zwarn:ZWST0008");
+
+(:~
+ :
+ : This warning is enabled when the "common-language" option is employed. It will raise warnings
+ : for language features that are not supported by both XQuery and JSONiq grammars.
+ :
+:)
+declare variable $zwarn:ZWST0009 as xs:QName := fn:QName($zwarn:NS, "zwarn:ZWST0009");
\ No newline at end of file
=== modified file 'src/compiler/parser/jsoniq_parser.cpp'
--- src/compiler/parser/jsoniq_parser.cpp 2013-04-24 17:26:02 +0000
+++ src/compiler/parser/jsoniq_parser.cpp 2013-05-03 15:29:30 +0000
@@ -63,6 +63,14 @@
#define SYMTAB_PUT( s ) driver.symtab.put( s )
#define LOC( p ) driver.createQueryLoc( p )
+#define ERROR_IF_QNAME_NOT_NCNAME(qname, location) \
+ do { \
+ if ( ! static_cast<QName*>(qname)->is_ncname()) { \
+ error((location), "A NCName is expected, found a QName"); \
+ YYERROR; \
+ } \
+ } while (0);
+
#define YYDEBUG 1
@@ -71,7 +79,7 @@
/* Line 293 of lalr1.cc */
-#line 93 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 101 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
#ifdef XQUERY_PARSER
@@ -90,7 +98,7 @@
/* Line 293 of lalr1.cc */
-#line 94 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 102 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
#include "jsoniq_parser.hpp"
@@ -98,7 +106,7 @@
/* User implementation prologue. */
/* Line 299 of lalr1.cc */
-#line 777 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
template<typename T> inline void release_hack( T *ref ) {
if ( ref ) {
@@ -109,7 +117,7 @@
/* Line 299 of lalr1.cc */
-#line 113 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 121 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
#ifndef YY_
# if defined YYENABLE_NLS && YYENABLE_NLS
@@ -195,7 +203,7 @@
namespace zorba {
/* Line 382 of lalr1.cc */
-#line 199 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 207 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
/* Return YYSTR after stripping away unnecessary quotes and
backslashes, so that it's suitable for yyerror. The heuristic is
@@ -293,2507 +301,2570 @@
switch (yytype)
{
- case 112: /* "\"'DECIMAL'\"" */
+ case 111: /* "\"'DECIMAL'\"" */
/* Line 480 of lalr1.cc */
-#line 776 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ delete (yyvaluep->decval); };
/* Line 480 of lalr1.cc */
-#line 304 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 312 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
- case 127: /* "\"'DOUBLE'\"" */
+ case 126: /* "\"'DOUBLE'\"" */
/* Line 480 of lalr1.cc */
-#line 775 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ delete (yyvaluep->dval); };
/* Line 480 of lalr1.cc */
-#line 313 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 321 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
- case 152: /* "\"'INTEGER'\"" */
+ case 151: /* "\"'INTEGER'\"" */
/* Line 480 of lalr1.cc */
-#line 774 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ delete (yyvaluep->ival); };
/* Line 480 of lalr1.cc */
-#line 322 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 330 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 345: /* "VersionDecl" */
/* Line 480 of lalr1.cc */
-#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 813 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 331 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 339 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 346: /* "MainModule" */
/* Line 480 of lalr1.cc */
-#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 340 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 348 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 347: /* "LibraryModule" */
/* Line 480 of lalr1.cc */
-#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 349 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 357 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 348: /* "ModuleDecl" */
/* Line 480 of lalr1.cc */
-#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 358 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 366 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 349: /* "SIND_DeclList" */
/* Line 480 of lalr1.cc */
-#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 809 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 367 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 375 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 350: /* "SIND_Decl" */
/* Line 480 of lalr1.cc */
-#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 809 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 376 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 384 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 351: /* "Setter" */
/* Line 480 of lalr1.cc */
-#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 385 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 393 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 352: /* "BoundarySpaceDecl" */
/* Line 480 of lalr1.cc */
-#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 803 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 394 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 402 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 353: /* "DefaultCollationDecl" */
/* Line 480 of lalr1.cc */
-#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 804 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 403 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 411 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 354: /* "BaseURIDecl" */
/* Line 480 of lalr1.cc */
-#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 803 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 412 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 420 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 355: /* "ConstructionDecl" */
/* Line 480 of lalr1.cc */
-#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 803 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 421 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 429 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 356: /* "OrderingModeDecl" */
/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 430 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 438 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 357: /* "EmptyOrderDecl" */
/* Line 480 of lalr1.cc */
-#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 439 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 447 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 358: /* "CopyNamespacesDecl" */
/* Line 480 of lalr1.cc */
-#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 804 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 448 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 456 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 359: /* "Import" */
/* Line 480 of lalr1.cc */
-#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 457 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 465 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 360: /* "SchemaImport" */
/* Line 480 of lalr1.cc */
-#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 809 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 466 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 474 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 361: /* "URILiteralList" */
/* Line 480 of lalr1.cc */
-#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 475 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 483 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 362: /* "SchemaPrefix" */
/* Line 480 of lalr1.cc */
-#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 484 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 492 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 363: /* "ModuleImport" */
/* Line 480 of lalr1.cc */
-#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 493 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 501 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 364: /* "NamespaceDecl" */
/* Line 480 of lalr1.cc */
-#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 502 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 510 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 365: /* "DefaultNamespaceDecl" */
/* Line 480 of lalr1.cc */
-#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 804 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 511 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 519 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 366: /* "VFO_DeclList" */
/* Line 480 of lalr1.cc */
-#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 813 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 520 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 528 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 367: /* "VFO_Decl" */
/* Line 480 of lalr1.cc */
-#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 813 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 529 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 537 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 368: /* "DecimalFormatDecl" */
/* Line 480 of lalr1.cc */
-#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 813 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 538 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 546 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 369: /* "DecimalFormatParamList" */
/* Line 480 of lalr1.cc */
-#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 820 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ delete (yyvaluep->vstrpair); };
/* Line 480 of lalr1.cc */
-#line 547 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 555 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 370: /* "DecimalFormatParam" */
/* Line 480 of lalr1.cc */
-#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 820 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ delete (yyvaluep->strpair); };
/* Line 480 of lalr1.cc */
-#line 556 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 564 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 372: /* "OptionDecl" */
/* Line 480 of lalr1.cc */
-#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 565 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 573 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 373: /* "FTOptionDecl" */
/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 574 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 582 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 374: /* "CtxItemDecl" */
/* Line 480 of lalr1.cc */
-#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 583 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 591 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 375: /* "CtxItemDecl2" */
/* Line 480 of lalr1.cc */
-#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 592 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 600 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 376: /* "CtxItemDecl3" */
/* Line 480 of lalr1.cc */
-#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 601 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 609 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 377: /* "CtxItemDecl4" */
/* Line 480 of lalr1.cc */
-#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 610 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 618 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 378: /* "VarDecl" */
/* Line 480 of lalr1.cc */
-#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 619 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 627 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 379: /* "VarNameAndType" */
/* Line 480 of lalr1.cc */
-#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 820 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ delete (yyvaluep->varnametype); };
/* Line 480 of lalr1.cc */
-#line 628 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 636 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 380: /* "AnnotationList" */
/* Line 480 of lalr1.cc */
-#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 637 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 645 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 381: /* "Annotation" */
/* Line 480 of lalr1.cc */
-#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 646 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 654 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 382: /* "AnnotationLiteralList" */
/* Line 480 of lalr1.cc */
-#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 655 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 663 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 383: /* "FunctionDecl" */
/* Line 480 of lalr1.cc */
-#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 664 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 672 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 384: /* "FunctionDecl2" */
/* Line 480 of lalr1.cc */
-#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 673 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 681 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 385: /* "FunctionDeclSimple" */
/* Line 480 of lalr1.cc */
-#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 682 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 690 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 386: /* "FunctionDeclUpdating" */
/* Line 480 of lalr1.cc */
-#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 691 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 699 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 387: /* "FunctionSig" */
/* Line 480 of lalr1.cc */
-#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 820 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ delete (yyvaluep->fnsig); };
/* Line 480 of lalr1.cc */
-#line 700 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 708 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 388: /* "ParamList" */
/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 709 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 717 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 389: /* "Param" */
/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 718 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 726 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 390: /* "CollectionDecl" */
/* Line 480 of lalr1.cc */
-#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 727 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 735 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 392: /* "IndexDecl" */
/* Line 480 of lalr1.cc */
-#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 736 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 744 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 393: /* "IndexKeyList" */
/* Line 480 of lalr1.cc */
-#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 745 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 753 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 394: /* "IndexKeySpec" */
/* Line 480 of lalr1.cc */
-#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 754 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 762 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 395: /* "IntegrityConstraintDecl" */
/* Line 480 of lalr1.cc */
-#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 763 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 771 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 396: /* "QueryBody" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 772 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 780 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 397: /* "StatementsAndOptionalExprTop" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 781 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 398: /* "StatementsAndOptionalExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 399: /* "StatementsAndExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 400: /* "Statements" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 401: /* "Statement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 825 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 402: /* "BlockStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 826 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 834 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 403: /* "BlockExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 835 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 843 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 404: /* "EnclosedStatementsAndOptionalExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 844 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 852 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 405: /* "VarDeclStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 853 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 861 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 408: /* "AssignStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 862 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 870 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 409: /* "ApplyStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 871 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 879 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 410: /* "ExitStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 880 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 888 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 411: /* "WhileStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 889 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 897 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 412: /* "FlowCtlStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 898 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 906 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 413: /* "FLWORStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 907 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 915 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 414: /* "ReturnStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 916 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 924 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 415: /* "IfStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 925 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 933 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 416: /* "TryStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 934 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 942 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 417: /* "CatchListStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 943 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 951 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 418: /* "CatchStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 952 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 960 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 419: /* "VoidStatement" */
/* Line 480 of lalr1.cc */
-#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 815 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 961 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 969 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 420: /* "Expr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 970 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 978 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 421: /* "ExprSingle" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 979 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 987 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 422: /* "ExprSimple" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 988 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 996 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 423: /* "FLWORExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 997 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1005 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 424: /* "ReturnExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1006 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1014 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 427: /* "FLWORWinCond" */
/* Line 480 of lalr1.cc */
-#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1015 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1023 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 428: /* "WindowClause" */
/* Line 480 of lalr1.cc */
-#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1024 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1032 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 429: /* "CountClause" */
/* Line 480 of lalr1.cc */
-#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 813 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1033 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1041 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 430: /* "ForLetWinClause" */
/* Line 480 of lalr1.cc */
-#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1042 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1050 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 432: /* "FLWORClauseList" */
/* Line 480 of lalr1.cc */
-#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1051 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1059 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 433: /* "ForClause" */
/* Line 480 of lalr1.cc */
-#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1060 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1068 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 435: /* "VarInDeclList" */
/* Line 480 of lalr1.cc */
-#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1069 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1077 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 436: /* "VarInDecl" */
/* Line 480 of lalr1.cc */
-#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1078 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1086 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 437: /* "PositionalVar" */
/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1087 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1095 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 438: /* "FTScoreVar" */
/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1096 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1104 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 439: /* "LetClause" */
/* Line 480 of lalr1.cc */
-#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1105 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1113 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 440: /* "VarGetsDeclList" */
/* Line 480 of lalr1.cc */
-#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1114 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1122 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 441: /* "VarGetsDecl" */
/* Line 480 of lalr1.cc */
-#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1123 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1131 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 442: /* "WindowVarDecl" */
/* Line 480 of lalr1.cc */
-#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1132 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1140 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 443: /* "WindowVars" */
/* Line 480 of lalr1.cc */
-#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1141 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1149 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 444: /* "WindowVars3" */
/* Line 480 of lalr1.cc */
-#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1150 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1158 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 445: /* "WindowVars2" */
/* Line 480 of lalr1.cc */
-#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1159 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1167 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 446: /* "WhereClause" */
/* Line 480 of lalr1.cc */
-#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 813 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1168 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1176 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 447: /* "GroupByClause" */
/* Line 480 of lalr1.cc */
-#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1177 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1185 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 448: /* "GroupSpecList" */
/* Line 480 of lalr1.cc */
-#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1186 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1194 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 449: /* "GroupSpec" */
/* Line 480 of lalr1.cc */
-#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1195 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1203 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 450: /* "GroupCollationSpec" */
/* Line 480 of lalr1.cc */
-#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1204 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1212 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 451: /* "OrderByClause" */
/* Line 480 of lalr1.cc */
-#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1213 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1221 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 452: /* "OrderSpecList" */
/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1222 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1230 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 453: /* "OrderSpec" */
/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1231 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1239 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 454: /* "OrderModifier" */
/* Line 480 of lalr1.cc */
-#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1240 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1248 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 455: /* "OrderDirSpec" */
/* Line 480 of lalr1.cc */
-#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1249 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1257 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 456: /* "OrderEmptySpec" */
/* Line 480 of lalr1.cc */
-#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1258 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1266 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 457: /* "OrderCollationSpec" */
/* Line 480 of lalr1.cc */
-#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1267 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1275 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 458: /* "QuantifiedExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1276 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1284 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 459: /* "QVarInDeclList" */
/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1285 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1293 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 460: /* "QVarInDecl" */
/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1294 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1302 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 461: /* "SwitchExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1303 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1311 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 462: /* "SwitchCaseClauseList" */
/* Line 480 of lalr1.cc */
-#line 797 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 814 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1312 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1320 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 463: /* "SwitchCaseClause" */
/* Line 480 of lalr1.cc */
-#line 797 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 814 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1321 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1329 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 464: /* "SwitchCaseOperandList" */
/* Line 480 of lalr1.cc */
-#line 797 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 814 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1330 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1338 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 465: /* "SwitchStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1339 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1347 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 468: /* "TypeswitchExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1348 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1356 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 469: /* "TypeswitchStatement" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1357 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1365 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 470: /* "CaseClauseList" */
/* Line 480 of lalr1.cc */
-#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 803 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1366 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1374 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 471: /* "CaseClause" */
/* Line 480 of lalr1.cc */
-#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 803 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1375 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1383 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 474: /* "SequenceTypeList" */
/* Line 480 of lalr1.cc */
-#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1384 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1392 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 475: /* "IfExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1393 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1401 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 476: /* "OrExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1402 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1410 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 477: /* "AndExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1411 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1419 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 478: /* "NotExpr" */
/* Line 480 of lalr1.cc */
-#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 815 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1420 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1428 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 479: /* "ComparisonExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1429 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1437 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 480: /* "FTContainsExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1438 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1446 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 481: /* "StringConcatExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1447 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1455 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 482: /* "opt_FTIgnoreOption" */
/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1456 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1464 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 483: /* "RangeExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1465 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1473 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 484: /* "AdditiveExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1474 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1482 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 485: /* "MultiplicativeExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1483 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1491 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 486: /* "UnionExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1492 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1500 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 487: /* "IntersectExceptExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1501 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1509 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 488: /* "InstanceofExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1510 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1518 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 489: /* "TreatExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1519 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1527 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 490: /* "CastableExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1528 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1536 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 491: /* "CastExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1537 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1545 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 492: /* "SingleType" */
/* Line 480 of lalr1.cc */
-#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1546 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1554 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 493: /* "UnaryExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1555 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1563 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 494: /* "SignList" */
/* Line 480 of lalr1.cc */
-#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1564 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1572 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 495: /* "ValueExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1573 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1581 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 496: /* "SimpleMapExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1582 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1590 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 497: /* "ValueComp" */
/* Line 480 of lalr1.cc */
-#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1591 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1599 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 498: /* "ValidateExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1600 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1608 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 499: /* "ExtensionExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->expr) ); };
/* Line 480 of lalr1.cc */
-#line 1609 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1617 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 500: /* "Pragma_list" */
/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1618 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1626 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 501: /* "Pragma" */
/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ release_hack( (yyvaluep->node) ); };
/* Line 480 of lalr1.cc */
-#line 1627 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 1635 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
case 502: /* "PathExpr" */
/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1636 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 503: /* "RelativePathExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1645 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 504: /* "StepExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1654 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 505: /* "NameTest" */
-
-/* Line 480 of lalr1.cc */
-#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1663 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 506: /* "Wildcard" */
-
-/* Line 480 of lalr1.cc */
-#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1672 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 507: /* "FilterExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1681 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 508: /* "PredicateList" */
-
-/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1690 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 509: /* "Predicate" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1699 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 510: /* "PrimaryExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1708 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 511: /* "Literal" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1717 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 512: /* "NumericLiteral" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1726 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 514: /* "VarRef" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1735 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 515: /* "ParenthesizedExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1744 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 516: /* "ContextItemExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1753 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 517: /* "OrderedExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1762 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 518: /* "UnorderedExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1771 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 519: /* "FunctionCall" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1780 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 520: /* "ArgList" */
-
-/* Line 480 of lalr1.cc */
-#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 524: /* "Constructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 525: /* "DirectConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 526: /* "DirElemConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 527: /* "DirElemContentList" */
-
-/* Line 480 of lalr1.cc */
-#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1825 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 528: /* "DirAttributeList" */
-
-/* Line 480 of lalr1.cc */
-#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1834 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 529: /* "DirAttr" */
-
-/* Line 480 of lalr1.cc */
-#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1843 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 531: /* "DirAttributeValue" */
-
-/* Line 480 of lalr1.cc */
-#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1852 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 532: /* "opt_QuoteAttrContentList" */
-
-/* Line 480 of lalr1.cc */
-#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1861 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 533: /* "QuoteAttrContentList" */
-
-/* Line 480 of lalr1.cc */
-#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1870 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 534: /* "opt_AposAttrContentList" */
-
-/* Line 480 of lalr1.cc */
-#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1879 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 535: /* "AposAttrContentList" */
-
-/* Line 480 of lalr1.cc */
-#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1888 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 536: /* "QuoteAttrValueContent" */
-
-/* Line 480 of lalr1.cc */
-#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1897 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 537: /* "AposAttrValueContent" */
-
-/* Line 480 of lalr1.cc */
-#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1906 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 538: /* "DirElemContent" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1915 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 539: /* "CommonContent" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1924 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 540: /* "DirCommentConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1933 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 541: /* "DirPIConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1942 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 542: /* "CDataSection" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1951 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 543: /* "ComputedConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1960 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 544: /* "CompDocConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1969 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 545: /* "CompElemConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1978 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 546: /* "CompAttrConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1987 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 547: /* "CompTextConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 1996 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 548: /* "CompCommentConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2005 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 549: /* "CompPIConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2014 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 550: /* "CompNamespaceConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2023 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 551: /* "TypeDeclaration" */
-
-/* Line 480 of lalr1.cc */
-#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2032 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 552: /* "SequenceType" */
-
-/* Line 480 of lalr1.cc */
-#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2041 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 553: /* "OccurrenceIndicator" */
-
-/* Line 480 of lalr1.cc */
-#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2050 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 554: /* "ItemType" */
-
-/* Line 480 of lalr1.cc */
-#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2059 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 555: /* "TypeList" */
-
-/* Line 480 of lalr1.cc */
-#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2068 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 556: /* "GeneralizedAtomicType" */
-
-/* Line 480 of lalr1.cc */
-#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2077 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 557: /* "SimpleType" */
-
-/* Line 480 of lalr1.cc */
-#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2086 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 558: /* "KindTest" */
-
-/* Line 480 of lalr1.cc */
-#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2095 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 559: /* "AnyKindTest" */
-
-/* Line 480 of lalr1.cc */
-#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2104 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 560: /* "DocumentTest" */
-
-/* Line 480 of lalr1.cc */
-#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2113 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 561: /* "NamespaceTest" */
-
-/* Line 480 of lalr1.cc */
-#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2122 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 562: /* "TextTest" */
-
-/* Line 480 of lalr1.cc */
-#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2131 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 563: /* "CommentTest" */
-
-/* Line 480 of lalr1.cc */
-#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2140 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 564: /* "PITest" */
-
-/* Line 480 of lalr1.cc */
-#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2149 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 565: /* "AttributeTest" */
-
-/* Line 480 of lalr1.cc */
-#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2158 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 566: /* "SchemaAttributeTest" */
-
-/* Line 480 of lalr1.cc */
-#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2167 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 567: /* "ElementTest" */
-
-/* Line 480 of lalr1.cc */
-#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2176 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 568: /* "SchemaElementTest" */
-
-/* Line 480 of lalr1.cc */
-#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2185 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 569: /* "TypeName" */
-
-/* Line 480 of lalr1.cc */
-#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2194 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 570: /* "TypeName_WITH_HOOK" */
-
-/* Line 480 of lalr1.cc */
-#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2203 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 571: /* "StringLiteral" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2212 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 573: /* "AnyFunctionTest" */
-
-/* Line 480 of lalr1.cc */
-#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2221 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 574: /* "TypedFunctionTest" */
-
-/* Line 480 of lalr1.cc */
-#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2230 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 577: /* "InsertExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2239 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 578: /* "DeleteExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2248 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 579: /* "ReplaceExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2257 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 580: /* "RenameExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2266 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 581: /* "TransformExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2275 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 582: /* "VarNameList" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2284 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 583: /* "VarNameDecl" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2293 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 584: /* "TryExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2302 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 585: /* "CatchListExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2311 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 586: /* "CatchExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2320 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 587: /* "BracedExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2329 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 588: /* "NameTestList" */
-
-/* Line 480 of lalr1.cc */
-#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1644 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 504: /* "RelativePathExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1653 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 505: /* "StepExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1662 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 506: /* "AxisStep" */
+
+/* Line 480 of lalr1.cc */
+#line 818 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1671 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 507: /* "ForwardStep" */
+
+/* Line 480 of lalr1.cc */
+#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1680 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 508: /* "ForwardAxis" */
+
+/* Line 480 of lalr1.cc */
+#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1689 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 509: /* "AbbrevForwardStep" */
+
+/* Line 480 of lalr1.cc */
+#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1698 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 510: /* "ReverseStep" */
+
+/* Line 480 of lalr1.cc */
+#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1707 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 511: /* "ReverseAxis" */
+
+/* Line 480 of lalr1.cc */
+#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1716 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 512: /* "NodeTest" */
+
+/* Line 480 of lalr1.cc */
+#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1725 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 513: /* "NameTest" */
+
+/* Line 480 of lalr1.cc */
+#line 806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1734 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 514: /* "Wildcard" */
+
+/* Line 480 of lalr1.cc */
+#line 813 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1743 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 515: /* "FilterExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1752 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 516: /* "PredicateList" */
+
+/* Line 480 of lalr1.cc */
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1761 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 517: /* "Predicate" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1770 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 518: /* "PrimaryExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1779 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 519: /* "Literal" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 520: /* "NumericLiteral" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1797 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 522: /* "VarRef" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 523: /* "ParenthesizedExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1815 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 524: /* "ContextItemExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1824 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 525: /* "OrderedExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1833 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 526: /* "UnorderedExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1842 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 527: /* "FunctionCall" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1851 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 528: /* "ArgList" */
+
+/* Line 480 of lalr1.cc */
+#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1860 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 532: /* "Constructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1869 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 533: /* "DirectConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1878 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 534: /* "DirElemConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1887 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 535: /* "DirElemContentList" */
+
+/* Line 480 of lalr1.cc */
+#line 804 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1896 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 536: /* "DirAttributeList" */
+
+/* Line 480 of lalr1.cc */
+#line 804 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1905 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 537: /* "DirAttr" */
+
+/* Line 480 of lalr1.cc */
+#line 804 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1914 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 539: /* "DirAttributeValue" */
+
+/* Line 480 of lalr1.cc */
+#line 804 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1923 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 540: /* "opt_QuoteAttrContentList" */
+
+/* Line 480 of lalr1.cc */
+#line 809 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1932 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 541: /* "QuoteAttrContentList" */
+
+/* Line 480 of lalr1.cc */
+#line 809 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1941 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 542: /* "opt_AposAttrContentList" */
+
+/* Line 480 of lalr1.cc */
+#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1950 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 543: /* "AposAttrContentList" */
+
+/* Line 480 of lalr1.cc */
+#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1959 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 544: /* "QuoteAttrValueContent" */
+
+/* Line 480 of lalr1.cc */
+#line 809 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1968 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 545: /* "AposAttrValueContent" */
+
+/* Line 480 of lalr1.cc */
+#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1977 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 546: /* "DirElemContent" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1986 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 547: /* "CommonContent" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 1995 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 548: /* "DirCommentConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2004 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 549: /* "DirPIConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2013 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 550: /* "CDataSection" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2022 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 551: /* "ComputedConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2031 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 552: /* "CompDocConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2040 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 553: /* "CompElemConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2049 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 554: /* "CompAttrConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2058 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 555: /* "CompTextConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2067 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 556: /* "CompCommentConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2076 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 557: /* "CompPIConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2085 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 558: /* "CompNamespaceConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2094 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 559: /* "TypeDeclaration" */
+
+/* Line 480 of lalr1.cc */
+#line 810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2103 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 560: /* "SequenceType" */
+
+/* Line 480 of lalr1.cc */
+#line 810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2112 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 561: /* "OccurrenceIndicator" */
+
+/* Line 480 of lalr1.cc */
+#line 806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2121 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 562: /* "ItemType" */
+
+/* Line 480 of lalr1.cc */
+#line 806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2130 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 563: /* "TypeList" */
+
+/* Line 480 of lalr1.cc */
+#line 813 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2139 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 564: /* "GeneralizedAtomicType" */
+
+/* Line 480 of lalr1.cc */
+#line 803 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2148 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 565: /* "SimpleType" */
+
+/* Line 480 of lalr1.cc */
+#line 803 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2157 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 566: /* "KindTest" */
+
+/* Line 480 of lalr1.cc */
+#line 806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2166 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 567: /* "AnyKindTest" */
+
+/* Line 480 of lalr1.cc */
+#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2175 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 569: /* "DocumentTest" */
+
+/* Line 480 of lalr1.cc */
+#line 804 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2184 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 570: /* "NamespaceTest" */
+
+/* Line 480 of lalr1.cc */
+#line 810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2193 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 571: /* "TextTest" */
+
+/* Line 480 of lalr1.cc */
+#line 810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2202 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 572: /* "CommentTest" */
+
+/* Line 480 of lalr1.cc */
+#line 803 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2211 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 573: /* "PITest" */
+
+/* Line 480 of lalr1.cc */
+#line 808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2220 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 574: /* "AttributeTest" */
+
+/* Line 480 of lalr1.cc */
+#line 803 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2229 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 575: /* "SchemaAttributeTest" */
+
+/* Line 480 of lalr1.cc */
+#line 809 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2238 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 576: /* "ElementTest" */
+
+/* Line 480 of lalr1.cc */
+#line 804 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2247 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 577: /* "SchemaElementTest" */
+
+/* Line 480 of lalr1.cc */
+#line 809 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2256 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 578: /* "TypeName" */
+
+/* Line 480 of lalr1.cc */
+#line 810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2265 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 579: /* "TypeName_WITH_HOOK" */
+
+/* Line 480 of lalr1.cc */
+#line 810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2274 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 580: /* "StringLiteral" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2283 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 582: /* "AnyFunctionTest" */
+
+/* Line 480 of lalr1.cc */
+#line 813 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2292 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 583: /* "TypedFunctionTest" */
+
+/* Line 480 of lalr1.cc */
+#line 813 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2301 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 586: /* "InsertExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2310 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 587: /* "DeleteExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2319 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 588: /* "ReplaceExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2328 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 589: /* "RenameExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2337 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 590: /* "TransformExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2346 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 591: /* "VarNameList" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2355 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 592: /* "VarNameDecl" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2364 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 593: /* "TryExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2373 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 594: /* "CatchListExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2382 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 595: /* "CatchExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2391 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 596: /* "BracedExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2400 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 597: /* "NameTestList" */
+
+/* Line 480 of lalr1.cc */
+#line 820 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ delete (yyvaluep->name_test_list); };
/* Line 480 of lalr1.cc */
-#line 2338 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 589: /* "FTSelection" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2347 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 592: /* "FTOr" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2356 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 593: /* "FTAnd" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2365 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 594: /* "FTMildNot" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2374 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 595: /* "FTUnaryNot" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2383 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 596: /* "FTPrimaryWithOptions" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2392 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 597: /* "opt_FTMatchOptions" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2401 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 599: /* "FTWeight" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2410 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 600: /* "FTPrimary" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2419 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 601: /* "opt_FTTimes" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2428 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 602: /* "FTExtensionSelection" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2437 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 604: /* "FTWords" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2446 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 605: /* "FTWordsValue" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2455 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 607: /* "FTAnyallOption" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2464 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 610: /* "FTPosFilter" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2473 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 611: /* "FTOrder" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2482 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 612: /* "FTWindow" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2491 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 613: /* "FTDistance" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2500 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 614: /* "FTUnit" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2509 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 615: /* "FTMatchOptions" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2518 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 616: /* "FTMatchOption" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2527 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 617: /* "FTCaseOption" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2536 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 618: /* "FTDiacriticsOption" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2545 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 619: /* "FTExtensionOption" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2554 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 620: /* "FTStemOption" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2563 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 621: /* "FTThesaurusOption" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2572 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 625: /* "FTThesaurusID" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2581 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 628: /* "FTStopWordOption" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2590 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 629: /* "FTStopWords" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2599 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 633: /* "FTStopWordsInclExcl" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2608 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 634: /* "FTLanguageOption" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2617 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 635: /* "FTWildCardOption" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2626 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 636: /* "FTContent" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2635 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 637: /* "FTTimes" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2644 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 638: /* "FTRange" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2653 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 639: /* "FTScope" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2662 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 640: /* "FTBigUnit" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2671 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 641: /* "FTIgnoreOption" */
-
-/* Line 480 of lalr1.cc */
-#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2680 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 642: /* "JSONArrayConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2689 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 643: /* "JSONSimpleObjectUnion" */
-
-/* Line 480 of lalr1.cc */
-#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2698 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 644: /* "JSONAccumulatorObjectUnion" */
-
-/* Line 480 of lalr1.cc */
-#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2707 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 645: /* "JSONObjectConstructor" */
-
-/* Line 480 of lalr1.cc */
-#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2716 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 646: /* "JSONPairList" */
-
-/* Line 480 of lalr1.cc */
-#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2725 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 647: /* "JSONInsertExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2734 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 648: /* "JSONAppendExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2743 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 649: /* "JSONDeleteExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2752 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 650: /* "JSONRenameExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2761 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 651: /* "JSONReplaceExpr" */
-
-/* Line 480 of lalr1.cc */
-#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2770 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 658: /* "QNAME" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2779 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 659: /* "FUNCTION_NAME" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
- break;
- case 660: /* "EQNAME" */
-
-/* Line 480 of lalr1.cc */
-#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- { release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc */
-#line 2797 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 2409 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 598: /* "FTSelection" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2418 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 601: /* "FTOr" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2427 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 602: /* "FTAnd" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2436 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 603: /* "FTMildNot" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2445 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 604: /* "FTUnaryNot" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2454 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 605: /* "FTPrimaryWithOptions" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2463 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 606: /* "opt_FTMatchOptions" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2472 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 608: /* "FTWeight" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2481 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 609: /* "FTPrimary" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2490 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 610: /* "opt_FTTimes" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2499 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 611: /* "FTExtensionSelection" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2508 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 613: /* "FTWords" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2517 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 614: /* "FTWordsValue" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2526 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 616: /* "FTAnyallOption" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2535 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 619: /* "FTPosFilter" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2544 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 620: /* "FTOrder" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2553 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 621: /* "FTWindow" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2562 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 622: /* "FTDistance" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2571 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 623: /* "FTUnit" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2580 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 624: /* "FTMatchOptions" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2589 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 625: /* "FTMatchOption" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2598 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 626: /* "FTCaseOption" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2607 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 627: /* "FTDiacriticsOption" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2616 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 628: /* "FTExtensionOption" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2625 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 629: /* "FTStemOption" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2634 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 630: /* "FTThesaurusOption" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2643 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 634: /* "FTThesaurusID" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2652 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 637: /* "FTStopWordOption" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2661 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 638: /* "FTStopWords" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2670 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 642: /* "FTStopWordsInclExcl" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2679 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 643: /* "FTLanguageOption" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2688 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 644: /* "FTWildCardOption" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2697 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 645: /* "FTContent" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2706 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 646: /* "FTTimes" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2715 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 647: /* "FTRange" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2724 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 648: /* "FTScope" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2733 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 649: /* "FTBigUnit" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2742 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 650: /* "FTIgnoreOption" */
+
+/* Line 480 of lalr1.cc */
+#line 816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2751 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 651: /* "JSONArrayConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2760 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 652: /* "JSONSimpleObjectUnion" */
+
+/* Line 480 of lalr1.cc */
+#line 817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2769 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 653: /* "JSONAccumulatorObjectUnion" */
+
+/* Line 480 of lalr1.cc */
+#line 817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2778 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 654: /* "JSONObjectConstructor" */
+
+/* Line 480 of lalr1.cc */
+#line 817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 655: /* "JSONPairList" */
+
+/* Line 480 of lalr1.cc */
+#line 817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 656: /* "JSONInsertExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 657: /* "JSONAppendExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2814 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 658: /* "JSONDeleteExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2823 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 659: /* "JSONRenameExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2832 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 660: /* "JSONReplaceExpr" */
+
+/* Line 480 of lalr1.cc */
+#line 817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2841 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 666: /* "QNAME" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2850 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 667: /* "FUNCTION_NAME" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2859 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+ break;
+ case 668: /* "EQNAME" */
+
+/* Line 480 of lalr1.cc */
+#line 819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc */
+#line 2868 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
break;
default:
@@ -2884,13 +2955,13 @@
/* User initialization code. */
/* Line 565 of lalr1.cc */
-#line 120 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 128 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
yylloc.begin.filename = yylloc.end.filename = &(driver.theFilename2);
}
/* Line 565 of lalr1.cc */
-#line 2894 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 2965 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
/* Initialize the stacks. The initial state will be pushed in
yynewstate, since the latter expects the semantical and the
@@ -3009,7 +3080,7 @@
case 3:
/* Line 690 of lalr1.cc */
-#line 837 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 856 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(2) - (2)].node);
}
@@ -3018,7 +3089,7 @@
case 4:
/* Line 690 of lalr1.cc */
-#line 841 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 860 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(2) - (2)].node);
}
@@ -3027,7 +3098,7 @@
case 5:
/* Line 690 of lalr1.cc */
-#line 845 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 864 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(3) - (3)].node);
}
@@ -3036,7 +3107,7 @@
case 6:
/* Line 690 of lalr1.cc */
-#line 851 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 870 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = NULL;
}
@@ -3045,7 +3116,7 @@
case 7:
/* Line 690 of lalr1.cc */
-#line 855 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 874 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = NULL; YYABORT;
}
@@ -3054,7 +3125,7 @@
case 8:
/* Line 690 of lalr1.cc */
-#line 859 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 878 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = NULL; YYABORT;
}
@@ -3063,7 +3134,7 @@
case 9:
/* Line 690 of lalr1.cc */
-#line 865 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 884 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
driver.set_expr( (yyval.node) );
@@ -3073,7 +3144,7 @@
case 10:
/* Line 690 of lalr1.cc */
-#line 871 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 890 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
MainModule* mm = dynamic_cast<MainModule*>((yysemantic_stack_[(2) - (2)].node));
mm->set_version_decl( static_cast<VersionDecl*>((yysemantic_stack_[(2) - (1)].node)) );
@@ -3085,7 +3156,7 @@
case 11:
/* Line 690 of lalr1.cc */
-#line 879 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 898 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
driver.set_expr( (yyval.node) );
@@ -3095,7 +3166,7 @@
case 12:
/* Line 690 of lalr1.cc */
-#line 885 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 904 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
LibraryModule* lm = dynamic_cast<LibraryModule*>((yysemantic_stack_[(2) - (2)].node));
lm->set_version_decl( static_cast<VersionDecl*>((yysemantic_stack_[(2) - (1)].node)) );
@@ -3107,7 +3178,7 @@
case 13:
/* Line 690 of lalr1.cc */
-#line 894 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 913 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)), "utf-8" );
}
@@ -3116,7 +3187,7 @@
case 14:
/* Line 690 of lalr1.cc */
-#line 899 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 918 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (3)].sval)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)) );
}
@@ -3125,7 +3196,7 @@
case 15:
/* Line 690 of lalr1.cc */
-#line 904 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 923 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)), "utf-8", VersionDecl::jsoniq );
}
@@ -3134,7 +3205,7 @@
case 16:
/* Line 690 of lalr1.cc */
-#line 909 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 928 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (3)].sval)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)), VersionDecl::jsoniq );
}
@@ -3143,7 +3214,7 @@
case 17:
/* Line 690 of lalr1.cc */
-#line 915 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 934 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
Prolog* prolog = new Prolog(LOC((yyloc)), static_cast<SIND_DeclList*>((yysemantic_stack_[(3) - (1)].node)), NULL);
(yyval.node) = new MainModule(LOC((yyloc)), static_cast<QueryBody*>((yysemantic_stack_[(3) - (3)].expr)), prolog);
@@ -3153,7 +3224,7 @@
case 18:
/* Line 690 of lalr1.cc */
-#line 921 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 940 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
Prolog* prolog = new Prolog(LOC((yyloc)), NULL, static_cast<VFO_DeclList*>((yysemantic_stack_[(3) - (1)].node)));
(yyval.node) = new MainModule(LOC((yyloc)), static_cast<QueryBody*>((yysemantic_stack_[(3) - (3)].expr)), prolog);
@@ -3163,7 +3234,7 @@
case 19:
/* Line 690 of lalr1.cc */
-#line 927 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 946 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
Prolog* prolog = new Prolog(LOC((yyloc)),
static_cast<SIND_DeclList*>((yysemantic_stack_[(5) - (1)].node)),
@@ -3175,7 +3246,7 @@
case 20:
/* Line 690 of lalr1.cc */
-#line 935 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 954 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new MainModule( LOC((yyloc)), static_cast<QueryBody*>((yysemantic_stack_[(1) - (1)].expr)), NULL );
}
@@ -3184,7 +3255,7 @@
case 21:
/* Line 690 of lalr1.cc */
-#line 940 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 959 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr);
(yylocation_stack_[(3) - (1)]).step();
@@ -3196,7 +3267,7 @@
case 22:
/* Line 690 of lalr1.cc */
-#line 948 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 967 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr);
(yylocation_stack_[(3) - (1)]).step();
@@ -3208,7 +3279,7 @@
case 23:
/* Line 690 of lalr1.cc */
-#line 956 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 975 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(5) - (1)].node); (yyval.node) = (yysemantic_stack_[(5) - (3)].node); (yyval.node) = (yysemantic_stack_[(5) - (5)].expr);
(yylocation_stack_[(5) - (3)]).step();
@@ -3220,7 +3291,7 @@
case 24:
/* Line 690 of lalr1.cc */
-#line 964 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 983 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(5) - (1)].node); (yyval.node) = (yysemantic_stack_[(5) - (3)].node); (yyval.node) = (yysemantic_stack_[(5) - (5)].expr);
(yylocation_stack_[(5) - (1)]).step();
@@ -3232,7 +3303,7 @@
case 25:
/* Line 690 of lalr1.cc */
-#line 973 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 992 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new LibraryModule(LOC((yyloc)), static_cast<ModuleDecl*>((yysemantic_stack_[(1) - (1)].node)), NULL);
}
@@ -3241,7 +3312,7 @@
case 26:
/* Line 690 of lalr1.cc */
-#line 978 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 997 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
Prolog* prolog = new Prolog(LOC((yyloc)), static_cast<SIND_DeclList*>((yysemantic_stack_[(3) - (2)].node)), NULL);
(yyval.node) = new LibraryModule(LOC((yyloc)), static_cast<ModuleDecl*>((yysemantic_stack_[(3) - (1)].node)), prolog);
@@ -3251,7 +3322,7 @@
case 27:
/* Line 690 of lalr1.cc */
-#line 984 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1003 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
Prolog* prolog = new Prolog(LOC((yyloc)), NULL, static_cast<VFO_DeclList*>((yysemantic_stack_[(3) - (2)].node)));
(yyval.node) = new LibraryModule(LOC((yyloc)), static_cast<ModuleDecl*>((yysemantic_stack_[(3) - (1)].node)), prolog);
@@ -3261,7 +3332,7 @@
case 28:
/* Line 690 of lalr1.cc */
-#line 990 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1009 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
Prolog* prolog = new Prolog(LOC((yyloc)),
static_cast<SIND_DeclList*>((yysemantic_stack_[(5) - (2)].node)),
@@ -3273,9 +3344,10 @@
case 29:
/* Line 690 of lalr1.cc */
-#line 999 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1018 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new ModuleDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (3)].sval)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)) );
+ ERROR_IF_QNAME_NOT_NCNAME((yysemantic_stack_[(6) - (3)].expr), (yylocation_stack_[(6) - (3)]));
+ (yyval.node) = new ModuleDecl( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)) );
dynamic_cast<ModuleDecl*>((yyval.node))->setComment( SYMTAB((yysemantic_stack_[(6) - (1)].sval)) );
}
break;
@@ -3283,7 +3355,7 @@
case 30:
/* Line 690 of lalr1.cc */
-#line 1006 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1026 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
SIND_DeclList *sdl = new SIND_DeclList( LOC((yyloc)) );
sdl->push_back( (yysemantic_stack_[(1) - (1)].node) );
@@ -3294,7 +3366,7 @@
case 31:
/* Line 690 of lalr1.cc */
-#line 1013 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1033 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
((SIND_DeclList*)(yysemantic_stack_[(3) - (1)].node))->push_back( (yysemantic_stack_[(3) - (3)].node) );
(yyval.node) = (yysemantic_stack_[(3) - (1)].node);
@@ -3304,7 +3376,7 @@
case 32:
/* Line 690 of lalr1.cc */
-#line 1019 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1039 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].node);
(yylocation_stack_[(3) - (1)]).step();
@@ -3316,7 +3388,7 @@
case 46:
/* Line 690 of lalr1.cc */
-#line 1045 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1065 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new BoundarySpaceDecl(LOC((yyloc)), StaticContextConsts::preserve_space);
}
@@ -3325,7 +3397,7 @@
case 47:
/* Line 690 of lalr1.cc */
-#line 1050 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1070 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new BoundarySpaceDecl(LOC((yyloc)), StaticContextConsts::strip_space);
}
@@ -3334,7 +3406,7 @@
case 48:
/* Line 690 of lalr1.cc */
-#line 1056 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1076 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new DefaultCollationDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (4)].sval)) );
}
@@ -3343,7 +3415,7 @@
case 49:
/* Line 690 of lalr1.cc */
-#line 1062 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1082 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new BaseURIDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
}
@@ -3352,7 +3424,7 @@
case 50:
/* Line 690 of lalr1.cc */
-#line 1068 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1088 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ConstructionDecl(LOC((yyloc)), StaticContextConsts::cons_preserve);
}
@@ -3361,7 +3433,7 @@
case 51:
/* Line 690 of lalr1.cc */
-#line 1073 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1093 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ConstructionDecl(LOC((yyloc)), StaticContextConsts::cons_strip);
}
@@ -3370,7 +3442,7 @@
case 52:
/* Line 690 of lalr1.cc */
-#line 1079 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1099 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderingModeDecl(LOC((yyloc)), StaticContextConsts::ordered);
}
@@ -3379,7 +3451,7 @@
case 53:
/* Line 690 of lalr1.cc */
-#line 1084 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1104 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderingModeDecl(LOC((yyloc)), StaticContextConsts::unordered);
}
@@ -3388,7 +3460,7 @@
case 54:
/* Line 690 of lalr1.cc */
-#line 1090 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1110 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new EmptyOrderDecl(LOC((yyloc)), StaticContextConsts::empty_greatest);
}
@@ -3397,7 +3469,7 @@
case 55:
/* Line 690 of lalr1.cc */
-#line 1095 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1115 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new EmptyOrderDecl(LOC((yyloc)), StaticContextConsts::empty_least);
}
@@ -3406,7 +3478,7 @@
case 56:
/* Line 690 of lalr1.cc */
-#line 1101 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1121 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CopyNamespacesDecl(LOC((yyloc)), true, true);
}
@@ -3415,7 +3487,7 @@
case 57:
/* Line 690 of lalr1.cc */
-#line 1106 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1126 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CopyNamespacesDecl(LOC((yyloc)), true, false);
}
@@ -3424,7 +3496,7 @@
case 58:
/* Line 690 of lalr1.cc */
-#line 1111 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1131 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CopyNamespacesDecl(LOC((yyloc)), false, true);
}
@@ -3433,7 +3505,7 @@
case 59:
/* Line 690 of lalr1.cc */
-#line 1116 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1136 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CopyNamespacesDecl(LOC((yyloc)), false, false);
}
@@ -3442,7 +3514,7 @@
case 62:
/* Line 690 of lalr1.cc */
-#line 1126 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1146 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yyval.node);
error((yylocation_stack_[(3) - (2)]), "syntax error, \"import\" should be followed by either \"schema\" or \"module\".");
@@ -3453,7 +3525,7 @@
case 63:
/* Line 690 of lalr1.cc */
-#line 1134 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1154 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new SchemaImport( LOC((yyloc)), NULL, SYMTAB((yysemantic_stack_[(3) - (3)].sval)), NULL );
}
@@ -3462,7 +3534,7 @@
case 64:
/* Line 690 of lalr1.cc */
-#line 1139 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1159 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new SchemaImport(LOC((yyloc)),
dynamic_cast<SchemaPrefix*>((yysemantic_stack_[(4) - (3)].node)),
@@ -3474,7 +3546,7 @@
case 65:
/* Line 690 of lalr1.cc */
-#line 1147 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1167 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new SchemaImport(LOC((yyloc)),
NULL,
@@ -3486,7 +3558,7 @@
case 66:
/* Line 690 of lalr1.cc */
-#line 1155 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1175 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new SchemaImport(LOC((yyloc)),
dynamic_cast<SchemaPrefix*>((yysemantic_stack_[(6) - (3)].node)),
@@ -3498,7 +3570,7 @@
case 67:
/* Line 690 of lalr1.cc */
-#line 1164 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1184 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
URILiteralList *ull = new URILiteralList( LOC((yyloc)));
ull->push_back( SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
@@ -3509,7 +3581,7 @@
case 68:
/* Line 690 of lalr1.cc */
-#line 1171 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1191 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if ( URILiteralList *ull = dynamic_cast<URILiteralList*>((yysemantic_stack_[(3) - (1)].node)) )
ull->push_back( SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
@@ -3520,16 +3592,17 @@
case 69:
/* Line 690 of lalr1.cc */
-#line 1179 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1199 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new SchemaPrefix( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
+ ERROR_IF_QNAME_NOT_NCNAME((yysemantic_stack_[(3) - (2)].expr), (yylocation_stack_[(3) - (2)]));
+ (yyval.node) = new SchemaPrefix( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)));
}
break;
case 70:
/* Line 690 of lalr1.cc */
-#line 1184 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1205 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new SchemaPrefix( LOC((yyloc)), true );
}
@@ -3538,7 +3611,7 @@
case 71:
/* Line 690 of lalr1.cc */
-#line 1190 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1211 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ModuleImport(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)), NULL);
dynamic_cast<ModuleImport *>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(3) - (2)].sval)));
@@ -3548,9 +3621,10 @@
case 72:
/* Line 690 of lalr1.cc */
-#line 1196 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1217 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new ModuleImport(LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (4)].sval)), SYMTAB((yysemantic_stack_[(6) - (6)].sval)), NULL);
+ ERROR_IF_QNAME_NOT_NCNAME((yysemantic_stack_[(6) - (4)].expr), (yylocation_stack_[(6) - (4)]));
+ (yyval.node) = new ModuleImport(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(6) - (4)].expr)), SYMTAB((yysemantic_stack_[(6) - (6)].sval)), NULL);
dynamic_cast<ModuleImport *>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(6) - (2)].sval)));
}
break;
@@ -3558,7 +3632,7 @@
case 73:
/* Line 690 of lalr1.cc */
-#line 1202 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1224 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ModuleImport(LOC((yyloc)),
SYMTAB((yysemantic_stack_[(5) - (3)].sval)),
@@ -3570,10 +3644,11 @@
case 74:
/* Line 690 of lalr1.cc */
-#line 1210 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1232 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
+ ERROR_IF_QNAME_NOT_NCNAME((yysemantic_stack_[(8) - (4)].expr), (yylocation_stack_[(8) - (4)]));
(yyval.node) = new ModuleImport(LOC((yyloc)),
- SYMTAB((yysemantic_stack_[(8) - (4)].sval)),
+ static_cast<QName*>((yysemantic_stack_[(8) - (4)].expr)),
SYMTAB((yysemantic_stack_[(8) - (6)].sval)),
dynamic_cast<URILiteralList*>((yysemantic_stack_[(8) - (8)].node)));
dynamic_cast<ModuleImport *>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(8) - (2)].sval)));
@@ -3583,16 +3658,17 @@
case 75:
/* Line 690 of lalr1.cc */
-#line 1220 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1243 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new NamespaceDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(5) - (3)].sval)), SYMTAB((yysemantic_stack_[(5) - (5)].sval)) );
+ ERROR_IF_QNAME_NOT_NCNAME((yysemantic_stack_[(5) - (3)].expr), (yylocation_stack_[(5) - (3)]));
+ (yyval.node) = new NamespaceDecl( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)), SYMTAB((yysemantic_stack_[(5) - (5)].sval)) );
}
break;
case 76:
/* Line 690 of lalr1.cc */
-#line 1226 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1250 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new DefaultNamespaceDecl(LOC((yyloc)),
ParseConstants::ns_element_default,
@@ -3603,7 +3679,7 @@
case 77:
/* Line 690 of lalr1.cc */
-#line 1233 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1257 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new DefaultNamespaceDecl(LOC((yyloc)),
ParseConstants::ns_function_default,
@@ -3614,7 +3690,7 @@
case 78:
/* Line 690 of lalr1.cc */
-#line 1241 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1265 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
VFO_DeclList *vdl = new VFO_DeclList( LOC((yyloc)));
vdl->push_back( (yysemantic_stack_[(1) - (1)].node) );
@@ -3625,7 +3701,7 @@
case 79:
/* Line 690 of lalr1.cc */
-#line 1248 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1272 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
((VFO_DeclList*)(yysemantic_stack_[(3) - (1)].node))->push_back( (yysemantic_stack_[(3) - (3)].node) );
(yyval.node) = (yysemantic_stack_[(3) - (1)].node);
@@ -3635,7 +3711,7 @@
case 80:
/* Line 690 of lalr1.cc */
-#line 1254 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1278 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].node);
(yylocation_stack_[(3) - (1)]).step();
@@ -3647,7 +3723,7 @@
case 89:
/* Line 690 of lalr1.cc */
-#line 1273 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1297 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new DecimalFormatNode(LOC((yyloc)), (yysemantic_stack_[(4) - (4)].vstrpair));
delete (yysemantic_stack_[(4) - (4)].vstrpair);
@@ -3657,7 +3733,7 @@
case 90:
/* Line 690 of lalr1.cc */
-#line 1279 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1303 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new DecimalFormatNode(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), (yysemantic_stack_[(4) - (4)].vstrpair));
delete (yysemantic_stack_[(4) - (4)].vstrpair);
@@ -3667,7 +3743,7 @@
case 91:
/* Line 690 of lalr1.cc */
-#line 1286 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1310 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.vstrpair) = new vector<string_pair_t>();
(yyval.vstrpair)->push_back( *(yysemantic_stack_[(1) - (1)].strpair) );
@@ -3678,7 +3754,7 @@
case 92:
/* Line 690 of lalr1.cc */
-#line 1293 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1317 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yysemantic_stack_[(2) - (1)].vstrpair)->push_back( *(yysemantic_stack_[(2) - (2)].strpair) );
delete (yysemantic_stack_[(2) - (2)].strpair);
@@ -3689,7 +3765,7 @@
case 93:
/* Line 690 of lalr1.cc */
-#line 1301 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1325 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
StringLiteral *sl = static_cast<StringLiteral*>((yysemantic_stack_[(3) - (3)].expr));
(yyval.strpair) = new string_pair_t( (yysemantic_stack_[(3) - (1)].strval), sl->get_strval().str() );
@@ -3700,86 +3776,91 @@
case 94:
/* Line 690 of lalr1.cc */
-#line 1308 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1332 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.strval) = "decimal-separator"; }
break;
case 95:
/* Line 690 of lalr1.cc */
-#line 1309 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1333 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.strval) = "digit"; }
break;
case 96:
/* Line 690 of lalr1.cc */
-#line 1310 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1334 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.strval) = "grouping-separator"; }
break;
case 97:
/* Line 690 of lalr1.cc */
-#line 1311 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1335 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.strval) = "infinity"; }
break;
case 98:
/* Line 690 of lalr1.cc */
-#line 1312 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1336 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.strval) = "minus-sign"; }
break;
case 99:
/* Line 690 of lalr1.cc */
-#line 1313 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1337 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.strval) = "NaN"; }
break;
case 100:
/* Line 690 of lalr1.cc */
-#line 1314 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1338 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.strval) = "pattern-separator"; }
break;
case 101:
/* Line 690 of lalr1.cc */
-#line 1315 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1339 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.strval) = "percent"; }
break;
case 102:
/* Line 690 of lalr1.cc */
-#line 1316 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1340 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.strval) = "per-mille"; }
break;
case 103:
/* Line 690 of lalr1.cc */
-#line 1317 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1341 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.strval) = "zero-digit"; }
break;
case 104:
/* Line 690 of lalr1.cc */
-#line 1321 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1345 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OptionDecl(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), SYMTAB((yysemantic_stack_[(4) - (4)].sval)));
+ if (static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr))->get_localname() == "enable" &&
+ SYMTAB((yysemantic_stack_[(4) - (4)].sval))=="common-language")
+ {
+ driver.enableCommonLanguage();
+ }
}
break;
case 105:
/* Line 690 of lalr1.cc */
-#line 1327 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1356 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTOptionDecl( LOC((yyloc)), dynamic_cast<FTMatchOptions*>((yysemantic_stack_[(3) - (3)].node)) );
}
@@ -3788,7 +3869,7 @@
case 106:
/* Line 690 of lalr1.cc */
-#line 1333 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1362 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(4) - (4)].node);
}
@@ -3797,7 +3878,7 @@
case 107:
/* Line 690 of lalr1.cc */
-#line 1339 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1368 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CtxItemDecl* d = dynamic_cast<CtxItemDecl*>((yysemantic_stack_[(3) - (3)].node));
d->theType = (yysemantic_stack_[(3) - (2)].node);
@@ -3808,7 +3889,7 @@
case 108:
/* Line 690 of lalr1.cc */
-#line 1346 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1375 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
@@ -3817,7 +3898,7 @@
case 109:
/* Line 690 of lalr1.cc */
-#line 1352 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1381 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CtxItemDecl* d = dynamic_cast<CtxItemDecl*>((yysemantic_stack_[(1) - (1)].node));
d->theIsExternal = false;
@@ -3828,7 +3909,7 @@
case 110:
/* Line 690 of lalr1.cc */
-#line 1359 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1388 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CtxItemDecl(LOC((yyloc)), NULL);
}
@@ -3837,7 +3918,7 @@
case 111:
/* Line 690 of lalr1.cc */
-#line 1364 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1393 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(2) - (2)].node);
}
@@ -3846,7 +3927,7 @@
case 112:
/* Line 690 of lalr1.cc */
-#line 1370 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1399 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CtxItemDecl(LOC((yyloc)), (yysemantic_stack_[(2) - (2)].expr));
}
@@ -3855,7 +3936,7 @@
case 113:
/* Line 690 of lalr1.cc */
-#line 1376 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1405 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(4) - (2)].varnametype)));
(yyval.node) = new GlobalVarDecl(LOC((yyloc)),
@@ -3871,7 +3952,7 @@
case 114:
/* Line 690 of lalr1.cc */
-#line 1388 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1417 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(3) - (2)].varnametype)));
(yyval.node) = new GlobalVarDecl(LOC((yyloc)),
@@ -3887,7 +3968,7 @@
case 115:
/* Line 690 of lalr1.cc */
-#line 1400 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1429 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(5) - (2)].varnametype)));
(yyval.node) = new GlobalVarDecl(LOC((yyloc)),
@@ -3903,7 +3984,7 @@
case 116:
/* Line 690 of lalr1.cc */
-#line 1413 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1442 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.varnametype) = new VarNameAndType(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)), NULL, NULL);
}
@@ -3912,7 +3993,7 @@
case 117:
/* Line 690 of lalr1.cc */
-#line 1418 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1447 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)),
@@ -3924,7 +4005,7 @@
case 118:
/* Line 690 of lalr1.cc */
-#line 1426 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1455 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (4)].expr)),
@@ -3936,7 +4017,7 @@
case 119:
/* Line 690 of lalr1.cc */
-#line 1434 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1463 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (4)].expr)),
@@ -3948,7 +4029,7 @@
case 120:
/* Line 690 of lalr1.cc */
-#line 1443 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1472 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new AnnotationListParsenode(LOC((yyloc)), static_cast<AnnotationParsenode*>((yysemantic_stack_[(1) - (1)].node)));
}
@@ -3957,7 +4038,7 @@
case 121:
/* Line 690 of lalr1.cc */
-#line 1448 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1477 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
static_cast<AnnotationListParsenode*>((yysemantic_stack_[(2) - (1)].node))->push_back(static_cast<AnnotationParsenode*>((yysemantic_stack_[(2) - (2)].node)));
(yyval.node) = (yysemantic_stack_[(2) - (1)].node);
@@ -3967,7 +4048,7 @@
case 122:
/* Line 690 of lalr1.cc */
-#line 1455 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1484 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new AnnotationParsenode(LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval))), NULL);
}
@@ -3976,7 +4057,7 @@
case 123:
/* Line 690 of lalr1.cc */
-#line 1460 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1489 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new AnnotationParsenode(LOC((yyloc)),
new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (1)].sval))),
@@ -3987,7 +4068,7 @@
case 124:
/* Line 690 of lalr1.cc */
-#line 1467 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1496 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new AnnotationParsenode(LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), true), NULL);
}
@@ -3996,7 +4077,7 @@
case 125:
/* Line 690 of lalr1.cc */
-#line 1472 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1501 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new AnnotationParsenode(LOC((yyloc)),
new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (1)].sval)), true),
@@ -4007,7 +4088,7 @@
case 126:
/* Line 690 of lalr1.cc */
-#line 1480 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1509 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new AnnotationLiteralListParsenode(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr));
}
@@ -4016,7 +4097,7 @@
case 127:
/* Line 690 of lalr1.cc */
-#line 1485 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1514 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
static_cast<AnnotationLiteralListParsenode*>((yysemantic_stack_[(3) - (1)].node))->push_back((yysemantic_stack_[(3) - (3)].expr));
(yyval.node) = (yysemantic_stack_[(3) - (1)].node);
@@ -4026,7 +4107,7 @@
case 128:
/* Line 690 of lalr1.cc */
-#line 1492 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1521 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
static_cast<FunctionDecl*>((yysemantic_stack_[(2) - (2)].node))->setComment( SYMTAB((yysemantic_stack_[(2) - (1)].sval)) );
(yyval.node) = (yysemantic_stack_[(2) - (2)].node);
@@ -4036,7 +4117,7 @@
case 129:
/* Line 690 of lalr1.cc */
-#line 1498 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1527 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
FunctionDecl* fdecl = static_cast<FunctionDecl*>((yysemantic_stack_[(3) - (3)].node));
fdecl->setComment( SYMTAB((yysemantic_stack_[(3) - (1)].sval)) );
@@ -4048,7 +4129,7 @@
case 130:
/* Line 690 of lalr1.cc */
-#line 1507 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1536 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
@@ -4057,7 +4138,7 @@
case 131:
/* Line 690 of lalr1.cc */
-#line 1512 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1541 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
@@ -4066,7 +4147,7 @@
case 132:
/* Line 690 of lalr1.cc */
-#line 1518 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1547 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FunctionDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -4082,7 +4163,7 @@
case 133:
/* Line 690 of lalr1.cc */
-#line 1529 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1558 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FunctionDecl(LOC ((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -4098,7 +4179,7 @@
case 134:
/* Line 690 of lalr1.cc */
-#line 1542 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1571 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FunctionDecl(LOC ((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
@@ -4114,7 +4195,7 @@
case 135:
/* Line 690 of lalr1.cc */
-#line 1554 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1583 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FunctionDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
@@ -4130,7 +4211,7 @@
case 136:
/* Line 690 of lalr1.cc */
-#line 1567 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1596 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.fnsig) = new FunctionSig(NULL);
}
@@ -4139,7 +4220,7 @@
case 137:
/* Line 690 of lalr1.cc */
-#line 1572 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1601 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.fnsig) = new FunctionSig(dynamic_cast<ParamList*>((yysemantic_stack_[(3) - (2)].node)));
}
@@ -4148,7 +4229,7 @@
case 138:
/* Line 690 of lalr1.cc */
-#line 1577 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1606 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.fnsig) = new FunctionSig(NULL, dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (4)].node)));
}
@@ -4157,7 +4238,7 @@
case 139:
/* Line 690 of lalr1.cc */
-#line 1582 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1611 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.fnsig) = new FunctionSig(dynamic_cast<ParamList*>((yysemantic_stack_[(5) - (2)].node)), dynamic_cast<SequenceType*>((yysemantic_stack_[(5) - (5)].node)));
}
@@ -4166,7 +4247,7 @@
case 140:
/* Line 690 of lalr1.cc */
-#line 1588 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1617 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
ParamList *pl = new ParamList( LOC((yyloc)) );
pl->push_back( dynamic_cast<Param*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -4177,7 +4258,7 @@
case 141:
/* Line 690 of lalr1.cc */
-#line 1595 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1624 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if ( ParamList *pl = dynamic_cast<ParamList*>((yysemantic_stack_[(3) - (1)].node)) )
pl->push_back( dynamic_cast<Param*>((yysemantic_stack_[(3) - (3)].node)) );
@@ -4188,7 +4269,7 @@
case 142:
/* Line 690 of lalr1.cc */
-#line 1603 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1632 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new Param(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)), NULL);
}
@@ -4197,7 +4278,7 @@
case 143:
/* Line 690 of lalr1.cc */
-#line 1608 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1637 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new Param(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
@@ -4208,7 +4289,7 @@
case 144:
/* Line 690 of lalr1.cc */
-#line 1616 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1645 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CollectionDecl( LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)),
@@ -4221,7 +4302,7 @@
case 145:
/* Line 690 of lalr1.cc */
-#line 1624 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1653 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CollectionDecl( LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
@@ -4234,7 +4315,7 @@
case 146:
/* Line 690 of lalr1.cc */
-#line 1632 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1661 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CollectionDecl( LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (4)].expr)),
@@ -4247,7 +4328,7 @@
case 147:
/* Line 690 of lalr1.cc */
-#line 1640 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1669 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CollectionDecl( LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(6) - (4)].expr)),
@@ -4260,7 +4341,7 @@
case 148:
/* Line 690 of lalr1.cc */
-#line 1650 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1679 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), NULL));
}
@@ -4269,7 +4350,7 @@
case 149:
/* Line 690 of lalr1.cc */
-#line 1654 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1683 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)),
(yysemantic_stack_[(2) - (1)].node),
@@ -4280,7 +4361,7 @@
case 150:
/* Line 690 of lalr1.cc */
-#line 1660 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1689 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), NULL));
}
@@ -4289,7 +4370,7 @@
case 151:
/* Line 690 of lalr1.cc */
-#line 1664 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1693 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)),
(yysemantic_stack_[(2) - (1)].node),
@@ -4300,7 +4381,7 @@
case 152:
/* Line 690 of lalr1.cc */
-#line 1671 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1700 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new AST_IndexDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(8) - (3)].expr)),
@@ -4314,7 +4395,7 @@
case 153:
/* Line 690 of lalr1.cc */
-#line 1680 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1709 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new AST_IndexDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(9) - (4)].expr)),
@@ -4328,7 +4409,7 @@
case 154:
/* Line 690 of lalr1.cc */
-#line 1691 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1720 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
IndexKeyList* keyList = new IndexKeyList(LOC((yyloc)));
keyList->addKeySpec(dynamic_cast<IndexKeySpec*>((yysemantic_stack_[(1) - (1)].node)));
@@ -4339,7 +4420,7 @@
case 155:
/* Line 690 of lalr1.cc */
-#line 1697 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1726 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
dynamic_cast<IndexKeyList*>((yysemantic_stack_[(3) - (1)].node))->addKeySpec(dynamic_cast<IndexKeySpec*>((yysemantic_stack_[(3) - (3)].node)));
(yyval.node) = (yysemantic_stack_[(3) - (1)].node);
@@ -4349,7 +4430,7 @@
case 156:
/* Line 690 of lalr1.cc */
-#line 1704 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1733 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new IndexKeySpec(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr), NULL, NULL);
}
@@ -4358,7 +4439,7 @@
case 157:
/* Line 690 of lalr1.cc */
-#line 1709 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1738 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new IndexKeySpec(LOC((yyloc)),
(yysemantic_stack_[(2) - (1)].expr),
@@ -4370,7 +4451,7 @@
case 158:
/* Line 690 of lalr1.cc */
-#line 1716 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1745 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new IndexKeySpec(LOC((yyloc)),
(yysemantic_stack_[(2) - (1)].expr),
@@ -4382,7 +4463,7 @@
case 159:
/* Line 690 of lalr1.cc */
-#line 1723 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1752 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new IndexKeySpec(LOC((yyloc)),
(yysemantic_stack_[(3) - (1)].expr),
@@ -4394,7 +4475,7 @@
case 160:
/* Line 690 of lalr1.cc */
-#line 1733 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1762 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ICCollSimpleCheck(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(11) - (4)].expr)),
@@ -4407,7 +4488,7 @@
case 161:
/* Line 690 of lalr1.cc */
-#line 1743 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1772 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ICCollUniqueKeyCheck(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(14) - (4)].expr)),
@@ -4420,7 +4501,7 @@
case 162:
/* Line 690 of lalr1.cc */
-#line 1753 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1782 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ICCollForeachNode(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(13) - (4)].expr)),
@@ -4433,7 +4514,7 @@
case 163:
/* Line 690 of lalr1.cc */
-#line 1764 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ICForeignKey( LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(22) - (4)].expr)),
@@ -4449,7 +4530,7 @@
case 164:
/* Line 690 of lalr1.cc */
-#line 1777 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1806 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if ((yysemantic_stack_[(1) - (1)].expr) == NULL)
{
@@ -4468,7 +4549,7 @@
case 165:
/* Line 690 of lalr1.cc */
-#line 1793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1822 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
@@ -4477,7 +4558,7 @@
case 166:
/* Line 690 of lalr1.cc */
-#line 1797 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1826 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
@@ -4486,7 +4567,7 @@
case 167:
/* Line 690 of lalr1.cc */
-#line 1801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1830 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = NULL;
}
@@ -4495,7 +4576,7 @@
case 168:
/* Line 690 of lalr1.cc */
-#line 1807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1836 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
@@ -4504,7 +4585,7 @@
case 169:
/* Line 690 of lalr1.cc */
-#line 1811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1840 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
@@ -4513,7 +4594,7 @@
case 170:
/* Line 690 of lalr1.cc */
-#line 1815 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1844 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new BlockBody(LOC((yyloc)));
}
@@ -4522,7 +4603,7 @@
case 171:
/* Line 690 of lalr1.cc */
-#line 1821 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1850 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
@@ -4531,7 +4612,7 @@
case 172:
/* Line 690 of lalr1.cc */
-#line 1826 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1855 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
BlockBody* blk = static_cast<BlockBody*>((yysemantic_stack_[(2) - (1)].expr));
blk->add((yysemantic_stack_[(2) - (2)].expr));
@@ -4542,7 +4623,7 @@
case 173:
/* Line 690 of lalr1.cc */
-#line 1834 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1863 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
BlockBody* blk = new BlockBody(LOC((yyloc)));
blk->add((yysemantic_stack_[(1) - (1)].expr));
@@ -4553,7 +4634,7 @@
case 174:
/* Line 690 of lalr1.cc */
-#line 1841 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1870 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
BlockBody* blk = static_cast<BlockBody*>((yysemantic_stack_[(2) - (1)].expr));
blk->add((yysemantic_stack_[(2) - (2)].expr));
@@ -4564,7 +4645,7 @@
case 175:
/* Line 690 of lalr1.cc */
-#line 1848 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1877 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(4) - (1)].expr);
(yyval.expr) = (yysemantic_stack_[(4) - (2)].expr);
@@ -4580,7 +4661,7 @@
case 189:
/* Line 690 of lalr1.cc */
-#line 1876 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1905 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
}
@@ -4589,11 +4670,13 @@
case 190:
/* Line 690 of lalr1.cc */
-#line 1882 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1911 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
BlockBody* block = dynamic_cast<BlockBody*>((yysemantic_stack_[(3) - (2)].expr));
if ((yysemantic_stack_[(3) - (2)].expr) == NULL || (block != NULL && block->isEmpty()))
{
+ if ((yysemantic_stack_[(3) - (2)].expr) == NULL)
+ driver.addCommonLanguageWarning((yylocation_stack_[(3) - (1)]), ZED(ZWST0009_EMPTY_OBJECT));
(yyval.expr) = new JSONDirectObjectConstructor(LOC((yyloc)));
}
else
@@ -4613,7 +4696,7 @@
case 191:
/* Line 690 of lalr1.cc */
-#line 1903 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1934 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
}
@@ -4622,7 +4705,7 @@
case 192:
/* Line 690 of lalr1.cc */
-#line 1909 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1940 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(2) - (1)].expr);
}
@@ -4631,7 +4714,7 @@
case 193:
/* Line 690 of lalr1.cc */
-#line 1915 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1946 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
VarDeclStmt* vdecl = static_cast<VarDeclStmt*>((yysemantic_stack_[(3) - (1)].expr));
vdecl->add((yysemantic_stack_[(3) - (3)].node));
@@ -4642,7 +4725,7 @@
case 194:
/* Line 690 of lalr1.cc */
-#line 1922 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1953 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
VarDeclStmt* vdecl = new VarDeclStmt(LOC((yyloc)), NULL);
vdecl->add((yysemantic_stack_[(2) - (2)].node));
@@ -4653,7 +4736,7 @@
case 195:
/* Line 690 of lalr1.cc */
-#line 1929 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1960 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
VarDeclStmt* vdecl = new VarDeclStmt(LOC((yyloc)),
static_cast<AnnotationListParsenode*>((yysemantic_stack_[(3) - (1)].node)));
@@ -4665,7 +4748,7 @@
case 196:
/* Line 690 of lalr1.cc */
-#line 1938 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1969 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
LocalVarDecl* vd = new LocalVarDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)),
@@ -4679,7 +4762,7 @@
case 197:
/* Line 690 of lalr1.cc */
-#line 1947 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1978 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
LocalVarDecl* vd = new LocalVarDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
@@ -4693,7 +4776,7 @@
case 198:
/* Line 690 of lalr1.cc */
-#line 1956 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1987 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
LocalVarDecl* vd = new LocalVarDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -4707,7 +4790,7 @@
case 199:
/* Line 690 of lalr1.cc */
-#line 1965 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 1996 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
LocalVarDecl* vd = new LocalVarDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -4721,7 +4804,7 @@
case 200:
/* Line 690 of lalr1.cc */
-#line 1976 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2007 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new AssignExpr(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)), (yysemantic_stack_[(5) - (4)].expr));
}
@@ -4730,7 +4813,7 @@
case 201:
/* Line 690 of lalr1.cc */
-#line 1982 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2013 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ApplyExpr(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].expr));
}
@@ -4739,7 +4822,7 @@
case 202:
/* Line 690 of lalr1.cc */
-#line 1988 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2019 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ExitExpr(LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr));
}
@@ -4748,7 +4831,7 @@
case 203:
/* Line 690 of lalr1.cc */
-#line 1994 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2025 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
BlockBody* bb = dynamic_cast<BlockBody *>((yysemantic_stack_[(5) - (5)].expr));
if (bb == NULL)
@@ -4763,7 +4846,7 @@
case 204:
/* Line 690 of lalr1.cc */
-#line 2006 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2037 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new FlowCtlStatement(LOC((yyloc)), FlowCtlStatement::BREAK);
}
@@ -4772,7 +4855,7 @@
case 205:
/* Line 690 of lalr1.cc */
-#line 2011 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2042 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new FlowCtlStatement( LOC((yyloc)), FlowCtlStatement::CONTINUE );
}
@@ -4781,7 +4864,7 @@
case 206:
/* Line 690 of lalr1.cc */
-#line 2017 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2048 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
ReturnExpr* re = dynamic_cast<ReturnExpr*>((yysemantic_stack_[(2) - (2)].expr));
(yyval.expr) = new FLWORExpr(LOC((yyloc)),
@@ -4796,7 +4879,7 @@
case 207:
/* Line 690 of lalr1.cc */
-#line 2029 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2060 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
exprnode* retExpr = (yysemantic_stack_[(2) - (2)].expr);
if (dynamic_cast<VarDeclStmt*>(retExpr) != NULL)
@@ -4812,7 +4895,7 @@
case 208:
/* Line 690 of lalr1.cc */
-#line 2042 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2073 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
exprnode* thenExpr = (yysemantic_stack_[(8) - (6)].expr);
exprnode* elseExpr = (yysemantic_stack_[(8) - (8)].expr);
@@ -4835,7 +4918,7 @@
case 209:
/* Line 690 of lalr1.cc */
-#line 2062 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2093 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new TryExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr), (yysemantic_stack_[(3) - (3)].expr));
}
@@ -4844,7 +4927,7 @@
case 210:
/* Line 690 of lalr1.cc */
-#line 2068 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2099 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CatchListExpr* cle = new CatchListExpr( LOC((yyloc)) );
cle->push_back( static_cast<CatchExpr*>((yysemantic_stack_[(1) - (1)].expr)) );
@@ -4855,7 +4938,7 @@
case 211:
/* Line 690 of lalr1.cc */
-#line 2075 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2106 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CatchListExpr *cle = dynamic_cast<CatchListExpr*>((yysemantic_stack_[(2) - (1)].expr));
if ( cle )
@@ -4867,7 +4950,7 @@
case 212:
/* Line 690 of lalr1.cc */
-#line 2084 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2115 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new CatchExpr(LOC((yyloc)), *(yysemantic_stack_[(3) - (2)].name_test_list), (yysemantic_stack_[(3) - (3)].expr));
delete (yysemantic_stack_[(3) - (2)].name_test_list);
@@ -4877,7 +4960,7 @@
case 213:
/* Line 690 of lalr1.cc */
-#line 2091 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2122 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new BlockBody(LOC((yyloc)));
}
@@ -4886,7 +4969,7 @@
case 214:
/* Line 690 of lalr1.cc */
-#line 2097 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2128 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
@@ -4895,7 +4978,7 @@
case 215:
/* Line 690 of lalr1.cc */
-#line 2102 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2133 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
Expr* expr = dynamic_cast<Expr*>((yysemantic_stack_[(3) - (1)].expr));
if ( !expr )
@@ -4911,7 +4994,7 @@
case 216:
/* Line 690 of lalr1.cc */
-#line 2114 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2145 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(3) - (1)].expr);
(yyval.expr) = (yysemantic_stack_[(3) - (3)].expr);
@@ -4926,7 +5009,7 @@
case 235:
/* Line 690 of lalr1.cc */
-#line 2148 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2179 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
ReturnExpr *re = dynamic_cast<ReturnExpr*>((yysemantic_stack_[(2) - (2)].expr));
(yyval.expr) = new FLWORExpr(LOC((yyloc)),
@@ -4941,7 +5024,7 @@
case 236:
/* Line 690 of lalr1.cc */
-#line 2160 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2191 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ReturnExpr( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].expr) );
}
@@ -4950,7 +5033,7 @@
case 237:
/* Line 690 of lalr1.cc */
-#line 2166 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2197 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.strval) = parser::the_sliding;
}
@@ -4959,7 +5042,7 @@
case 238:
/* Line 690 of lalr1.cc */
-#line 2171 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2202 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.strval) = parser::the_tumbling;
}
@@ -4968,7 +5051,7 @@
case 239:
/* Line 690 of lalr1.cc */
-#line 2177 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2208 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.strval) = parser::the_start;
}
@@ -4977,7 +5060,7 @@
case 240:
/* Line 690 of lalr1.cc */
-#line 2182 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2213 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.strval) = parser::the_end;
}
@@ -4986,7 +5069,7 @@
case 241:
/* Line 690 of lalr1.cc */
-#line 2187 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2218 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.strval) = parser::the_only_end;
}
@@ -4995,7 +5078,7 @@
case 242:
/* Line 690 of lalr1.cc */
-#line 2193 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2224 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FLWORWinCond(LOC((yyloc)),
dynamic_cast<WindowVars*>((yysemantic_stack_[(4) - (2)].node)),
@@ -5008,7 +5091,7 @@
case 243:
/* Line 690 of lalr1.cc */
-#line 2202 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2233 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FLWORWinCond(LOC((yyloc)),
NULL,
@@ -5021,7 +5104,7 @@
case 244:
/* Line 690 of lalr1.cc */
-#line 2213 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2244 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new WindowClause (LOC ((yyloc)),
((yysemantic_stack_[(5) - (2)].strval) == parser::the_tumbling ?
@@ -5036,7 +5119,7 @@
case 245:
/* Line 690 of lalr1.cc */
-#line 2225 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2256 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new WindowClause (LOC ((yyloc)),
((yysemantic_stack_[(4) - (2)].strval) == parser::the_tumbling ?
@@ -5050,7 +5133,7 @@
case 246:
/* Line 690 of lalr1.cc */
-#line 2236 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2267 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CountClause(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
}
@@ -5059,7 +5142,7 @@
case 255:
/* Line 690 of lalr1.cc */
-#line 2254 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2285 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
FLWORClauseList *fcl = new FLWORClauseList( LOC((yyloc)) );
fcl->push_back( dynamic_cast<FLWORClause*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5070,7 +5153,7 @@
case 256:
/* Line 690 of lalr1.cc */
-#line 2261 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2292 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
FLWORClauseList *fcl = dynamic_cast<FLWORClauseList*>((yysemantic_stack_[(2) - (1)].node));
fcl->push_back( dynamic_cast<FLWORClause*>((yysemantic_stack_[(2) - (2)].node)) );
@@ -5081,7 +5164,7 @@
case 257:
/* Line 690 of lalr1.cc */
-#line 2270 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2301 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ForClause(LOC((yyloc)), dynamic_cast<VarInDeclList*>((yysemantic_stack_[(3) - (3)].node)));
}
@@ -5090,7 +5173,7 @@
case 258:
/* Line 690 of lalr1.cc */
-#line 2276 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2305 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(3) - (3)].node);
error((yylocation_stack_[(3) - (2)]), "syntax error, unexpected qualified name \""
@@ -5103,7 +5186,20 @@
case 259:
/* Line 690 of lalr1.cc */
-#line 2286 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2313 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(3) - (3)].node);
+ error((yylocation_stack_[(3) - (2)]), "syntax error, unexpected qualified name \""
+ + static_cast<VarInDeclList*>((yysemantic_stack_[(3) - (3)].node))->operator[](0)->get_var_name()->get_qname().str() + "\" (missing \"$\" sign?)");
+ delete (yysemantic_stack_[(3) - (3)].node);
+ YYERROR;
+ }
+ break;
+
+ case 260:
+
+/* Line 690 of lalr1.cc */
+#line 2323 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = NULL;
error((yylocation_stack_[(2) - (2)]), "");
@@ -5111,18 +5207,18 @@
}
break;
- case 261:
-
-/* Line 690 of lalr1.cc */
-#line 2295 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- }
- break;
-
case 262:
/* Line 690 of lalr1.cc */
-#line 2300 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2332 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ }
+ break;
+
+ case 263:
+
+/* Line 690 of lalr1.cc */
+#line 2337 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
VarInDeclList* vdl = new VarInDeclList( LOC((yyloc)) );
vdl->push_back( dynamic_cast<VarInDecl*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5130,10 +5226,10 @@
}
break;
- case 263:
+ case 264:
/* Line 690 of lalr1.cc */
-#line 2307 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2344 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if ( VarInDeclList* vdl = dynamic_cast<VarInDeclList*>((yysemantic_stack_[(4) - (1)].node)) )
vdl->push_back( dynamic_cast<VarInDecl*>((yysemantic_stack_[(4) - (4)].node)) );
@@ -5141,10 +5237,10 @@
}
break;
- case 264:
+ case 265:
/* Line 690 of lalr1.cc */
-#line 2314 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2351 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(3) - (1)].node);
error((yylocation_stack_[(3) - (3)]), "syntax error, unexpected QName \""
@@ -5154,10 +5250,10 @@
}
break;
- case 265:
+ case 266:
/* Line 690 of lalr1.cc */
-#line 2324 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2361 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarInDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)),
@@ -5169,25 +5265,25 @@
}
break;
- case 266:
-
-/* Line 690 of lalr1.cc */
-#line 2334 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new VarInDecl(LOC((yyloc)),
- static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
- NULL,
- NULL,
- NULL,
- (yysemantic_stack_[(5) - (5)].expr),
- true);
- }
- break;
-
case 267:
/* Line 690 of lalr1.cc */
-#line 2344 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2371 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new VarInDecl(LOC((yyloc)),
+ static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
+ NULL,
+ NULL,
+ NULL,
+ (yysemantic_stack_[(5) - (5)].expr),
+ true);
+ }
+ break;
+
+ case 268:
+
+/* Line 690 of lalr1.cc */
+#line 2381 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarInDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5199,25 +5295,25 @@
}
break;
- case 268:
-
-/* Line 690 of lalr1.cc */
-#line 2354 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new VarInDecl(LOC((yyloc)),
- static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
- dynamic_cast<SequenceType *>((yysemantic_stack_[(6) - (2)].node)),
- NULL,
- NULL,
- (yysemantic_stack_[(6) - (6)].expr),
- true);
- }
- break;
-
case 269:
/* Line 690 of lalr1.cc */
-#line 2364 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2391 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new VarInDecl(LOC((yyloc)),
+ static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
+ dynamic_cast<SequenceType *>((yysemantic_stack_[(6) - (2)].node)),
+ NULL,
+ NULL,
+ (yysemantic_stack_[(6) - (6)].expr),
+ true);
+ }
+ break;
+
+ case 270:
+
+/* Line 690 of lalr1.cc */
+#line 2401 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarInDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5229,10 +5325,10 @@
}
break;
- case 270:
+ case 271:
/* Line 690 of lalr1.cc */
-#line 2374 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2411 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarInDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
@@ -5244,10 +5340,10 @@
}
break;
- case 271:
+ case 272:
/* Line 690 of lalr1.cc */
-#line 2384 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2421 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarInDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5259,10 +5355,10 @@
}
break;
- case 272:
+ case 273:
/* Line 690 of lalr1.cc */
-#line 2394 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2431 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarInDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(7) - (1)].expr)),
@@ -5274,10 +5370,10 @@
}
break;
- case 273:
+ case 274:
/* Line 690 of lalr1.cc */
-#line 2404 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2441 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarInDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5288,25 +5384,25 @@
}
break;
- case 274:
-
-/* Line 690 of lalr1.cc */
-#line 2413 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new VarInDecl(LOC((yyloc)),
- static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
- dynamic_cast<SequenceType *>((yysemantic_stack_[(5) - (2)].node)),
- NULL,
- dynamic_cast<FTScoreVar*>((yysemantic_stack_[(5) - (3)].node)),
- (yysemantic_stack_[(5) - (5)].expr),
- false);
- }
- break;
-
case 275:
/* Line 690 of lalr1.cc */
-#line 2423 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2450 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new VarInDecl(LOC((yyloc)),
+ static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
+ dynamic_cast<SequenceType *>((yysemantic_stack_[(5) - (2)].node)),
+ NULL,
+ dynamic_cast<FTScoreVar*>((yysemantic_stack_[(5) - (3)].node)),
+ (yysemantic_stack_[(5) - (5)].expr),
+ false);
+ }
+ break;
+
+ case 276:
+
+/* Line 690 of lalr1.cc */
+#line 2460 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarInDecl(LOC ((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5318,10 +5414,10 @@
}
break;
- case 276:
+ case 277:
/* Line 690 of lalr1.cc */
-#line 2433 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2470 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarInDecl(LOC ((yyloc)),
static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
@@ -5333,37 +5429,37 @@
}
break;
- case 277:
+ case 278:
/* Line 690 of lalr1.cc */
-#line 2445 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2482 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new PositionalVar(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
}
break;
- case 278:
+ case 279:
/* Line 690 of lalr1.cc */
-#line 2451 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2488 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTScoreVar(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
}
break;
- case 279:
+ case 280:
/* Line 690 of lalr1.cc */
-#line 2457 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2494 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new LetClause( LOC((yyloc)), dynamic_cast<VarGetsDeclList*>((yysemantic_stack_[(2) - (2)].node)) );
}
break;
- case 280:
+ case 281:
/* Line 690 of lalr1.cc */
-#line 2463 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2500 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
VarGetsDeclList *vgdl = new VarGetsDeclList( LOC((yyloc)) );
vgdl->push_back( dynamic_cast<VarGetsDecl*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5371,10 +5467,10 @@
}
break;
- case 281:
+ case 282:
/* Line 690 of lalr1.cc */
-#line 2469 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2506 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if( VarGetsDeclList *vgdl = dynamic_cast<VarGetsDeclList*>((yysemantic_stack_[(3) - (1)].node)) )
vgdl->push_back( dynamic_cast<VarGetsDecl*>((yysemantic_stack_[(3) - (3)].node)) );
@@ -5382,10 +5478,10 @@
}
break;
- case 282:
+ case 283:
/* Line 690 of lalr1.cc */
-#line 2477 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2514 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarGetsDecl(LOC ((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -5395,10 +5491,10 @@
}
break;
- case 283:
+ case 284:
/* Line 690 of lalr1.cc */
-#line 2485 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2522 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarGetsDecl(LOC ((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5408,10 +5504,10 @@
}
break;
- case 284:
+ case 285:
/* Line 690 of lalr1.cc */
-#line 2493 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2530 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarGetsDecl(LOC ((yyloc)),
dynamic_cast<FTScoreVar*>((yysemantic_stack_[(3) - (1)].node))->get_var_name(),
@@ -5421,10 +5517,10 @@
}
break;
- case 285:
+ case 286:
/* Line 690 of lalr1.cc */
-#line 2501 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2538 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new VarGetsDecl(LOC ((yyloc)),
static_cast<QName*>((yysemantic_stack_[(6) - (2)].expr)),
@@ -5434,10 +5530,10 @@
}
break;
- case 286:
+ case 287:
/* Line 690 of lalr1.cc */
-#line 2511 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2548 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new WindowVarDecl(LOC ((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -5445,10 +5541,10 @@
}
break;
- case 287:
+ case 288:
/* Line 690 of lalr1.cc */
-#line 2517 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2554 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new WindowVarDecl(LOC ((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5457,93 +5553,93 @@
}
break;
- case 289:
+ case 290:
/* Line 690 of lalr1.cc */
-#line 2527 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2564 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new WindowVars(LOC((yyloc)), NULL, static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)), NULL, NULL);
}
break;
- case 290:
+ case 291:
/* Line 690 of lalr1.cc */
-#line 2531 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2568 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(3) - (3)].node);
dynamic_cast<WindowVars *>((yyval.node))->set_curr(static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)));
}
break;
- case 291:
+ case 292:
/* Line 690 of lalr1.cc */
-#line 2538 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2575 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new WindowVars(LOC((yyloc)), dynamic_cast<PositionalVar*>((yysemantic_stack_[(1) - (1)].node)), NULL, NULL, NULL);
}
break;
- case 292:
+ case 293:
/* Line 690 of lalr1.cc */
-#line 2542 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2579 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(2) - (2)].node);
dynamic_cast<WindowVars *>((yyval.node))->set_posvar(dynamic_cast<PositionalVar*>((yysemantic_stack_[(2) - (1)].node)));
}
break;
- case 294:
+ case 295:
/* Line 690 of lalr1.cc */
-#line 2550 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2587 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new WindowVars(LOC((yyloc)), NULL, NULL, static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)), static_cast<QName*>((yysemantic_stack_[(6) - (6)].expr)));
}
break;
- case 295:
+ case 296:
/* Line 690 of lalr1.cc */
-#line 2554 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2591 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new WindowVars(LOC((yyloc)), NULL, NULL, NULL, static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
}
break;
- case 296:
+ case 297:
/* Line 690 of lalr1.cc */
-#line 2558 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2595 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new WindowVars(LOC((yyloc)), NULL, NULL, static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)), NULL);
}
break;
- case 297:
+ case 298:
/* Line 690 of lalr1.cc */
-#line 2564 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2601 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new WhereClause(LOC ((yyloc)), (yysemantic_stack_[(2) - (2)].expr));
}
break;
- case 298:
+ case 299:
/* Line 690 of lalr1.cc */
-#line 2570 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2607 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new GroupByClause(LOC((yyloc)), dynamic_cast<GroupSpecList*>((yysemantic_stack_[(3) - (3)].node)));
}
break;
- case 299:
+ case 300:
/* Line 690 of lalr1.cc */
-#line 2576 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2613 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
GroupSpecList* gsl = new GroupSpecList(LOC((yyloc)));
gsl->push_back(static_cast<GroupSpec*>((yysemantic_stack_[(1) - (1)].node)));
@@ -5551,10 +5647,10 @@
}
break;
- case 300:
+ case 301:
/* Line 690 of lalr1.cc */
-#line 2582 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2619 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
GroupSpecList* gsl = static_cast<GroupSpecList*>((yysemantic_stack_[(3) - (1)].node));
gsl->push_back(static_cast<GroupSpec*>((yysemantic_stack_[(3) - (3)].node)));
@@ -5562,28 +5658,28 @@
}
break;
- case 301:
+ case 302:
/* Line 690 of lalr1.cc */
-#line 2590 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2627 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new GroupSpec(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)), NULL, NULL, NULL);
}
break;
- case 302:
+ case 303:
/* Line 690 of lalr1.cc */
-#line 2594 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2631 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new GroupSpec(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)), NULL, (yysemantic_stack_[(4) - (4)].expr), NULL);
}
break;
- case 303:
+ case 304:
/* Line 690 of lalr1.cc */
-#line 2598 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2635 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new GroupSpec(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5593,10 +5689,10 @@
}
break;
- case 304:
+ case 305:
/* Line 690 of lalr1.cc */
-#line 2606 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2643 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new GroupSpec(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(6) - (2)].expr)),
@@ -5606,10 +5702,10 @@
}
break;
- case 305:
+ case 306:
/* Line 690 of lalr1.cc */
-#line 2614 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2651 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new GroupSpec(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5619,10 +5715,10 @@
}
break;
- case 306:
+ case 307:
/* Line 690 of lalr1.cc */
-#line 2622 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2659 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new GroupSpec(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
@@ -5632,19 +5728,19 @@
}
break;
- case 307:
+ case 308:
/* Line 690 of lalr1.cc */
-#line 2632 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2669 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new GroupCollationSpec( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
}
break;
- case 308:
+ case 309:
/* Line 690 of lalr1.cc */
-#line 2638 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2675 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderByClause(
LOC((yyloc)), dynamic_cast<OrderSpecList*>((yysemantic_stack_[(3) - (3)].node))
@@ -5652,10 +5748,10 @@
}
break;
- case 309:
+ case 310:
/* Line 690 of lalr1.cc */
-#line 2644 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2681 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderByClause(
LOC((yyloc)), dynamic_cast<OrderSpecList*>((yysemantic_stack_[(4) - (4)].node)), true
@@ -5663,10 +5759,10 @@
}
break;
- case 310:
+ case 311:
/* Line 690 of lalr1.cc */
-#line 2652 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2689 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
OrderSpecList *osl = new OrderSpecList( LOC((yyloc)) );
osl->push_back( dynamic_cast<OrderSpec*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5674,10 +5770,10 @@
}
break;
- case 311:
+ case 312:
/* Line 690 of lalr1.cc */
-#line 2658 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2695 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if ( OrderSpecList* osl = dynamic_cast<OrderSpecList*>((yysemantic_stack_[(3) - (1)].node)) )
osl->push_back( dynamic_cast<OrderSpec*>((yysemantic_stack_[(3) - (3)].node)) );
@@ -5685,19 +5781,19 @@
}
break;
- case 312:
+ case 313:
/* Line 690 of lalr1.cc */
-#line 2666 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2703 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderSpec( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr), NULL );
}
break;
- case 313:
+ case 314:
/* Line 690 of lalr1.cc */
-#line 2670 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2707 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderSpec(
LOC((yyloc)), (yysemantic_stack_[(2) - (1)].expr), dynamic_cast<OrderModifierPN*>((yysemantic_stack_[(2) - (2)].node))
@@ -5705,10 +5801,10 @@
}
break;
- case 314:
+ case 315:
/* Line 690 of lalr1.cc */
-#line 2678 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2715 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderModifierPN(
LOC((yyloc)), dynamic_cast<OrderDirSpec*>((yysemantic_stack_[(1) - (1)].node)), NULL, NULL
@@ -5716,10 +5812,10 @@
}
break;
- case 315:
+ case 316:
/* Line 690 of lalr1.cc */
-#line 2684 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2721 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderModifierPN(
LOC((yyloc)), NULL, dynamic_cast<OrderEmptySpec*>((yysemantic_stack_[(1) - (1)].node)), NULL
@@ -5727,10 +5823,10 @@
}
break;
- case 316:
+ case 317:
/* Line 690 of lalr1.cc */
-#line 2690 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2727 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderModifierPN(
LOC((yyloc)), NULL, NULL, dynamic_cast<OrderCollationSpec*>((yysemantic_stack_[(1) - (1)].node))
@@ -5738,10 +5834,10 @@
}
break;
- case 317:
+ case 318:
/* Line 690 of lalr1.cc */
-#line 2696 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2733 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderModifierPN(
LOC((yyloc)),
@@ -5752,24 +5848,24 @@
}
break;
- case 318:
-
-/* Line 690 of lalr1.cc */
-#line 2705 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new OrderModifierPN(
- LOC((yyloc)),
- dynamic_cast<OrderDirSpec*>((yysemantic_stack_[(2) - (1)].node)),
- NULL,
- dynamic_cast<OrderCollationSpec*>((yysemantic_stack_[(2) - (2)].node))
- );
- }
- break;
-
case 319:
/* Line 690 of lalr1.cc */
-#line 2714 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2742 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new OrderModifierPN(
+ LOC((yyloc)),
+ dynamic_cast<OrderDirSpec*>((yysemantic_stack_[(2) - (1)].node)),
+ NULL,
+ dynamic_cast<OrderCollationSpec*>((yysemantic_stack_[(2) - (2)].node))
+ );
+ }
+ break;
+
+ case 320:
+
+/* Line 690 of lalr1.cc */
+#line 2751 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderModifierPN(
LOC((yyloc)),
@@ -5780,10 +5876,10 @@
}
break;
- case 320:
+ case 321:
/* Line 690 of lalr1.cc */
-#line 2723 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2760 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderModifierPN(
LOC((yyloc)),
@@ -5794,28 +5890,28 @@
}
break;
- case 321:
+ case 322:
/* Line 690 of lalr1.cc */
-#line 2734 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2771 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderDirSpec( LOC((yyloc)), ParseConstants::dir_ascending );
}
break;
- case 322:
+ case 323:
/* Line 690 of lalr1.cc */
-#line 2738 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2775 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderDirSpec( LOC((yyloc)), ParseConstants::dir_descending );
}
break;
- case 323:
+ case 324:
/* Line 690 of lalr1.cc */
-#line 2744 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2781 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderEmptySpec(
LOC((yyloc)), StaticContextConsts::empty_greatest
@@ -5823,10 +5919,10 @@
}
break;
- case 324:
+ case 325:
/* Line 690 of lalr1.cc */
-#line 2750 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderEmptySpec(
LOC((yyloc)), StaticContextConsts::empty_least
@@ -5834,19 +5930,19 @@
}
break;
- case 325:
+ case 326:
/* Line 690 of lalr1.cc */
-#line 2758 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new OrderCollationSpec( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
}
break;
- case 326:
+ case 327:
/* Line 690 of lalr1.cc */
-#line 2764 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new QuantifiedExpr(
LOC((yyloc)),
@@ -5857,10 +5953,10 @@
}
break;
- case 327:
+ case 328:
/* Line 690 of lalr1.cc */
-#line 2773 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new QuantifiedExpr(
LOC((yyloc)),
@@ -5871,10 +5967,10 @@
}
break;
- case 328:
+ case 329:
/* Line 690 of lalr1.cc */
-#line 2784 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2821 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
QVarInDeclList *qvidl = new QVarInDeclList( LOC((yyloc)) );
qvidl->push_back( dynamic_cast<QVarInDecl*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5882,10 +5978,10 @@
}
break;
- case 329:
+ case 330:
/* Line 690 of lalr1.cc */
-#line 2790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2827 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
QVarInDeclList *qvidl = dynamic_cast<QVarInDeclList*>((yysemantic_stack_[(4) - (1)].node));
qvidl->push_back( dynamic_cast<QVarInDecl*>((yysemantic_stack_[(4) - (4)].node)) );
@@ -5893,19 +5989,19 @@
}
break;
- case 330:
+ case 331:
/* Line 690 of lalr1.cc */
-#line 2798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2835 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new QVarInDecl(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), (yysemantic_stack_[(3) - (3)].expr));
}
break;
- case 331:
+ case 332:
/* Line 690 of lalr1.cc */
-#line 2802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2839 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new QVarInDecl(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5914,50 +6010,50 @@
}
break;
- case 332:
-
-/* Line 690 of lalr1.cc */
-#line 2811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new SwitchExpr(LOC((yyloc)), (yysemantic_stack_[(8) - (3)].expr), static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(8) - (5)].node)), (yysemantic_stack_[(8) - (8)].expr));
- }
- break;
-
case 333:
/* Line 690 of lalr1.cc */
-#line 2817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2848 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- SwitchCaseClauseList* scc_list_p = new SwitchCaseClauseList(LOC((yyloc)));
- scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(1) - (1)].node)));
- (yyval.node) = scc_list_p;
+ (yyval.expr) = new SwitchExpr(LOC((yyloc)), (yysemantic_stack_[(8) - (3)].expr), static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(8) - (5)].node)), (yysemantic_stack_[(8) - (8)].expr));
}
break;
case 334:
/* Line 690 of lalr1.cc */
-#line 2823 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2854 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- SwitchCaseClauseList* scc_list_p = static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
- scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(2) - (2)].node)));
- (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+ SwitchCaseClauseList* scc_list_p = new SwitchCaseClauseList(LOC((yyloc)));
+ scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(1) - (1)].node)));
+ (yyval.node) = scc_list_p;
}
break;
case 335:
/* Line 690 of lalr1.cc */
-#line 2831 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2860 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new SwitchCaseClause(LOC((yyloc)), dynamic_cast<SwitchCaseOperandList*>((yysemantic_stack_[(3) - (1)].node)), (yysemantic_stack_[(3) - (3)].expr));
+ SwitchCaseClauseList* scc_list_p = static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
+ scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(2) - (2)].node)));
+ (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
}
break;
case 336:
/* Line 690 of lalr1.cc */
-#line 2837 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2868 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new SwitchCaseClause(LOC((yyloc)), dynamic_cast<SwitchCaseOperandList*>((yysemantic_stack_[(3) - (1)].node)), (yysemantic_stack_[(3) - (3)].expr));
+ }
+ break;
+
+ case 337:
+
+/* Line 690 of lalr1.cc */
+#line 2874 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
SwitchCaseOperandList* sco_list_p = new SwitchCaseOperandList(LOC((yyloc)));
sco_list_p->push_back((yysemantic_stack_[(2) - (2)].expr));
@@ -5965,10 +6061,10 @@
}
break;
- case 337:
+ case 338:
/* Line 690 of lalr1.cc */
-#line 2843 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2880 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
SwitchCaseOperandList* sco_list_p = static_cast<SwitchCaseOperandList*>((yysemantic_stack_[(3) - (1)].node));
sco_list_p->push_back((yysemantic_stack_[(3) - (3)].expr));
@@ -5976,111 +6072,111 @@
}
break;
- case 338:
-
-/* Line 690 of lalr1.cc */
-#line 2851 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new SwitchExpr(LOC((yyloc)), (yysemantic_stack_[(8) - (3)].expr), static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(8) - (5)].node)), (yysemantic_stack_[(8) - (8)].expr));
- }
- break;
-
case 339:
/* Line 690 of lalr1.cc */
-#line 2857 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2888 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- SwitchCaseClauseList* scc_list_p = new SwitchCaseClauseList(LOC((yyloc)));
- scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(1) - (1)].node)));
- (yyval.node) = scc_list_p;
+ (yyval.expr) = new SwitchExpr(LOC((yyloc)), (yysemantic_stack_[(8) - (3)].expr), static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(8) - (5)].node)), (yysemantic_stack_[(8) - (8)].expr));
}
break;
case 340:
/* Line 690 of lalr1.cc */
-#line 2863 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2894 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- SwitchCaseClauseList* scc_list_p = static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
- scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(2) - (2)].node)));
- (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+ SwitchCaseClauseList* scc_list_p = new SwitchCaseClauseList(LOC((yyloc)));
+ scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(1) - (1)].node)));
+ (yyval.node) = scc_list_p;
}
break;
case 341:
/* Line 690 of lalr1.cc */
-#line 2871 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2900 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new SwitchCaseClause(LOC((yyloc)), dynamic_cast<SwitchCaseOperandList*>((yysemantic_stack_[(3) - (1)].node)), (yysemantic_stack_[(3) - (3)].expr));
+ SwitchCaseClauseList* scc_list_p = static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
+ scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(2) - (2)].node)));
+ (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
}
break;
case 342:
/* Line 690 of lalr1.cc */
-#line 2877 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2908 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new TypeswitchExpr(LOC((yyloc)),
- (yysemantic_stack_[(8) - (3)].expr),
- static_cast<CaseClauseList*>((yysemantic_stack_[(8) - (5)].node)),
- (yysemantic_stack_[(8) - (8)].expr));
+ (yyval.node) = new SwitchCaseClause(LOC((yyloc)), dynamic_cast<SwitchCaseOperandList*>((yysemantic_stack_[(3) - (1)].node)), (yysemantic_stack_[(3) - (3)].expr));
}
break;
case 343:
/* Line 690 of lalr1.cc */
-#line 2884 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2914 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new TypeswitchExpr(LOC ((yyloc)),
- (yysemantic_stack_[(10) - (3)].expr),
- static_cast<CaseClauseList*>((yysemantic_stack_[(10) - (5)].node)),
- static_cast<QName*>((yysemantic_stack_[(10) - (8)].expr)),
- (yysemantic_stack_[(10) - (10)].expr));
+ (yyval.expr) = new TypeswitchExpr(LOC((yyloc)),
+ (yysemantic_stack_[(8) - (3)].expr),
+ static_cast<CaseClauseList*>((yysemantic_stack_[(8) - (5)].node)),
+ (yysemantic_stack_[(8) - (8)].expr));
}
break;
case 344:
/* Line 690 of lalr1.cc */
-#line 2894 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2921 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new TypeswitchExpr(LOC((yyloc)),
- (yysemantic_stack_[(8) - (3)].expr),
- static_cast<CaseClauseList*>((yysemantic_stack_[(8) - (5)].node)),
- (yysemantic_stack_[(8) - (8)].expr));
+ (yyval.expr) = new TypeswitchExpr(LOC ((yyloc)),
+ (yysemantic_stack_[(10) - (3)].expr),
+ static_cast<CaseClauseList*>((yysemantic_stack_[(10) - (5)].node)),
+ static_cast<QName*>((yysemantic_stack_[(10) - (8)].expr)),
+ (yysemantic_stack_[(10) - (10)].expr));
}
break;
case 345:
/* Line 690 of lalr1.cc */
-#line 2901 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2931 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new TypeswitchExpr(LOC ((yyloc)),
- (yysemantic_stack_[(10) - (3)].expr),
- static_cast<CaseClauseList*>((yysemantic_stack_[(10) - (5)].node)),
- static_cast<QName*>((yysemantic_stack_[(10) - (8)].expr)),
- (yysemantic_stack_[(10) - (10)].expr));
+ (yyval.expr) = new TypeswitchExpr(LOC((yyloc)),
+ (yysemantic_stack_[(8) - (3)].expr),
+ static_cast<CaseClauseList*>((yysemantic_stack_[(8) - (5)].node)),
+ (yysemantic_stack_[(8) - (8)].expr));
}
break;
case 346:
/* Line 690 of lalr1.cc */
-#line 2911 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2938 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- CaseClauseList* cc_list_p = new CaseClauseList(LOC ((yyloc)));
- cc_list_p->push_back(static_cast<CaseClause*>((yysemantic_stack_[(1) - (1)].node)));
- (yyval.node) = cc_list_p;
+ (yyval.expr) = new TypeswitchExpr(LOC ((yyloc)),
+ (yysemantic_stack_[(10) - (3)].expr),
+ static_cast<CaseClauseList*>((yysemantic_stack_[(10) - (5)].node)),
+ static_cast<QName*>((yysemantic_stack_[(10) - (8)].expr)),
+ (yysemantic_stack_[(10) - (10)].expr));
}
break;
case 347:
/* Line 690 of lalr1.cc */
-#line 2917 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2948 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ CaseClauseList* cc_list_p = new CaseClauseList(LOC ((yyloc)));
+ cc_list_p->push_back(static_cast<CaseClause*>((yysemantic_stack_[(1) - (1)].node)));
+ (yyval.node) = cc_list_p;
+ }
+ break;
+
+ case 348:
+
+/* Line 690 of lalr1.cc */
+#line 2954 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CaseClauseList* cc_list_p = dynamic_cast<CaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
cc_list_p->push_back(static_cast<CaseClause*>((yysemantic_stack_[(2) - (2)].node)));
@@ -6088,44 +6184,44 @@
}
break;
- case 348:
-
-/* Line 690 of lalr1.cc */
-#line 2925 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new CaseClause(LOC ((yyloc)),
- static_cast<SequenceTypeList*>((yysemantic_stack_[(4) - (2)].node)),
- (yysemantic_stack_[(4) - (4)].expr));
- }
- break;
-
case 349:
/* Line 690 of lalr1.cc */
-#line 2931 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2962 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CaseClause(LOC ((yyloc)),
- static_cast<QName*>((yysemantic_stack_[(7) - (3)].expr)),
- static_cast<SequenceTypeList*>((yysemantic_stack_[(7) - (5)].node)),
- (yysemantic_stack_[(7) - (7)].expr));
- }
+ static_cast<SequenceTypeList*>((yysemantic_stack_[(4) - (2)].node)),
+ (yysemantic_stack_[(4) - (4)].expr));
+ }
break;
case 350:
/* Line 690 of lalr1.cc */
-#line 2940 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2968 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- CaseClauseList* cc_list_p = new CaseClauseList(LOC ((yyloc)));
- cc_list_p->push_back(static_cast<CaseClause*>((yysemantic_stack_[(1) - (1)].node)));
- (yyval.node) = cc_list_p;
- }
+ (yyval.node) = new CaseClause(LOC ((yyloc)),
+ static_cast<QName*>((yysemantic_stack_[(7) - (3)].expr)),
+ static_cast<SequenceTypeList*>((yysemantic_stack_[(7) - (5)].node)),
+ (yysemantic_stack_[(7) - (7)].expr));
+ }
break;
case 351:
/* Line 690 of lalr1.cc */
-#line 2946 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2977 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ CaseClauseList* cc_list_p = new CaseClauseList(LOC ((yyloc)));
+ cc_list_p->push_back(static_cast<CaseClause*>((yysemantic_stack_[(1) - (1)].node)));
+ (yyval.node) = cc_list_p;
+ }
+ break;
+
+ case 352:
+
+/* Line 690 of lalr1.cc */
+#line 2983 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CaseClauseList* cc_list_p = static_cast<CaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
cc_list_p->push_back(static_cast<CaseClause*>((yysemantic_stack_[(2) - (2)].node)));
@@ -6133,33 +6229,33 @@
}
break;
- case 352:
-
-/* Line 690 of lalr1.cc */
-#line 2954 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new CaseClause(LOC ((yyloc)),
- static_cast<SequenceTypeList*>((yysemantic_stack_[(4) - (2)].node)),
- (yysemantic_stack_[(4) - (4)].expr));
- }
- break;
-
case 353:
/* Line 690 of lalr1.cc */
-#line 2960 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2991 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new CaseClause(LOC ((yyloc)),
- static_cast<QName*>((yysemantic_stack_[(7) - (3)].expr)),
- static_cast<SequenceTypeList*>((yysemantic_stack_[(7) - (5)].node)),
- (yysemantic_stack_[(7) - (7)].expr));
- }
+ static_cast<SequenceTypeList*>((yysemantic_stack_[(4) - (2)].node)),
+ (yysemantic_stack_[(4) - (4)].expr));
+ }
break;
case 354:
/* Line 690 of lalr1.cc */
-#line 2969 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 2997 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new CaseClause(LOC ((yyloc)),
+ static_cast<QName*>((yysemantic_stack_[(7) - (3)].expr)),
+ static_cast<SequenceTypeList*>((yysemantic_stack_[(7) - (5)].node)),
+ (yysemantic_stack_[(7) - (7)].expr));
+ }
+ break;
+
+ case 355:
+
+/* Line 690 of lalr1.cc */
+#line 3006 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
SequenceTypeList* seqList = new SequenceTypeList(LOC((yyloc)));
seqList->push_back(static_cast<SequenceType*>((yysemantic_stack_[(1) - (1)].node)));
@@ -6167,10 +6263,10 @@
}
break;
- case 355:
+ case 356:
/* Line 690 of lalr1.cc */
-#line 2975 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3012 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
SequenceTypeList* seqList = static_cast<SequenceTypeList*>((yysemantic_stack_[(3) - (1)].node));
seqList->push_back(static_cast<SequenceType*>((yysemantic_stack_[(3) - (3)].node)));
@@ -6178,64 +6274,64 @@
}
break;
- case 356:
+ case 357:
/* Line 690 of lalr1.cc */
-#line 2983 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3020 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new IfExpr(LOC ((yyloc)), (yysemantic_stack_[(8) - (3)].expr), (yysemantic_stack_[(8) - (6)].expr), (yysemantic_stack_[(8) - (8)].expr));
}
break;
- case 357:
-
-/* Line 690 of lalr1.cc */
-#line 2989 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 358:
/* Line 690 of lalr1.cc */
-#line 2993 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3026 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 359:
+
+/* Line 690 of lalr1.cc */
+#line 3030 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new OrExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
}
break;
- case 359:
-
-/* Line 690 of lalr1.cc */
-#line 2999 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 360:
/* Line 690 of lalr1.cc */
-#line 3004 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3036 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 361:
+
+/* Line 690 of lalr1.cc */
+#line 3041 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new AndExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
}
break;
- case 361:
-
-/* Line 690 of lalr1.cc */
-#line 3010 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 362:
/* Line 690 of lalr1.cc */
-#line 3014 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3047 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 363:
+
+/* Line 690 of lalr1.cc */
+#line 3051 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ComparisonExpr(
LOC((yyloc)),
@@ -6246,19 +6342,19 @@
}
break;
- case 363:
-
-/* Line 690 of lalr1.cc */
-#line 3025 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 364:
/* Line 690 of lalr1.cc */
-#line 3029 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3062 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 365:
+
+/* Line 690 of lalr1.cc */
+#line 3066 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ComparisonExpr(
LOC((yyloc)),
@@ -6269,19 +6365,19 @@
}
break;
- case 365:
-
-/* Line 690 of lalr1.cc */
-#line 3040 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 366:
/* Line 690 of lalr1.cc */
-#line 3044 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3077 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 367:
+
+/* Line 690 of lalr1.cc */
+#line 3081 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new FTContainsExpr(
LOC((yyloc)),
@@ -6292,100 +6388,100 @@
}
break;
- case 367:
-
-/* Line 690 of lalr1.cc */
-#line 3055 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 368:
/* Line 690 of lalr1.cc */
-#line 3059 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3092 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 369:
+
+/* Line 690 of lalr1.cc */
+#line 3096 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new StringConcatExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
}
break;
- case 369:
-
-/* Line 690 of lalr1.cc */
-#line 3064 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = NULL;
- }
- break;
-
case 370:
/* Line 690 of lalr1.cc */
-#line 3068 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3101 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ (yyval.node) = NULL;
}
break;
case 371:
/* Line 690 of lalr1.cc */
-#line 3074 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3105 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
case 372:
/* Line 690 of lalr1.cc */
-#line 3078 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3111 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 373:
+
+/* Line 690 of lalr1.cc */
+#line 3115 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new RangeExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
}
break;
- case 373:
-
-/* Line 690 of lalr1.cc */
-#line 3084 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 374:
/* Line 690 of lalr1.cc */
-#line 3088 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3121 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 375:
+
+/* Line 690 of lalr1.cc */
+#line 3125 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new AdditiveExpr( LOC((yyloc)), ParseConstants::op_plus, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
}
break;
- case 375:
+ case 376:
/* Line 690 of lalr1.cc */
-#line 3092 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3129 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new AdditiveExpr( LOC((yyloc)), ParseConstants::op_minus, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
}
break;
- case 376:
-
-/* Line 690 of lalr1.cc */
-#line 3098 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 377:
/* Line 690 of lalr1.cc */
-#line 3102 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3135 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 378:
+
+/* Line 690 of lalr1.cc */
+#line 3139 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new MultiplicativeExpr(
LOC((yyloc)), ParseConstants::op_mul, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6393,10 +6489,10 @@
}
break;
- case 378:
+ case 379:
/* Line 690 of lalr1.cc */
-#line 3108 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3145 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new MultiplicativeExpr(
LOC((yyloc)), ParseConstants::op_div, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6404,10 +6500,10 @@
}
break;
- case 379:
+ case 380:
/* Line 690 of lalr1.cc */
-#line 3114 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3151 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new MultiplicativeExpr(
LOC((yyloc)), ParseConstants::op_idiv, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6415,10 +6511,10 @@
}
break;
- case 380:
+ case 381:
/* Line 690 of lalr1.cc */
-#line 3120 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3157 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new MultiplicativeExpr(
LOC((yyloc)), ParseConstants::op_mod, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6426,28 +6522,19 @@
}
break;
- case 381:
-
-/* Line 690 of lalr1.cc */
-#line 3128 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 382:
/* Line 690 of lalr1.cc */
-#line 3132 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3165 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new UnionExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
break;
case 383:
/* Line 690 of lalr1.cc */
-#line 3136 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3169 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new UnionExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
}
@@ -6456,16 +6543,25 @@
case 384:
/* Line 690 of lalr1.cc */
-#line 3142 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3173 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.expr) = new UnionExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
}
break;
case 385:
/* Line 690 of lalr1.cc */
-#line 3146 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3179 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 386:
+
+/* Line 690 of lalr1.cc */
+#line 3183 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new IntersectExceptExpr(
LOC((yyloc)), ParseConstants::op_intersect, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6473,10 +6569,10 @@
}
break;
- case 386:
+ case 387:
/* Line 690 of lalr1.cc */
-#line 3152 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3189 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new IntersectExceptExpr(
LOC((yyloc)), ParseConstants::op_except, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6484,19 +6580,19 @@
}
break;
- case 387:
-
-/* Line 690 of lalr1.cc */
-#line 3160 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 388:
/* Line 690 of lalr1.cc */
-#line 3164 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3197 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 389:
+
+/* Line 690 of lalr1.cc */
+#line 3201 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new InstanceofExpr(
LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (4)].node))
@@ -6504,19 +6600,19 @@
}
break;
- case 389:
-
-/* Line 690 of lalr1.cc */
-#line 3172 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 390:
/* Line 690 of lalr1.cc */
-#line 3176 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3209 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 391:
+
+/* Line 690 of lalr1.cc */
+#line 3213 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new TreatExpr(
LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (4)].node))
@@ -6524,19 +6620,19 @@
}
break;
- case 391:
-
-/* Line 690 of lalr1.cc */
-#line 3184 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 392:
/* Line 690 of lalr1.cc */
-#line 3188 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3221 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 393:
+
+/* Line 690 of lalr1.cc */
+#line 3225 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new CastableExpr(
LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SingleType*>((yysemantic_stack_[(4) - (4)].node))
@@ -6544,19 +6640,19 @@
}
break;
- case 393:
-
-/* Line 690 of lalr1.cc */
-#line 3196 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 394:
/* Line 690 of lalr1.cc */
-#line 3200 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3233 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 395:
+
+/* Line 690 of lalr1.cc */
+#line 3237 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new CastExpr(
LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SingleType*>((yysemantic_stack_[(4) - (4)].node))
@@ -6564,73 +6660,73 @@
}
break;
- case 395:
+ case 396:
/* Line 690 of lalr1.cc */
-#line 3208 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3245 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new SingleType(LOC((yyloc)), dynamic_cast<SimpleType*>((yysemantic_stack_[(1) - (1)].node)), false);
}
break;
- case 396:
+ case 397:
/* Line 690 of lalr1.cc */
-#line 3212 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3249 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new SingleType(LOC((yyloc)), dynamic_cast<SimpleType*>((yysemantic_stack_[(2) - (1)].node)), true);
}
break;
- case 397:
-
-/* Line 690 of lalr1.cc */
-#line 3218 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 398:
/* Line 690 of lalr1.cc */
-#line 3222 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3255 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 399:
+
+/* Line 690 of lalr1.cc */
+#line 3259 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new UnaryExpr( LOC((yyloc)), dynamic_cast<SignList*>((yysemantic_stack_[(2) - (1)].node)), (yysemantic_stack_[(2) - (2)].expr) );
}
break;
- case 399:
+ case 400:
/* Line 690 of lalr1.cc */
-#line 3228 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3265 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new SignList( LOC((yyloc)), true );
}
break;
- case 400:
+ case 401:
/* Line 690 of lalr1.cc */
-#line 3232 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3269 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new SignList( LOC((yyloc)), false );
}
break;
- case 401:
-
-/* Line 690 of lalr1.cc */
-#line 3236 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
- }
- break;
-
case 402:
/* Line 690 of lalr1.cc */
-#line 3240 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3273 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+ }
+ break;
+
+ case 403:
+
+/* Line 690 of lalr1.cc */
+#line 3277 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if ( SignList *sl = dynamic_cast<SignList*>((yysemantic_stack_[(2) - (1)].node)) )
sl->negate();
@@ -6638,19 +6734,10 @@
}
break;
- case 403:
-
-/* Line 690 of lalr1.cc */
-#line 3248 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
case 404:
/* Line 690 of lalr1.cc */
-#line 3252 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3285 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
@@ -6659,7 +6746,7 @@
case 405:
/* Line 690 of lalr1.cc */
-#line 3256 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3289 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
@@ -6668,106 +6755,115 @@
case 406:
/* Line 690 of lalr1.cc */
-#line 3262 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3293 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 407:
+
+/* Line 690 of lalr1.cc */
+#line 3299 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
break;
- case 407:
+ case 408:
/* Line 690 of lalr1.cc */
-#line 3267 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3304 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new SimpleMapExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
}
break;
- case 408:
+ case 409:
/* Line 690 of lalr1.cc */
-#line 3273 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3310 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_eq );
}
break;
- case 409:
+ case 410:
/* Line 690 of lalr1.cc */
-#line 3277 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3314 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_ne );
}
break;
- case 410:
+ case 411:
/* Line 690 of lalr1.cc */
-#line 3281 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3318 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_lt );
}
break;
- case 411:
+ case 412:
/* Line 690 of lalr1.cc */
-#line 3285 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3322 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_le );
}
break;
- case 412:
+ case 413:
/* Line 690 of lalr1.cc */
-#line 3289 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3326 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_gt );
}
break;
- case 413:
+ case 414:
/* Line 690 of lalr1.cc */
-#line 3293 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3330 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_ge );
}
break;
- case 414:
+ case 415:
/* Line 690 of lalr1.cc */
-#line 3299 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3336 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ValidateExpr( LOC((yyloc)), "strict", (yysemantic_stack_[(4) - (3)].expr) );
}
break;
- case 415:
+ case 416:
/* Line 690 of lalr1.cc */
-#line 3303 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3340 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ValidateExpr( LOC((yyloc)), "lax", (yysemantic_stack_[(5) - (4)].expr) );
}
break;
- case 416:
+ case 417:
/* Line 690 of lalr1.cc */
-#line 3307 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3344 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ValidateExpr( LOC((yyloc)), "strict", (yysemantic_stack_[(5) - (4)].expr) );
}
break;
- case 417:
+ case 418:
/* Line 690 of lalr1.cc */
-#line 3311 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3348 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ValidateExpr(
LOC((yyloc)), dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (3)].node))->get_name(), (yysemantic_stack_[(6) - (5)].expr)
@@ -6776,10 +6872,10 @@
}
break;
- case 418:
+ case 419:
/* Line 690 of lalr1.cc */
-#line 3320 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3357 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ExtensionExpr(
LOC((yyloc)), dynamic_cast<PragmaList*>((yysemantic_stack_[(3) - (1)].node)), NULL
@@ -6787,10 +6883,10 @@
}
break;
- case 419:
+ case 420:
/* Line 690 of lalr1.cc */
-#line 3326 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3363 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ExtensionExpr(
LOC((yyloc)), dynamic_cast<PragmaList*>((yysemantic_stack_[(4) - (1)].node)), (yysemantic_stack_[(4) - (3)].expr)
@@ -6798,10 +6894,10 @@
}
break;
- case 420:
+ case 421:
/* Line 690 of lalr1.cc */
-#line 3334 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3371 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
PragmaList *pl = new PragmaList( LOC((yyloc)) );
pl->push_back( dynamic_cast<Pragma*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -6809,10 +6905,10 @@
}
break;
- case 421:
+ case 422:
/* Line 690 of lalr1.cc */
-#line 3340 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3377 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if ( PragmaList *pl = dynamic_cast<PragmaList*>((yysemantic_stack_[(2) - (1)].node)) )
pl->push_back( dynamic_cast<Pragma*>((yysemantic_stack_[(2) - (2)].node)) );
@@ -6820,37 +6916,72 @@
}
break;
- case 422:
+ case 423:
/* Line 690 of lalr1.cc */
-#line 3348 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3385 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new Pragma( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
}
break;
- case 423:
+ case 424:
/* Line 690 of lalr1.cc */
-#line 3352 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3389 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new Pragma( LOC((yyloc)), new QName( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) ), "" );
}
break;
- case 424:
+ case 425:
/* Line 690 of lalr1.cc */
-#line 3356 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3393 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new Pragma( LOC((yyloc)), new QName( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)), true ), "" );
}
break;
- case 425:
-
-/* Line 690 of lalr1.cc */
-#line 3362 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ case 426:
+
+/* Line 690 of lalr1.cc */
+#line 3399 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new PathExpr(LOC((yyloc)), ParseConstants::path_leading_lone_slash, NULL);
+ }
+ break;
+
+ case 427:
+
+/* Line 690 of lalr1.cc */
+#line 3403 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ RelativePathExpr* rpe;
+ rpe = new RelativePathExpr(LOC((yyloc)), ParseConstants::st_slash, NULL, (yysemantic_stack_[(2) - (2)].expr), false);
+ (yyval.expr) = new PathExpr(LOC((yyloc)),
+ ParseConstants::path_leading_slash,
+ rpe);
+ }
+ break;
+
+ case 428:
+
+/* Line 690 of lalr1.cc */
+#line 3411 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ RelativePathExpr* rpe;
+ rpe = new RelativePathExpr(LOC((yyloc)), ParseConstants::st_slashslash, NULL, (yysemantic_stack_[(2) - (2)].expr), false);
+ (yyval.expr) = new PathExpr(LOC((yyloc)),
+ ParseConstants::path_leading_slashslash,
+ rpe);
+ }
+ break;
+
+ case 429:
+
+/* Line 690 of lalr1.cc */
+#line 3420 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
RelativePathExpr* rpe = dynamic_cast<RelativePathExpr*>((yysemantic_stack_[(1) - (1)].expr));
(yyval.expr) = (!rpe ?
@@ -6859,10 +6990,19 @@
}
break;
- case 426:
-
-/* Line 690 of lalr1.cc */
-#line 3371 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ case 430:
+
+/* Line 690 of lalr1.cc */
+#line 3429 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = NULL;
+ }
+ break;
+
+ case 431:
+
+/* Line 690 of lalr1.cc */
+#line 3435 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
AxisStep* as = dynamic_cast<AxisStep*>((yysemantic_stack_[(1) - (1)].expr));
(yyval.expr) = (as ?
@@ -6874,339 +7014,621 @@
}
break;
- case 427:
-
-/* Line 690 of lalr1.cc */
-#line 3383 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 428:
-
-/* Line 690 of lalr1.cc */
-#line 3389 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new NameTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
- }
- break;
-
- case 429:
-
-/* Line 690 of lalr1.cc */
-#line 3393 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new NameTest( LOC((yyloc)), dynamic_cast<Wildcard*>((yysemantic_stack_[(1) - (1)].node)) );
- }
- break;
-
- case 430:
-
-/* Line 690 of lalr1.cc */
-#line 3399 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new Wildcard(LOC((yyloc)), "", "", ParseConstants::wild_all, false);
- }
- break;
-
- case 431:
-
-/* Line 690 of lalr1.cc */
-#line 3403 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new Wildcard(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), "", ParseConstants::wild_elem, false);
- }
- break;
-
case 432:
/* Line 690 of lalr1.cc */
-#line 3407 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3445 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new Wildcard(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), "", ParseConstants::wild_elem, true);
+ (yyval.expr) = new RelativePathExpr(LOC((yyloc)), ParseConstants::st_slash, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr), false);
}
break;
case 433:
/* Line 690 of lalr1.cc */
-#line 3411 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3449 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new Wildcard(LOC((yyloc)), "", SYMTAB((yysemantic_stack_[(1) - (1)].sval)), ParseConstants::wild_prefix, false);
+ (yyval.expr) = new RelativePathExpr(LOC((yyloc)), ParseConstants::st_slashslash, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr), false);
}
break;
case 434:
/* Line 690 of lalr1.cc */
-#line 3417 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3455 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
break;
case 435:
/* Line 690 of lalr1.cc */
-#line 3421 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3459 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new FilterExpr(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].expr), dynamic_cast<PredicateList*>((yysemantic_stack_[(2) - (2)].node)));
- }
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
break;
case 436:
/* Line 690 of lalr1.cc */
-#line 3425 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3465 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new DynamicFunctionInvocation(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), false);
- }
+ (yyval.expr) = new AxisStep(
+ LOC((yyloc)), dynamic_cast<ForwardStep*>((yysemantic_stack_[(1) - (1)].node)), NULL
+ );
+ }
break;
case 437:
/* Line 690 of lalr1.cc */
-#line 3429 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3471 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new DynamicFunctionInvocation(LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<ArgList*>((yysemantic_stack_[(4) - (3)].node)), false);
- }
+ (yyval.expr) = new AxisStep(
+ LOC((yyloc)),
+ dynamic_cast<ForwardStep*>((yysemantic_stack_[(2) - (1)].node)),
+ dynamic_cast<PredicateList*>((yysemantic_stack_[(2) - (2)].node))
+ );
+ }
break;
case 438:
/* Line 690 of lalr1.cc */
-#line 3433 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3479 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- StringLiteral* sl = new StringLiteral( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
- (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), sl);
- }
+ (yyval.expr) = new AxisStep(
+ LOC((yyloc)), dynamic_cast<ReverseStep*>((yysemantic_stack_[(1) - (1)].node)), NULL
+ );
+ }
break;
case 439:
/* Line 690 of lalr1.cc */
-#line 3438 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3485 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
- }
+ (yyval.expr) = new AxisStep(
+ LOC((yyloc)),
+ dynamic_cast<ReverseStep*>((yysemantic_stack_[(2) - (1)].node)),
+ dynamic_cast<PredicateList*>((yysemantic_stack_[(2) - (2)].node))
+ );
+ }
break;
case 440:
/* Line 690 of lalr1.cc */
-#line 3442 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3495 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
- }
+ (yyval.node) = new ForwardStep(
+ LOC((yyloc)), dynamic_cast<ForwardAxis*>((yysemantic_stack_[(2) - (1)].node)), (yysemantic_stack_[(2) - (2)].node)
+ );
+ }
break;
case 441:
/* Line 690 of lalr1.cc */
-#line 3446 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3501 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
- }
+ (yyval.node) = new ForwardStep(
+ LOC((yyloc)), dynamic_cast<AbbrevForwardStep*>((yysemantic_stack_[(1) - (1)].node))
+ );
+ }
break;
case 442:
/* Line 690 of lalr1.cc */
-#line 3452 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3509 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- PredicateList *pl = new PredicateList( LOC((yyloc)) );
- pl->push_back( dynamic_cast<exprnode*>((yysemantic_stack_[(1) - (1)].expr)) );
- (yyval.node) = pl;
+ (yyval.node) = new ForwardAxis( LOC((yyloc)), ParseConstants::axis_child );
}
break;
case 443:
/* Line 690 of lalr1.cc */
-#line 3458 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3513 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- if ( PredicateList *pl = dynamic_cast<PredicateList*>((yysemantic_stack_[(2) - (1)].node)) )
- pl->push_back( dynamic_cast<exprnode*>((yysemantic_stack_[(2) - (2)].expr)) );
- (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+ (yyval.node) = new ForwardAxis( LOC((yyloc)), ParseConstants::axis_descendant);
}
break;
case 444:
/* Line 690 of lalr1.cc */
-#line 3466 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3517 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
+ (yyval.node) = new ForwardAxis( LOC((yyloc)), ParseConstants::axis_attribute );
}
break;
case 445:
/* Line 690 of lalr1.cc */
-#line 3472 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3521 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new ForwardAxis( LOC((yyloc)), ParseConstants::axis_self );
}
break;
case 446:
/* Line 690 of lalr1.cc */
-#line 3476 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3525 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new ForwardAxis(
+ LOC((yyloc)), ParseConstants::axis_descendant_or_self
+ );
}
break;
case 447:
/* Line 690 of lalr1.cc */
-#line 3480 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3531 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new ForwardAxis(
+ LOC((yyloc)), ParseConstants::axis_following_sibling
+ );
}
break;
case 448:
/* Line 690 of lalr1.cc */
-#line 3484 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3537 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new ForwardAxis( LOC((yyloc)), ParseConstants::axis_following );
}
break;
case 449:
/* Line 690 of lalr1.cc */
-#line 3488 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3543 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new AbbrevForwardStep( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), false );
}
break;
case 450:
/* Line 690 of lalr1.cc */
-#line 3492 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3547 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new AbbrevForwardStep( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].node), true );
}
break;
case 451:
/* Line 690 of lalr1.cc */
-#line 3496 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3553 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new ReverseStep( LOC((yyloc)), dynamic_cast<ReverseAxis*>((yysemantic_stack_[(2) - (1)].node)), (yysemantic_stack_[(2) - (2)].node) );
}
break;
case 452:
/* Line 690 of lalr1.cc */
-#line 3500 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3557 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ ReverseAxis *ra = new ReverseAxis(
+ LOC((yyloc)), ParseConstants::axis_parent
+ );
+ (yyval.node) = new ReverseStep( LOC((yyloc)), ra, NULL );
}
break;
case 453:
/* Line 690 of lalr1.cc */
-#line 3504 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3566 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new ReverseAxis( LOC((yyloc)), ParseConstants::axis_parent );
}
break;
case 454:
/* Line 690 of lalr1.cc */
-#line 3508 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3570 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new ReverseAxis( LOC((yyloc)), ParseConstants::axis_ancestor );
}
break;
case 455:
/* Line 690 of lalr1.cc */
-#line 3512 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3574 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new ReverseAxis(
+ LOC((yyloc)), ParseConstants::axis_preceding_sibling
+ );
}
break;
case 456:
/* Line 690 of lalr1.cc */
-#line 3516 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3580 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new ReverseAxis( LOC((yyloc)), ParseConstants::axis_preceding );
}
break;
case 457:
/* Line 690 of lalr1.cc */
-#line 3520 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3584 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new ReverseAxis(
+ LOC((yyloc)), ParseConstants::axis_ancestor_or_self
+ );
}
break;
case 458:
/* Line 690 of lalr1.cc */
-#line 3524 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3592 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
case 459:
/* Line 690 of lalr1.cc */
-#line 3530 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3596 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
case 460:
/* Line 690 of lalr1.cc */
-#line 3534 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3602 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new NameTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
}
break;
case 461:
/* Line 690 of lalr1.cc */
-#line 3538 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3606 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ (yyval.node) = new NameTest( LOC((yyloc)), dynamic_cast<Wildcard*>((yysemantic_stack_[(1) - (1)].node)) );
}
break;
case 462:
/* Line 690 of lalr1.cc */
-#line 3542 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
+#line 3612 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new Wildcard(LOC((yyloc)), "", "", ParseConstants::wild_all, false);
+ }
+ break;
+
+ case 463:
+
+/* Line 690 of lalr1.cc */
+#line 3616 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new Wildcard(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), "", ParseConstants::wild_elem, false);
+ }
+ break;
+
+ case 464:
+
+/* Line 690 of lalr1.cc */
+#line 3620 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new Wildcard(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), "", ParseConstants::wild_elem, true);
+ }
+ break;
+
+ case 465:
+
+/* Line 690 of lalr1.cc */
+#line 3624 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new Wildcard(LOC((yyloc)), "", SYMTAB((yysemantic_stack_[(1) - (1)].sval)), ParseConstants::wild_prefix, false);
+ }
+ break;
+
+ case 466:
+
+/* Line 690 of lalr1.cc */
+#line 3630 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 467:
+
+/* Line 690 of lalr1.cc */
+#line 3634 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new FilterExpr(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].expr), dynamic_cast<PredicateList*>((yysemantic_stack_[(2) - (2)].node)));
+ }
+ break;
+
+ case 468:
+
+/* Line 690 of lalr1.cc */
+#line 3638 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new DynamicFunctionInvocation(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), false);
+ }
+ break;
+
+ case 469:
+
+/* Line 690 of lalr1.cc */
+#line 3642 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new DynamicFunctionInvocation(LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<ArgList*>((yysemantic_stack_[(4) - (3)].node)), false);
+ }
+ break;
+
+ case 470:
+
+/* Line 690 of lalr1.cc */
+#line 3647 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ ERROR_IF_QNAME_NOT_NCNAME((yysemantic_stack_[(3) - (3)].expr), (yylocation_stack_[(3) - (3)]));
+ StringLiteral* sl = new StringLiteral( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)) );
+ (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), sl);
+ }
+ break;
+
+ case 471:
+
+/* Line 690 of lalr1.cc */
+#line 3653 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), new ParenthesizedExpr( LOC((yyloc)), NULL));
+ }
+ break;
+
+ case 472:
+
+/* Line 690 of lalr1.cc */
+#line 3657 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(5) - (1)].expr), new ParenthesizedExpr( LOC((yyloc)), (yysemantic_stack_[(5) - (4)].expr) ));
+ }
+ break;
+
+ case 473:
+
+/* Line 690 of lalr1.cc */
+#line 3661 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
+ }
+ break;
+
+ case 474:
+
+/* Line 690 of lalr1.cc */
+#line 3665 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
+ }
+ break;
+
+ case 475:
+
+/* Line 690 of lalr1.cc */
+#line 3671 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ PredicateList *pl = new PredicateList( LOC((yyloc)) );
+ pl->push_back( dynamic_cast<exprnode*>((yysemantic_stack_[(1) - (1)].expr)) );
+ (yyval.node) = pl;
+ }
+ break;
+
+ case 476:
+
+/* Line 690 of lalr1.cc */
+#line 3677 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ if ( PredicateList *pl = dynamic_cast<PredicateList*>((yysemantic_stack_[(2) - (1)].node)) )
+ pl->push_back( dynamic_cast<exprnode*>((yysemantic_stack_[(2) - (2)].expr)) );
+ (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+ }
+ break;
+
+ case 477:
+
+/* Line 690 of lalr1.cc */
+#line 3685 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
+ }
+ break;
+
+ case 478:
+
+/* Line 690 of lalr1.cc */
+#line 3691 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 479:
+
+/* Line 690 of lalr1.cc */
+#line 3695 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 480:
+
+/* Line 690 of lalr1.cc */
+#line 3699 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 481:
+
+/* Line 690 of lalr1.cc */
+#line 3703 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 482:
+
+/* Line 690 of lalr1.cc */
+#line 3707 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 483:
+
+/* Line 690 of lalr1.cc */
+#line 3711 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 484:
+
+/* Line 690 of lalr1.cc */
+#line 3715 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 485:
+
+/* Line 690 of lalr1.cc */
+#line 3719 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 486:
+
+/* Line 690 of lalr1.cc */
+#line 3723 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 487:
+
+/* Line 690 of lalr1.cc */
+#line 3727 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 488:
+
+/* Line 690 of lalr1.cc */
+#line 3731 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 489:
+
+/* Line 690 of lalr1.cc */
+#line 3735 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 490:
+
+/* Line 690 of lalr1.cc */
+#line 3739 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 491:
+
+/* Line 690 of lalr1.cc */
+#line 3743 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 492:
+
+/* Line 690 of lalr1.cc */
+#line 3749 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 493:
+
+/* Line 690 of lalr1.cc */
+#line 3753 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 494:
+
+/* Line 690 of lalr1.cc */
+#line 3757 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ driver.addCommonLanguageWarning((yylocation_stack_[(1) - (1)]), ZED(ZWST0009_TRUE_FALSE_NULL_KEYWORDS));
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 495:
+
+/* Line 690 of lalr1.cc */
+#line 3762 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ driver.addCommonLanguageWarning((yylocation_stack_[(1) - (1)]), ZED(ZWST0009_TRUE_FALSE_NULL_KEYWORDS));
(yyval.expr) = new NullLiteral(LOC((yyloc)));
}
break;
- case 463:
+ case 496:
/* Line 690 of lalr1.cc */
-#line 3548 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3769 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = NumericLiteral::new_literal(
LOC((yyloc)), ParseConstants::num_decimal, *(yysemantic_stack_[(1) - (1)].decval)
@@ -7215,10 +7637,10 @@
}
break;
- case 464:
+ case 497:
/* Line 690 of lalr1.cc */
-#line 3555 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3776 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = NumericLiteral::new_literal(
LOC((yyloc)), ParseConstants::num_integer, *(yysemantic_stack_[(1) - (1)].ival)
@@ -7227,10 +7649,10 @@
}
break;
- case 465:
+ case 498:
/* Line 690 of lalr1.cc */
-#line 3562 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3783 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = NumericLiteral::new_literal(
LOC((yyloc)), ParseConstants::num_double, *(yysemantic_stack_[(1) - (1)].dval)
@@ -7239,100 +7661,100 @@
}
break;
- case 466:
+ case 499:
/* Line 690 of lalr1.cc */
-#line 3571 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new BooleanLiteral(LOC((yyloc)), true);
}
break;
- case 467:
+ case 500:
/* Line 690 of lalr1.cc */
-#line 3575 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new BooleanLiteral(LOC((yyloc)), false);
}
break;
- case 468:
+ case 501:
/* Line 690 of lalr1.cc */
-#line 3581 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new VarRef(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)));
}
break;
- case 469:
+ case 502:
/* Line 690 of lalr1.cc */
-#line 3587 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ParenthesizedExpr( LOC((yyloc)), NULL);
}
break;
- case 470:
+ case 503:
/* Line 690 of lalr1.cc */
-#line 3591 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ParenthesizedExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr) );
}
break;
- case 471:
-
-/* Line 690 of lalr1.cc */
-#line 3597 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new ContextItemExpr( LOC((yyloc)) );
- }
- break;
-
- case 472:
-
-/* Line 690 of lalr1.cc */
-#line 3601 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new ContextItemExpr( LOC((yyloc)) );
- }
- break;
-
- case 473:
-
-/* Line 690 of lalr1.cc */
-#line 3607 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ case 504:
+
+/* Line 690 of lalr1.cc */
+#line 3818 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new ContextItemExpr( LOC((yyloc)) );
+ }
+ break;
+
+ case 505:
+
+/* Line 690 of lalr1.cc */
+#line 3822 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new ContextItemExpr( LOC((yyloc)) );
+ }
+ break;
+
+ case 506:
+
+/* Line 690 of lalr1.cc */
+#line 3828 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new OrderedExpr( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
}
break;
- case 474:
+ case 507:
/* Line 690 of lalr1.cc */
-#line 3613 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3834 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new UnorderedExpr( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
}
break;
- case 475:
+ case 508:
/* Line 690 of lalr1.cc */
-#line 3619 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3840 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new FunctionCall( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), NULL );
}
break;
- case 476:
+ case 509:
/* Line 690 of lalr1.cc */
-#line 3623 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3844 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
ArgList* argList = dynamic_cast<ArgList*>((yysemantic_stack_[(4) - (3)].node));
if (argList->has_placeholder())
@@ -7350,10 +7772,10 @@
}
break;
- case 477:
+ case 510:
/* Line 690 of lalr1.cc */
-#line 3641 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3862 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
ArgList *al = new ArgList( LOC((yyloc)) );
al->push_back(new ArgumentPlaceholder(LOC((yyloc))));
@@ -7361,10 +7783,10 @@
}
break;
- case 478:
+ case 511:
/* Line 690 of lalr1.cc */
-#line 3647 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3868 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if ( ArgList *al = dynamic_cast<ArgList*>((yysemantic_stack_[(3) - (1)].node)) )
al->push_back( new ArgumentPlaceholder(LOC((yyloc))) );
@@ -7372,10 +7794,10 @@
}
break;
- case 479:
+ case 512:
/* Line 690 of lalr1.cc */
-#line 3653 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3874 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
ArgList *al = new ArgList( LOC((yyloc)) );
al->push_back( (yysemantic_stack_[(1) - (1)].expr) );
@@ -7383,10 +7805,10 @@
}
break;
- case 480:
+ case 513:
/* Line 690 of lalr1.cc */
-#line 3659 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3880 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if ( ArgList *al = dynamic_cast<ArgList*>((yysemantic_stack_[(3) - (1)].node)) )
al->push_back( (yysemantic_stack_[(3) - (3)].expr) );
@@ -7394,37 +7816,37 @@
}
break;
- case 481:
-
-/* Line 690 of lalr1.cc */
-#line 3667 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 482:
-
-/* Line 690 of lalr1.cc */
-#line 3671 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 483:
-
-/* Line 690 of lalr1.cc */
-#line 3677 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ case 514:
+
+/* Line 690 of lalr1.cc */
+#line 3888 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 515:
+
+/* Line 690 of lalr1.cc */
+#line 3892 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 516:
+
+/* Line 690 of lalr1.cc */
+#line 3898 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new LiteralFunctionItem(LOC ((yyloc)), dynamic_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), (yysemantic_stack_[(3) - (3)].ival));
}
break;
- case 484:
+ case 517:
/* Line 690 of lalr1.cc */
-#line 3683 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3904 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new InlineFunction(LOC((yyloc)),
&*(yysemantic_stack_[(3) - (2)].fnsig)->theParams,
@@ -7434,55 +7856,55 @@
}
break;
- case 485:
-
-/* Line 690 of lalr1.cc */
-#line 3693 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 486:
-
-/* Line 690 of lalr1.cc */
-#line 3697 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 487:
-
-/* Line 690 of lalr1.cc */
-#line 3703 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 488:
-
-/* Line 690 of lalr1.cc */
-#line 3707 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 489:
-
-/* Line 690 of lalr1.cc */
-#line 3711 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 490:
-
-/* Line 690 of lalr1.cc */
-#line 3717 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ case 518:
+
+/* Line 690 of lalr1.cc */
+#line 3914 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 519:
+
+/* Line 690 of lalr1.cc */
+#line 3918 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 520:
+
+/* Line 690 of lalr1.cc */
+#line 3924 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 521:
+
+/* Line 690 of lalr1.cc */
+#line 3928 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 522:
+
+/* Line 690 of lalr1.cc */
+#line 3932 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
+ break;
+
+ case 523:
+
+/* Line 690 of lalr1.cc */
+#line 3938 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new DirElemConstructor(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -7492,10 +7914,10 @@
}
break;
- case 491:
+ case 524:
/* Line 690 of lalr1.cc */
-#line 3725 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3946 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if (static_cast<QName*>((yysemantic_stack_[(8) - (2)].expr))->get_qname() != static_cast<QName*>((yysemantic_stack_[(8) - (6)].expr))->get_qname())
{
@@ -7513,10 +7935,10 @@
}
break;
- case 492:
+ case 525:
/* Line 690 of lalr1.cc */
-#line 3741 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3962 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new DirElemConstructor(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -7526,10 +7948,10 @@
}
break;
- case 493:
+ case 526:
/* Line 690 of lalr1.cc */
-#line 3749 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3970 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if (static_cast<QName*>((yysemantic_stack_[(9) - (2)].expr))->get_qname() != static_cast<QName*>((yysemantic_stack_[(9) - (7)].expr))->get_qname())
{
@@ -7547,10 +7969,10 @@
}
break;
- case 494:
+ case 527:
/* Line 690 of lalr1.cc */
-#line 3767 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 3988 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if (static_cast<QName*>((yysemantic_stack_[(9) - (2)].expr))->get_qname() != static_cast<QName*>((yysemantic_stack_[(9) - (7)].expr))->get_qname())
{
@@ -7568,10 +7990,10 @@
}
break;
- case 495:
+ case 528:
/* Line 690 of lalr1.cc */
-#line 3785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4006 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if (static_cast<QName*>((yysemantic_stack_[(10) - (2)].expr))->get_qname() != static_cast<QName*>((yysemantic_stack_[(10) - (8)].expr))->get_qname())
{
@@ -7589,10 +8011,10 @@
}
break;
- case 496:
+ case 529:
/* Line 690 of lalr1.cc */
-#line 3803 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4024 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
DirElemContentList *decl = new DirElemContentList( LOC((yyloc)) );
decl->push_back( dynamic_cast<DirElemContent*>((yysemantic_stack_[(1) - (1)].expr)) );
@@ -7600,10 +8022,10 @@
}
break;
- case 497:
+ case 530:
/* Line 690 of lalr1.cc */
-#line 3809 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4030 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
DirElemContentList *decl = dynamic_cast<DirElemContentList*>((yysemantic_stack_[(2) - (1)].node));
if ( decl )
@@ -7612,10 +8034,10 @@
}
break;
- case 498:
+ case 531:
/* Line 690 of lalr1.cc */
-#line 3818 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4039 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
DirAttributeList *dal = new DirAttributeList( LOC((yyloc)) );
dal->push_back( dynamic_cast<DirAttr*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -7623,10 +8045,10 @@
}
break;
- case 499:
+ case 532:
/* Line 690 of lalr1.cc */
-#line 3824 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4045 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
DirAttributeList *dal = dynamic_cast<DirAttributeList*>((yysemantic_stack_[(2) - (1)].node));
if ( dal )
@@ -7635,10 +8057,10 @@
}
break;
- case 500:
+ case 533:
/* Line 690 of lalr1.cc */
-#line 3833 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4054 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new DirAttr(LOC((yyloc)),
static_cast<QName*>((yysemantic_stack_[(6) - (2)].expr)),
@@ -7646,48 +8068,48 @@
}
break;
- case 503:
+ case 536:
/* Line 690 of lalr1.cc */
-#line 3843 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4064 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new DirAttributeValue(LOC((yyloc)),
dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(3) - (2)].node)));
}
break;
- case 504:
+ case 537:
/* Line 690 of lalr1.cc */
-#line 3848 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4069 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new DirAttributeValue( LOC((yyloc)),
dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(3) - (2)].node)));
}
break;
- case 505:
+ case 538:
/* Line 690 of lalr1.cc */
-#line 3854 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4075 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new QuoteAttrContentList( LOC((yyloc)) );
}
break;
- case 506:
+ case 539:
/* Line 690 of lalr1.cc */
-#line 3858 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4079 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
- case 507:
+ case 540:
/* Line 690 of lalr1.cc */
-#line 3864 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4085 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
QuoteAttrContentList *qacl = new QuoteAttrContentList( LOC((yyloc)) );
qacl->push_back( new QuoteAttrValueContent( LOC((yyloc)), "\"" ) );
@@ -7695,10 +8117,10 @@
}
break;
- case 508:
+ case 541:
/* Line 690 of lalr1.cc */
-#line 3870 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4091 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
QuoteAttrContentList *qacl = new QuoteAttrContentList( LOC((yyloc)) );
qacl->push_back( dynamic_cast<QuoteAttrValueContent*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -7706,10 +8128,10 @@
}
break;
- case 509:
+ case 542:
/* Line 690 of lalr1.cc */
-#line 3876 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4097 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
QuoteAttrContentList* qacl = dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
if ( qacl )
@@ -7718,10 +8140,10 @@
}
break;
- case 510:
+ case 543:
/* Line 690 of lalr1.cc */
-#line 3883 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4104 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
QuoteAttrContentList *qacl = dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
if ( qacl )
@@ -7730,28 +8152,28 @@
}
break;
- case 511:
+ case 544:
/* Line 690 of lalr1.cc */
-#line 3891 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4112 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new AposAttrContentList( LOC((yyloc)) );
}
break;
- case 512:
+ case 545:
/* Line 690 of lalr1.cc */
-#line 3895 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4116 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
- case 513:
+ case 546:
/* Line 690 of lalr1.cc */
-#line 3901 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4122 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
AposAttrContentList *aacl = new AposAttrContentList( LOC((yyloc)) );
aacl->push_back( new AposAttrValueContent( LOC((yyloc)),"'") );
@@ -7759,10 +8181,10 @@
}
break;
- case 514:
+ case 547:
/* Line 690 of lalr1.cc */
-#line 3907 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4128 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
AposAttrContentList *aacl = new AposAttrContentList( LOC((yyloc)) );
aacl->push_back( dynamic_cast<AposAttrValueContent*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -7770,10 +8192,10 @@
}
break;
- case 515:
+ case 548:
/* Line 690 of lalr1.cc */
-#line 3913 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4134 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
AposAttrContentList *aacl = dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
if (aacl)
@@ -7782,10 +8204,10 @@
}
break;
- case 516:
+ case 549:
/* Line 690 of lalr1.cc */
-#line 3920 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4141 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
AposAttrContentList *aacl = dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
if ( aacl )
@@ -7794,874 +8216,557 @@
}
break;
- case 517:
+ case 550:
/* Line 690 of lalr1.cc */
-#line 3929 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4150 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new QuoteAttrValueContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
}
break;
- case 518:
+ case 551:
/* Line 690 of lalr1.cc */
-#line 3933 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4154 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new QuoteAttrValueContent(LOC((yyloc)), dynamic_cast<CommonContent*>((yysemantic_stack_[(1) - (1)].expr)));
}
break;
- case 519:
+ case 552:
/* Line 690 of lalr1.cc */
-#line 3939 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4160 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new AposAttrValueContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
}
break;
- case 520:
+ case 553:
/* Line 690 of lalr1.cc */
-#line 3943 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4164 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new AposAttrValueContent(LOC((yyloc)), dynamic_cast<CommonContent*>((yysemantic_stack_[(1) - (1)].expr)));
}
break;
- case 521:
+ case 554:
/* Line 690 of lalr1.cc */
-#line 3949 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4170 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new DirElemContent( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr) );
}
break;
- case 522:
+ case 555:
/* Line 690 of lalr1.cc */
-#line 3953 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4174 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new DirElemContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
}
break;
- case 523:
+ case 556:
/* Line 690 of lalr1.cc */
-#line 3957 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4178 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
rchandle<CDataSection> cdata_h = dynamic_cast<CDataSection*>((yysemantic_stack_[(1) - (1)].expr));
(yyval.expr) = new DirElemContent( LOC((yyloc)), cdata_h );
}
break;
- case 524:
+ case 557:
/* Line 690 of lalr1.cc */
-#line 3962 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4183 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
rchandle<CommonContent> cont_h = dynamic_cast<CommonContent*>((yysemantic_stack_[(1) - (1)].expr));
(yyval.expr) = new DirElemContent( LOC((yyloc)), cont_h );
}
break;
- case 525:
+ case 558:
/* Line 690 of lalr1.cc */
-#line 3969 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4190 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new CommonContent(LOC((yyloc)), ParseConstants::cont_charref, SYMTAB((yysemantic_stack_[(1) - (1)].sval)));
}
break;
- case 526:
+ case 559:
/* Line 690 of lalr1.cc */
-#line 3973 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4194 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new CommonContent(LOC((yyloc)), ParseConstants::cont_escape_lbrace);
}
break;
- case 527:
+ case 560:
/* Line 690 of lalr1.cc */
-#line 3977 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4198 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new CommonContent(LOC((yyloc)), ParseConstants::cont_escape_rbrace);
}
break;
- case 528:
+ case 561:
/* Line 690 of lalr1.cc */
-#line 3981 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4202 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new CommonContent(LOC((yyloc)), new EnclosedExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr)));
}
break;
- case 529:
+ case 562:
/* Line 690 of lalr1.cc */
-#line 3987 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4208 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new DirCommentConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
}
break;
- case 530:
+ case 563:
/* Line 690 of lalr1.cc */
-#line 3992 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4213 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new DirCommentConstructor( LOC((yyloc)), "" );
}
break;
- case 531:
-
-/* Line 690 of lalr1.cc */
-#line 3998 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new DirPIConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
- }
- break;
-
- case 532:
-
-/* Line 690 of lalr1.cc */
-#line 4003 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new DirPIConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
- }
- break;
-
- case 533:
-
-/* Line 690 of lalr1.cc */
-#line 4009 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CDataSection( LOC((yyloc)),SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
- }
- break;
-
- case 534:
-
-/* Line 690 of lalr1.cc */
-#line 4015 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 535:
-
-/* Line 690 of lalr1.cc */
-#line 4020 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 536:
-
-/* Line 690 of lalr1.cc */
-#line 4025 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 537:
-
-/* Line 690 of lalr1.cc */
-#line 4030 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 538:
-
-/* Line 690 of lalr1.cc */
-#line 4035 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 539:
-
-/* Line 690 of lalr1.cc */
-#line 4040 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
- }
- break;
-
- case 541:
-
-/* Line 690 of lalr1.cc */
-#line 4048 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CompDocConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
- }
- break;
-
- case 542:
-
-/* Line 690 of lalr1.cc */
-#line 4054 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CompElemConstructor(LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval))), (yysemantic_stack_[(3) - (2)].expr));
- }
- break;
-
- case 543:
-
-/* Line 690 of lalr1.cc */
-#line 4058 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CompElemConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
- }
- break;
-
- case 544:
-
-/* Line 690 of lalr1.cc */
-#line 4064 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CompAttrConstructor( LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval))), (yysemantic_stack_[(3) - (2)].expr) );
- }
- break;
-
- case 545:
-
-/* Line 690 of lalr1.cc */
-#line 4068 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CompAttrConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
- }
- break;
-
- case 546:
-
-/* Line 690 of lalr1.cc */
-#line 4074 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CompTextConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
- }
- break;
-
- case 547:
-
-/* Line 690 of lalr1.cc */
-#line 4080 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CompCommentConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
- }
- break;
-
- case 548:
-
-/* Line 690 of lalr1.cc */
-#line 4086 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CompPIConstructor(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval)), (yysemantic_stack_[(3) - (2)].expr));
- }
- break;
-
- case 549:
-
-/* Line 690 of lalr1.cc */
-#line 4090 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CompPIConstructor(LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr));
- }
- break;
-
- case 550:
-
-/* Line 690 of lalr1.cc */
-#line 4096 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CompNamespaceConstructor(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval)), (yysemantic_stack_[(3) - (2)].expr));
- }
- break;
-
- case 551:
-
-/* Line 690 of lalr1.cc */
-#line 4100 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.expr) = new CompNamespaceConstructor(LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr));
- }
- break;
-
- case 552:
-
-/* Line 690 of lalr1.cc */
-#line 4106 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
- }
- break;
-
- case 553:
-
-/* Line 690 of lalr1.cc */
-#line 4112 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new SequenceType( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), NULL );
- }
- break;
-
- case 554:
-
-/* Line 690 of lalr1.cc */
-#line 4116 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new SequenceType(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].node), dynamic_cast<OccurrenceIndicator*>((yysemantic_stack_[(2) - (2)].node)));
- }
- break;
-
- case 555:
-
-/* Line 690 of lalr1.cc */
-#line 4120 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new SequenceType( LOC((yyloc)), NULL, NULL );
- }
- break;
-
- case 556:
-
-/* Line 690 of lalr1.cc */
-#line 4124 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new SequenceType( LOC((yyloc)), NULL, NULL );
- }
- break;
-
- case 557:
-
-/* Line 690 of lalr1.cc */
-#line 4130 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new OccurrenceIndicator(
- LOC((yyloc)), ParseConstants::occurs_optionally
- );
- }
- break;
-
- case 558:
-
-/* Line 690 of lalr1.cc */
-#line 4136 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new OccurrenceIndicator(
- LOC((yyloc)), ParseConstants::occurs_zero_or_more
- );
- }
- break;
-
- case 559:
-
-/* Line 690 of lalr1.cc */
-#line 4142 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new OccurrenceIndicator(
- LOC((yyloc)), ParseConstants::occurs_one_or_more
- );
- }
- break;
-
- case 560:
-
-/* Line 690 of lalr1.cc */
-#line 4150 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 561:
-
-/* Line 690 of lalr1.cc */
-#line 4154 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 562:
-
-/* Line 690 of lalr1.cc */
-#line 4158 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new ItemType( LOC((yyloc)), true );
- }
- break;
-
- case 563:
-
-/* Line 690 of lalr1.cc */
-#line 4162 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new ItemType( LOC((yyloc)), true );
- }
- break;
-
case 564:
/* Line 690 of lalr1.cc */
-#line 4166 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4219 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new StructuredItemType(LOC((yyloc)));
- }
+ ERROR_IF_QNAME_NOT_NCNAME((yysemantic_stack_[(3) - (2)].expr), (yylocation_stack_[(3) - (2)]));
+ (yyval.expr) = new DirPIConstructor( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)) );
+ }
break;
case 565:
/* Line 690 of lalr1.cc */
-#line 4170 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4225 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new StructuredItemType(LOC((yyloc)));
- }
+ ERROR_IF_QNAME_NOT_NCNAME((yysemantic_stack_[(3) - (2)].expr), (yylocation_stack_[(3) - (2)]));
+ (yyval.expr) = new DirPIConstructor( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
+ }
break;
case 566:
/* Line 690 of lalr1.cc */
-#line 4174 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4232 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
+ (yyval.expr) = new CDataSection( LOC((yyloc)),SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
+ }
break;
case 567:
/* Line 690 of lalr1.cc */
-#line 4178 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4238 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
break;
case 568:
/* Line 690 of lalr1.cc */
-#line 4182 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4243 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
break;
case 569:
/* Line 690 of lalr1.cc */
-#line 4188 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4248 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- TypeList* aTypeList = new TypeList(LOC ((yyloc)));
- aTypeList->push_back(dynamic_cast<SequenceType *>((yysemantic_stack_[(1) - (1)].node)));
- (yyval.node) = aTypeList;
- }
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
break;
case 570:
/* Line 690 of lalr1.cc */
-#line 4194 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4253 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- TypeList* aTypeList = dynamic_cast<TypeList *>((yysemantic_stack_[(3) - (1)].node));
- aTypeList->push_back(dynamic_cast<SequenceType *>((yysemantic_stack_[(3) - (3)].node)));
- (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
- }
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+ }
break;
case 571:
/* Line 690 of lalr1.cc */
-#line 4202 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4258 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new GeneralizedAtomicType( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
break;
case 572:
/* Line 690 of lalr1.cc */
-#line 4208 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new SimpleType( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
- }
- break;
-
- case 573:
-
-/* Line 690 of lalr1.cc */
-#line 4214 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+#line 4263 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
}
break;
case 574:
/* Line 690 of lalr1.cc */
-#line 4218 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4271 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ (yyval.expr) = new CompDocConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
}
break;
case 575:
/* Line 690 of lalr1.cc */
-#line 4222 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4277 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ (yyval.expr) = new CompElemConstructor(LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval))), (yysemantic_stack_[(3) - (2)].expr));
}
break;
case 576:
/* Line 690 of lalr1.cc */
-#line 4226 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4281 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ (yyval.expr) = new CompElemConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
}
break;
case 577:
/* Line 690 of lalr1.cc */
-#line 4230 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4287 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ (yyval.expr) = new CompAttrConstructor( LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval))), (yysemantic_stack_[(3) - (2)].expr) );
}
break;
case 578:
/* Line 690 of lalr1.cc */
-#line 4234 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4291 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ (yyval.expr) = new CompAttrConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
}
break;
case 579:
/* Line 690 of lalr1.cc */
-#line 4238 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4297 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ (yyval.expr) = new CompTextConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
}
break;
case 580:
/* Line 690 of lalr1.cc */
-#line 4242 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4303 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ (yyval.expr) = new CompCommentConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
}
break;
case 581:
/* Line 690 of lalr1.cc */
-#line 4246 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4309 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ (yyval.expr) = new CompPIConstructor(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval)), (yysemantic_stack_[(3) - (2)].expr));
}
break;
case 582:
/* Line 690 of lalr1.cc */
-#line 4250 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4313 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ (yyval.expr) = new CompPIConstructor(LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr));
}
break;
case 583:
/* Line 690 of lalr1.cc */
-#line 4256 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4319 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new AnyKindTest( LOC((yyloc)) );
+ (yyval.expr) = new CompNamespaceConstructor(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval)), (yysemantic_stack_[(3) - (2)].expr));
}
break;
case 584:
/* Line 690 of lalr1.cc */
-#line 4262 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4323 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new DocumentTest(LOC((yyloc)));
+ (yyval.expr) = new CompNamespaceConstructor(LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr));
}
break;
case 585:
/* Line 690 of lalr1.cc */
-#line 4266 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4329 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new DocumentTest(LOC((yyloc)), dynamic_cast<ElementTest*>((yysemantic_stack_[(4) - (3)].node)));
+ (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
}
break;
case 586:
/* Line 690 of lalr1.cc */
-#line 4270 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4335 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new DocumentTest(LOC((yyloc)), dynamic_cast<SchemaElementTest*>((yysemantic_stack_[(4) - (3)].node)));
- }
+ (yyval.node) = new SequenceType( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), NULL );
+ }
break;
case 587:
/* Line 690 of lalr1.cc */
-#line 4276 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4339 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new NamespaceTest(LOC((yyloc)));
- }
+ (yyval.node) = new SequenceType(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].node), dynamic_cast<OccurrenceIndicator*>((yysemantic_stack_[(2) - (2)].node)));
+ }
break;
case 588:
/* Line 690 of lalr1.cc */
-#line 4281 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4343 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new TextTest(LOC((yyloc)));
- }
+ (yyval.node) = new SequenceType( LOC((yyloc)), NULL, NULL );
+ }
break;
case 589:
/* Line 690 of lalr1.cc */
-#line 4287 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4347 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new CommentTest(LOC((yyloc)));
- }
+ (yyval.node) = new SequenceType( LOC((yyloc)), NULL, NULL );
+ }
break;
case 590:
/* Line 690 of lalr1.cc */
-#line 4293 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4353 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new PITest( LOC((yyloc)), "" );
+ (yyval.node) = new OccurrenceIndicator(
+ LOC((yyloc)), ParseConstants::occurs_optionally
+ );
}
break;
case 591:
/* Line 690 of lalr1.cc */
-#line 4297 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4359 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new PITest( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)) );
+ (yyval.node) = new OccurrenceIndicator(
+ LOC((yyloc)), ParseConstants::occurs_zero_or_more
+ );
}
break;
case 592:
/* Line 690 of lalr1.cc */
-#line 4301 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4365 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new PITest( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)) );
+ (yyval.node) = new OccurrenceIndicator(
+ LOC((yyloc)), ParseConstants::occurs_one_or_more
+ );
}
break;
case 593:
/* Line 690 of lalr1.cc */
-#line 4307 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4373 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new AttributeTest( LOC((yyloc)), NULL, NULL );
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
case 594:
/* Line 690 of lalr1.cc */
-#line 4311 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4377 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new AttributeTest(
- LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), NULL
- );
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
case 595:
/* Line 690 of lalr1.cc */
-#line 4317 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4381 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new AttributeTest(
- LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)), dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node))
- );
+ (yyval.node) = new ItemType( LOC((yyloc)), true );
}
break;
case 596:
/* Line 690 of lalr1.cc */
-#line 4323 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4385 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new AttributeTest( LOC((yyloc)), NULL, NULL );
+ driver.addCommonLanguageWarning((yylocation_stack_[(1) - (1)]), ZED(ZWST0009_JSONIQ_TYPE_KEYWORDS));
+ (yyval.node) = new ItemType( LOC((yyloc)), true );
}
break;
case 597:
/* Line 690 of lalr1.cc */
-#line 4327 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4390 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new AttributeTest(
- LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node))
- );
+ (yyval.node) = new StructuredItemType(LOC((yyloc)));
}
break;
case 598:
/* Line 690 of lalr1.cc */
-#line 4335 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4394 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new SchemaAttributeTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)) );
+ driver.addCommonLanguageWarning((yylocation_stack_[(1) - (1)]), ZED(ZWST0009_JSONIQ_TYPE_KEYWORDS));
+ (yyval.node) = new StructuredItemType(LOC((yyloc)));
}
break;
case 599:
/* Line 690 of lalr1.cc */
-#line 4341 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4399 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new ElementTest( LOC((yyloc)), NULL, NULL, true );
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
case 600:
/* Line 690 of lalr1.cc */
-#line 4345 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4403 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new ElementTest(
- LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), NULL, true
- );
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
case 601:
/* Line 690 of lalr1.cc */
-#line 4351 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4407 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new ElementTest(
- LOC((yyloc)),
- static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)),
- dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)),
- false
- );
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
case 602:
/* Line 690 of lalr1.cc */
-#line 4360 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4413 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new ElementTest(
- LOC((yyloc)),
- static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)),
- dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)),
- true
- );
+ TypeList* aTypeList = new TypeList(LOC ((yyloc)));
+ aTypeList->push_back(dynamic_cast<SequenceType *>((yysemantic_stack_[(1) - (1)].node)));
+ (yyval.node) = aTypeList;
}
break;
case 603:
/* Line 690 of lalr1.cc */
-#line 4369 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4419 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new ElementTest(
- LOC((yyloc)), NULL, NULL, true
- );
+ TypeList* aTypeList = dynamic_cast<TypeList *>((yysemantic_stack_[(3) - (1)].node));
+ aTypeList->push_back(dynamic_cast<SequenceType *>((yysemantic_stack_[(3) - (3)].node)));
+ (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
}
break;
case 604:
/* Line 690 of lalr1.cc */
-#line 4375 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4427 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new ElementTest(
- LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)), false
- );
- }
+ (yyval.node) = new GeneralizedAtomicType( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
+ }
break;
case 605:
/* Line 690 of lalr1.cc */
-#line 4381 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4433 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new ElementTest(
- LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)), true
- );
- }
+ (yyval.node) = new SimpleType( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
+ }
break;
case 606:
/* Line 690 of lalr1.cc */
-#line 4389 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4439 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new SchemaElementTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)) );
- }
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
break;
case 607:
/* Line 690 of lalr1.cc */
-#line 4395 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4443 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new TypeName( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
- }
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
break;
case 608:
/* Line 690 of lalr1.cc */
-#line 4401 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4447 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new TypeName( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (1)].expr)), true );
- }
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
break;
case 609:
/* Line 690 of lalr1.cc */
-#line 4407 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4451 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new StringLiteral( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
- }
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
break;
case 610:
/* Line 690 of lalr1.cc */
-#line 4413 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4455 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
@@ -8670,7 +8775,7 @@
case 611:
/* Line 690 of lalr1.cc */
-#line 4417 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4459 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
@@ -8679,175 +8784,155 @@
case 612:
/* Line 690 of lalr1.cc */
-#line 4423 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4463 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new AnyFunctionTest(LOC((yyloc)));
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
case 613:
/* Line 690 of lalr1.cc */
-#line 4429 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4467 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new TypedFunctionTest(LOC ((yyloc)), dynamic_cast<SequenceType *>((yysemantic_stack_[(5) - (5)].node)));
- }
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
break;
case 614:
/* Line 690 of lalr1.cc */
-#line 4433 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4471 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new TypedFunctionTest(LOC ((yyloc)),
- dynamic_cast<TypeList *>((yysemantic_stack_[(6) - (3)].node)),
- dynamic_cast<SequenceType *>((yysemantic_stack_[(6) - (6)].node)));
- }
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
break;
case 615:
/* Line 690 of lalr1.cc */
-#line 4441 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4475 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = (yysemantic_stack_[(3) - (2)].node);
- }
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
break;
case 616:
/* Line 690 of lalr1.cc */
-#line 4447 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4481 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new RevalidationDecl(
- LOC((yyloc)), StaticContextConsts::strict_validation
- );
- }
+ (yyval.node) = new AnyKindTest( LOC((yyloc)) );
+ }
break;
case 617:
/* Line 690 of lalr1.cc */
-#line 4453 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4487 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new RevalidationDecl(
- LOC((yyloc)), StaticContextConsts::lax_validation
- );
- }
+ (yyval.expr) = NULL;
+ }
break;
case 618:
/* Line 690 of lalr1.cc */
-#line 4459 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4493 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.node) = new RevalidationDecl(
- LOC((yyloc)), StaticContextConsts::skip_validation
- );
- }
+ (yyval.node) = new DocumentTest(LOC((yyloc)));
+ }
break;
case 619:
/* Line 690 of lalr1.cc */
-#line 4467 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4497 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::INTO, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
- }
+ (yyval.node) = new DocumentTest(LOC((yyloc)), dynamic_cast<ElementTest*>((yysemantic_stack_[(4) - (3)].node)));
+ }
break;
case 620:
/* Line 690 of lalr1.cc */
-#line 4471 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4501 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new InsertExpr(
- LOC((yyloc)), store::UpdateConsts::AS_FIRST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
- );
- }
+ (yyval.node) = new DocumentTest(LOC((yyloc)), dynamic_cast<SchemaElementTest*>((yysemantic_stack_[(4) - (3)].node)));
+ }
break;
case 621:
/* Line 690 of lalr1.cc */
-#line 4477 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4507 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new InsertExpr(
- LOC((yyloc)), store::UpdateConsts::AS_LAST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
- );
- }
+ (yyval.node) = new NamespaceTest(LOC((yyloc)));
+ }
break;
case 622:
/* Line 690 of lalr1.cc */
-#line 4483 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4512 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::AFTER, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
- }
+ (yyval.node) = new TextTest(LOC((yyloc)));
+ }
break;
case 623:
/* Line 690 of lalr1.cc */
-#line 4487 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4518 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new InsertExpr(
- LOC ((yyloc)), store::UpdateConsts::BEFORE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
- );
- }
+ (yyval.node) = new CommentTest(LOC((yyloc)));
+ }
break;
case 624:
/* Line 690 of lalr1.cc */
-#line 4493 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4524 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::INTO, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
+ (yyval.node) = new PITest( LOC((yyloc)), "" );
}
break;
case 625:
/* Line 690 of lalr1.cc */
-#line 4497 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4528 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new InsertExpr(
- LOC((yyloc)), store::UpdateConsts::AS_FIRST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
- );
+ ERROR_IF_QNAME_NOT_NCNAME((yysemantic_stack_[(4) - (3)].expr), (yylocation_stack_[(4) - (3)]));
+ (yyval.node) = new PITest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)) );
}
break;
case 626:
/* Line 690 of lalr1.cc */
-#line 4503 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4533 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new InsertExpr(
- LOC((yyloc)), store::UpdateConsts::AS_LAST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
- );
+ (yyval.node) = new PITest( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)) );
}
break;
case 627:
/* Line 690 of lalr1.cc */
-#line 4509 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4539 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new InsertExpr(
- LOC ((yyloc)),
- store::UpdateConsts::AFTER, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
- );
+ (yyval.node) = new AttributeTest( LOC((yyloc)), NULL, NULL );
}
break;
case 628:
/* Line 690 of lalr1.cc */
-#line 4516 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4543 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new InsertExpr(
- LOC ((yyloc)), store::UpdateConsts::BEFORE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
+ (yyval.node) = new AttributeTest(
+ LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), NULL
);
}
break;
@@ -8855,25 +8940,376 @@
case 629:
/* Line 690 of lalr1.cc */
-#line 4524 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4549 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
+ (yyval.node) = new AttributeTest(
+ LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)), dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node))
+ );
}
break;
case 630:
/* Line 690 of lalr1.cc */
-#line 4529 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4555 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
+ (yyval.node) = new AttributeTest( LOC((yyloc)), NULL, NULL );
}
break;
case 631:
/* Line 690 of lalr1.cc */
-#line 4535 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4559 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new AttributeTest(
+ LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node))
+ );
+ }
+ break;
+
+ case 632:
+
+/* Line 690 of lalr1.cc */
+#line 4567 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new SchemaAttributeTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)) );
+ }
+ break;
+
+ case 633:
+
+/* Line 690 of lalr1.cc */
+#line 4573 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new ElementTest( LOC((yyloc)), NULL, NULL, true );
+ }
+ break;
+
+ case 634:
+
+/* Line 690 of lalr1.cc */
+#line 4577 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new ElementTest(
+ LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), NULL, true
+ );
+ }
+ break;
+
+ case 635:
+
+/* Line 690 of lalr1.cc */
+#line 4583 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new ElementTest(
+ LOC((yyloc)),
+ static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)),
+ dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)),
+ false
+ );
+ }
+ break;
+
+ case 636:
+
+/* Line 690 of lalr1.cc */
+#line 4592 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new ElementTest(
+ LOC((yyloc)),
+ static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)),
+ dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)),
+ true
+ );
+ }
+ break;
+
+ case 637:
+
+/* Line 690 of lalr1.cc */
+#line 4601 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new ElementTest(
+ LOC((yyloc)), NULL, NULL, true
+ );
+ }
+ break;
+
+ case 638:
+
+/* Line 690 of lalr1.cc */
+#line 4607 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new ElementTest(
+ LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)), false
+ );
+ }
+ break;
+
+ case 639:
+
+/* Line 690 of lalr1.cc */
+#line 4613 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new ElementTest(
+ LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)), true
+ );
+ }
+ break;
+
+ case 640:
+
+/* Line 690 of lalr1.cc */
+#line 4621 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new SchemaElementTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)) );
+ }
+ break;
+
+ case 641:
+
+/* Line 690 of lalr1.cc */
+#line 4627 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new TypeName( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
+ }
+ break;
+
+ case 642:
+
+/* Line 690 of lalr1.cc */
+#line 4633 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new TypeName( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (1)].expr)), true );
+ }
+ break;
+
+ case 643:
+
+/* Line 690 of lalr1.cc */
+#line 4639 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new StringLiteral( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
+ }
+ break;
+
+ case 644:
+
+/* Line 690 of lalr1.cc */
+#line 4645 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 645:
+
+/* Line 690 of lalr1.cc */
+#line 4649 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 646:
+
+/* Line 690 of lalr1.cc */
+#line 4655 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new AnyFunctionTest(LOC((yyloc)));
+ }
+ break;
+
+ case 647:
+
+/* Line 690 of lalr1.cc */
+#line 4661 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new TypedFunctionTest(LOC ((yyloc)), dynamic_cast<SequenceType *>((yysemantic_stack_[(5) - (5)].node)));
+ }
+ break;
+
+ case 648:
+
+/* Line 690 of lalr1.cc */
+#line 4665 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new TypedFunctionTest(LOC ((yyloc)),
+ dynamic_cast<TypeList *>((yysemantic_stack_[(6) - (3)].node)),
+ dynamic_cast<SequenceType *>((yysemantic_stack_[(6) - (6)].node)));
+ }
+ break;
+
+ case 649:
+
+/* Line 690 of lalr1.cc */
+#line 4673 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(3) - (2)].node);
+ }
+ break;
+
+ case 650:
+
+/* Line 690 of lalr1.cc */
+#line 4679 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new RevalidationDecl(
+ LOC((yyloc)), StaticContextConsts::strict_validation
+ );
+ }
+ break;
+
+ case 651:
+
+/* Line 690 of lalr1.cc */
+#line 4685 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new RevalidationDecl(
+ LOC((yyloc)), StaticContextConsts::lax_validation
+ );
+ }
+ break;
+
+ case 652:
+
+/* Line 690 of lalr1.cc */
+#line 4691 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new RevalidationDecl(
+ LOC((yyloc)), StaticContextConsts::skip_validation
+ );
+ }
+ break;
+
+ case 653:
+
+/* Line 690 of lalr1.cc */
+#line 4699 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::INTO, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
+ }
+ break;
+
+ case 654:
+
+/* Line 690 of lalr1.cc */
+#line 4703 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new InsertExpr(
+ LOC((yyloc)), store::UpdateConsts::AS_FIRST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
+ );
+ }
+ break;
+
+ case 655:
+
+/* Line 690 of lalr1.cc */
+#line 4709 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new InsertExpr(
+ LOC((yyloc)), store::UpdateConsts::AS_LAST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
+ );
+ }
+ break;
+
+ case 656:
+
+/* Line 690 of lalr1.cc */
+#line 4715 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::AFTER, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
+ }
+ break;
+
+ case 657:
+
+/* Line 690 of lalr1.cc */
+#line 4719 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new InsertExpr(
+ LOC ((yyloc)), store::UpdateConsts::BEFORE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
+ );
+ }
+ break;
+
+ case 658:
+
+/* Line 690 of lalr1.cc */
+#line 4725 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::INTO, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
+ }
+ break;
+
+ case 659:
+
+/* Line 690 of lalr1.cc */
+#line 4729 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new InsertExpr(
+ LOC((yyloc)), store::UpdateConsts::AS_FIRST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
+ );
+ }
+ break;
+
+ case 660:
+
+/* Line 690 of lalr1.cc */
+#line 4735 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new InsertExpr(
+ LOC((yyloc)), store::UpdateConsts::AS_LAST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
+ );
+ }
+ break;
+
+ case 661:
+
+/* Line 690 of lalr1.cc */
+#line 4741 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new InsertExpr(
+ LOC ((yyloc)),
+ store::UpdateConsts::AFTER, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
+ );
+ }
+ break;
+
+ case 662:
+
+/* Line 690 of lalr1.cc */
+#line 4748 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new InsertExpr(
+ LOC ((yyloc)), store::UpdateConsts::BEFORE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
+ );
+ }
+ break;
+
+ case 663:
+
+/* Line 690 of lalr1.cc */
+#line 4756 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
+ }
+ break;
+
+ case 664:
+
+/* Line 690 of lalr1.cc */
+#line 4761 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
+ }
+ break;
+
+ case 665:
+
+/* Line 690 of lalr1.cc */
+#line 4767 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ReplaceExpr(
LOC((yyloc)), store::UpdateConsts::NODE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
@@ -8881,10 +9317,10 @@
}
break;
- case 632:
+ case 666:
/* Line 690 of lalr1.cc */
-#line 4541 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4773 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new ReplaceExpr(
LOC((yyloc)), store::UpdateConsts::VALUE_OF_NODE, (yysemantic_stack_[(7) - (5)].expr), (yysemantic_stack_[(7) - (7)].expr)
@@ -8892,29 +9328,29 @@
}
break;
- case 633:
+ case 667:
/* Line 690 of lalr1.cc */
-#line 4549 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4781 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new RenameExpr( LOC ((yyloc)), (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
}
break;
- case 634:
+ case 668:
/* Line 690 of lalr1.cc */
-#line 4555 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CopyVarList *cvl = dynamic_cast<CopyVarList*>((yysemantic_stack_[(7) - (3)].expr));
(yyval.expr) = new TransformExpr( LOC((yyloc)), cvl, (yysemantic_stack_[(7) - (5)].expr), (yysemantic_stack_[(7) - (7)].expr) );
}
break;
- case 635:
+ case 669:
/* Line 690 of lalr1.cc */
-#line 4562 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CopyVarList* lList = new CopyVarList(LOC((yyloc)));
lList->push_back (dynamic_cast<VarBinding*> ((yysemantic_stack_[(1) - (1)].expr)));
@@ -8922,10 +9358,10 @@
}
break;
- case 636:
+ case 670:
/* Line 690 of lalr1.cc */
-#line 4568 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CopyVarList* lList = dynamic_cast<CopyVarList*>((yysemantic_stack_[(4) - (1)].expr));
VarBinding* lBinding = dynamic_cast<VarBinding*>((yysemantic_stack_[(4) - (4)].expr));
@@ -8934,28 +9370,28 @@
}
break;
- case 637:
+ case 671:
/* Line 690 of lalr1.cc */
-#line 4577 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4809 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new VarBinding(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), (yysemantic_stack_[(3) - (3)].expr));
}
break;
- case 638:
+ case 672:
/* Line 690 of lalr1.cc */
-#line 4583 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4815 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new TryExpr( LOC((yyloc)), (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
}
break;
- case 639:
+ case 673:
/* Line 690 of lalr1.cc */
-#line 4589 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4821 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CatchListExpr *cle = new CatchListExpr( LOC((yyloc)) );
cle->push_back( static_cast<CatchExpr*>((yysemantic_stack_[(1) - (1)].expr)) );
@@ -8963,10 +9399,10 @@
}
break;
- case 640:
+ case 674:
/* Line 690 of lalr1.cc */
-#line 4595 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4827 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CatchListExpr *cle = dynamic_cast<CatchListExpr*>((yysemantic_stack_[(2) - (1)].expr));
if ( cle )
@@ -8975,29 +9411,29 @@
}
break;
- case 641:
+ case 675:
/* Line 690 of lalr1.cc */
-#line 4604 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4836 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new CatchExpr(LOC((yyloc)), *(yysemantic_stack_[(3) - (2)].name_test_list), (yysemantic_stack_[(3) - (3)].expr));
delete (yysemantic_stack_[(3) - (2)].name_test_list);
}
break;
- case 642:
+ case 676:
/* Line 690 of lalr1.cc */
-#line 4611 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4843 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
}
break;
- case 643:
+ case 677:
/* Line 690 of lalr1.cc */
-#line 4617 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4849 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CatchExpr::NameTestList *ntl = new CatchExpr::NameTestList;
ntl->push_back( static_cast<NameTest*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -9005,10 +9441,10 @@
}
break;
- case 644:
+ case 678:
/* Line 690 of lalr1.cc */
-#line 4623 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4855 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
CatchExpr::NameTestList *ntl =
static_cast<CatchExpr::NameTestList*>((yysemantic_stack_[(3) - (1)].name_test_list));
@@ -9017,121 +9453,121 @@
}
break;
- case 645:
+ case 679:
/* Line 690 of lalr1.cc */
-#line 4632 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4864 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTSelection( LOC((yyloc)), (yysemantic_stack_[(2) - (1)].node), (yysemantic_stack_[(2) - (2)].pos_filter_list) );
delete (yysemantic_stack_[(2) - (2)].pos_filter_list);
}
break;
- case 646:
+ case 680:
/* Line 690 of lalr1.cc */
-#line 4639 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4871 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.pos_filter_list) = NULL;
}
break;
- case 647:
+ case 681:
/* Line 690 of lalr1.cc */
-#line 4643 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4875 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.pos_filter_list) = (yysemantic_stack_[(1) - (1)].pos_filter_list);
}
break;
- case 648:
+ case 682:
/* Line 690 of lalr1.cc */
-#line 4649 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4881 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.pos_filter_list) = new FTSelection::pos_filter_list_t;
(yyval.pos_filter_list)->push_back( dynamic_cast<FTPosFilter*>((yysemantic_stack_[(1) - (1)].node)) );
}
break;
- case 649:
+ case 683:
/* Line 690 of lalr1.cc */
-#line 4654 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4886 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yysemantic_stack_[(2) - (1)].pos_filter_list)->push_back( dynamic_cast<FTPosFilter*>((yysemantic_stack_[(2) - (2)].node)) );
(yyval.pos_filter_list) = (yysemantic_stack_[(2) - (1)].pos_filter_list);
}
break;
- case 650:
+ case 684:
/* Line 690 of lalr1.cc */
-#line 4661 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4893 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
- case 651:
+ case 685:
/* Line 690 of lalr1.cc */
-#line 4665 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4897 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTOr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].node), (yysemantic_stack_[(3) - (3)].node) );
}
break;
- case 652:
+ case 686:
/* Line 690 of lalr1.cc */
-#line 4671 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4903 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
- case 653:
+ case 687:
/* Line 690 of lalr1.cc */
-#line 4675 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4907 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTAnd( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].node), (yysemantic_stack_[(3) - (3)].node) );
}
break;
- case 654:
+ case 688:
/* Line 690 of lalr1.cc */
-#line 4681 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4913 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
- case 655:
+ case 689:
/* Line 690 of lalr1.cc */
-#line 4685 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4917 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTMildNot( LOC((yyloc)), (yysemantic_stack_[(4) - (1)].node), (yysemantic_stack_[(4) - (4)].node) );
}
break;
- case 656:
+ case 690:
/* Line 690 of lalr1.cc */
-#line 4691 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4923 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
- case 657:
+ case 691:
/* Line 690 of lalr1.cc */
-#line 4695 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4927 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTUnaryNot(
LOC((yyloc)), dynamic_cast<FTPrimaryWithOptions*>((yysemantic_stack_[(2) - (2)].node))
@@ -9139,10 +9575,10 @@
}
break;
- case 658:
+ case 692:
/* Line 690 of lalr1.cc */
-#line 4703 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4935 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTPrimaryWithOptions(
LOC((yyloc)),
@@ -9153,55 +9589,55 @@
}
break;
- case 659:
-
-/* Line 690 of lalr1.cc */
-#line 4713 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = NULL;
- }
- break;
-
- case 660:
-
-/* Line 690 of lalr1.cc */
-#line 4717 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 661:
-
-/* Line 690 of lalr1.cc */
-#line 4722 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = NULL;
- }
- break;
-
- case 662:
-
-/* Line 690 of lalr1.cc */
-#line 4726 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 663:
-
-/* Line 690 of lalr1.cc */
-#line 4732 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ case 693:
+
+/* Line 690 of lalr1.cc */
+#line 4945 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = NULL;
+ }
+ break;
+
+ case 694:
+
+/* Line 690 of lalr1.cc */
+#line 4949 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 695:
+
+/* Line 690 of lalr1.cc */
+#line 4954 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = NULL;
+ }
+ break;
+
+ case 696:
+
+/* Line 690 of lalr1.cc */
+#line 4958 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 697:
+
+/* Line 690 of lalr1.cc */
+#line 4964 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTWeight( LOC((yyloc)), dynamic_cast<exprnode*>((yysemantic_stack_[(4) - (3)].expr)) );
}
break;
- case 664:
+ case 698:
/* Line 690 of lalr1.cc */
-#line 4738 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4970 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTWordsTimes(
LOC((yyloc)),
@@ -9211,46 +9647,46 @@
}
break;
- case 665:
+ case 699:
/* Line 690 of lalr1.cc */
-#line 4746 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4978 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(3) - (2)].node);
}
break;
- case 666:
+ case 700:
/* Line 690 of lalr1.cc */
-#line 4750 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4982 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
- case 667:
+ case 701:
/* Line 690 of lalr1.cc */
-#line 4755 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4987 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = NULL;
}
break;
- case 668:
+ case 702:
/* Line 690 of lalr1.cc */
-#line 4759 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4991 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
- case 669:
+ case 703:
/* Line 690 of lalr1.cc */
-#line 4765 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 4997 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTExtensionSelection(
LOC((yyloc)),
@@ -9260,28 +9696,28 @@
}
break;
- case 670:
+ case 704:
/* Line 690 of lalr1.cc */
-#line 4774 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5006 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = NULL;
}
break;
- case 671:
+ case 705:
/* Line 690 of lalr1.cc */
-#line 4778 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5010 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
- case 672:
+ case 706:
/* Line 690 of lalr1.cc */
-#line 4784 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5016 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTWords(
LOC((yyloc)),
@@ -9291,10 +9727,10 @@
}
break;
- case 673:
+ case 707:
/* Line 690 of lalr1.cc */
-#line 4794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5026 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTWordsValue(
LOC((yyloc)), static_cast<StringLiteral*>((yysemantic_stack_[(1) - (1)].expr)), NULL
@@ -9302,10 +9738,10 @@
}
break;
- case 674:
+ case 708:
/* Line 690 of lalr1.cc */
-#line 4800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5032 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTWordsValue(
LOC((yyloc)), NULL, dynamic_cast<exprnode*>((yysemantic_stack_[(3) - (2)].expr))
@@ -9313,145 +9749,145 @@
}
break;
- case 675:
+ case 709:
/* Line 690 of lalr1.cc */
-#line 4807 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5039 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTAnyallOption( LOC((yyloc)), ft_anyall_mode::any );
}
break;
- case 676:
+ case 710:
/* Line 690 of lalr1.cc */
-#line 4811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5043 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
- case 677:
-
-/* Line 690 of lalr1.cc */
-#line 4817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new FTAnyallOption( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].ft_anyall_value) );
- }
- break;
-
- case 678:
-
-/* Line 690 of lalr1.cc */
-#line 4821 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new FTAnyallOption( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].ft_anyall_value) );
- }
- break;
-
- case 679:
-
-/* Line 690 of lalr1.cc */
-#line 4825 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ case 711:
+
+/* Line 690 of lalr1.cc */
+#line 5049 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new FTAnyallOption( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].ft_anyall_value) );
+ }
+ break;
+
+ case 712:
+
+/* Line 690 of lalr1.cc */
+#line 5053 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new FTAnyallOption( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].ft_anyall_value) );
+ }
+ break;
+
+ case 713:
+
+/* Line 690 of lalr1.cc */
+#line 5057 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTAnyallOption( LOC((yyloc)), ft_anyall_mode::phrase );
}
break;
- case 680:
+ case 714:
/* Line 690 of lalr1.cc */
-#line 4830 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5062 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.ft_anyall_value) = ft_anyall_mode::any;
}
break;
- case 681:
+ case 715:
/* Line 690 of lalr1.cc */
-#line 4834 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5066 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.ft_anyall_value) = ft_anyall_mode::any_word;
}
break;
- case 682:
+ case 716:
/* Line 690 of lalr1.cc */
-#line 4839 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5071 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.ft_anyall_value) = ft_anyall_mode::all;
}
break;
- case 683:
+ case 717:
/* Line 690 of lalr1.cc */
-#line 4843 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5075 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.ft_anyall_value) = ft_anyall_mode::all_words;
}
break;
- case 684:
-
-/* Line 690 of lalr1.cc */
-#line 4849 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 685:
-
-/* Line 690 of lalr1.cc */
-#line 4853 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 686:
-
-/* Line 690 of lalr1.cc */
-#line 4857 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 687:
-
-/* Line 690 of lalr1.cc */
-#line 4861 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 688:
-
-/* Line 690 of lalr1.cc */
-#line 4865 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 689:
-
-/* Line 690 of lalr1.cc */
-#line 4871 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ case 718:
+
+/* Line 690 of lalr1.cc */
+#line 5081 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 719:
+
+/* Line 690 of lalr1.cc */
+#line 5085 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 720:
+
+/* Line 690 of lalr1.cc */
+#line 5089 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 721:
+
+/* Line 690 of lalr1.cc */
+#line 5093 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 722:
+
+/* Line 690 of lalr1.cc */
+#line 5097 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 723:
+
+/* Line 690 of lalr1.cc */
+#line 5103 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTOrder( LOC((yyloc)) );
}
break;
- case 690:
+ case 724:
/* Line 690 of lalr1.cc */
-#line 4877 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5109 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTWindow(
LOC((yyloc)),
@@ -9461,10 +9897,10 @@
}
break;
- case 691:
+ case 725:
/* Line 690 of lalr1.cc */
-#line 4887 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5119 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTDistance(
LOC((yyloc)),
@@ -9474,37 +9910,37 @@
}
break;
- case 692:
+ case 726:
/* Line 690 of lalr1.cc */
-#line 4897 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5129 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::words );
}
break;
- case 693:
+ case 727:
/* Line 690 of lalr1.cc */
-#line 4901 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5133 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::sentences );
}
break;
- case 694:
+ case 728:
/* Line 690 of lalr1.cc */
-#line 4905 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5137 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::paragraphs );
}
break;
- case 695:
+ case 729:
/* Line 690 of lalr1.cc */
-#line 4911 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5143 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
FTMatchOptions *mo = new FTMatchOptions( LOC((yyloc)) );
mo->push_back( dynamic_cast<FTMatchOption*>((yysemantic_stack_[(2) - (2)].node)) );
@@ -9512,10 +9948,10 @@
}
break;
- case 696:
+ case 730:
/* Line 690 of lalr1.cc */
-#line 4917 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5149 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
FTMatchOptions *mo = dynamic_cast<FTMatchOptions*>((yysemantic_stack_[(3) - (1)].node));
mo->push_back( dynamic_cast<FTMatchOption*>((yysemantic_stack_[(3) - (3)].node)) );
@@ -9523,118 +9959,118 @@
}
break;
- case 697:
-
-/* Line 690 of lalr1.cc */
-#line 4925 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 698:
-
-/* Line 690 of lalr1.cc */
-#line 4929 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 699:
-
-/* Line 690 of lalr1.cc */
-#line 4933 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 700:
-
-/* Line 690 of lalr1.cc */
-#line 4937 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 701:
-
-/* Line 690 of lalr1.cc */
-#line 4941 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 702:
-
-/* Line 690 of lalr1.cc */
-#line 4945 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 703:
-
-/* Line 690 of lalr1.cc */
-#line 4949 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 704:
-
-/* Line 690 of lalr1.cc */
-#line 4953 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 705:
-
-/* Line 690 of lalr1.cc */
-#line 4959 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ case 731:
+
+/* Line 690 of lalr1.cc */
+#line 5157 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 732:
+
+/* Line 690 of lalr1.cc */
+#line 5161 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 733:
+
+/* Line 690 of lalr1.cc */
+#line 5165 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 734:
+
+/* Line 690 of lalr1.cc */
+#line 5169 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 735:
+
+/* Line 690 of lalr1.cc */
+#line 5173 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 736:
+
+/* Line 690 of lalr1.cc */
+#line 5177 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 737:
+
+/* Line 690 of lalr1.cc */
+#line 5181 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 738:
+
+/* Line 690 of lalr1.cc */
+#line 5185 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 739:
+
+/* Line 690 of lalr1.cc */
+#line 5191 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::sensitive );
}
break;
- case 706:
+ case 740:
/* Line 690 of lalr1.cc */
-#line 4963 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5195 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::insensitive );
}
break;
- case 707:
+ case 741:
/* Line 690 of lalr1.cc */
-#line 4967 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5199 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::lower );
}
break;
- case 708:
+ case 742:
/* Line 690 of lalr1.cc */
-#line 4971 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5203 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::upper );
}
break;
- case 709:
+ case 743:
/* Line 690 of lalr1.cc */
-#line 4977 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5209 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTDiacriticsOption(
LOC((yyloc)), ft_diacritics_mode::sensitive
@@ -9642,10 +10078,10 @@
}
break;
- case 710:
+ case 744:
/* Line 690 of lalr1.cc */
-#line 4983 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5215 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTDiacriticsOption(
LOC((yyloc)), ft_diacritics_mode::insensitive
@@ -9653,10 +10089,10 @@
}
break;
- case 711:
+ case 745:
/* Line 690 of lalr1.cc */
-#line 4991 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5223 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTExtensionOption(
LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)), SYMTAB((yysemantic_stack_[(3) - (3)].sval))
@@ -9664,28 +10100,28 @@
}
break;
- case 712:
+ case 746:
/* Line 690 of lalr1.cc */
-#line 4999 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5231 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTStemOption( LOC((yyloc)), ft_stem_mode::stemming );
}
break;
- case 713:
+ case 747:
/* Line 690 of lalr1.cc */
-#line 5003 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5235 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTStemOption( LOC((yyloc)), ft_stem_mode::no_stemming );
}
break;
- case 714:
+ case 748:
/* Line 690 of lalr1.cc */
-#line 5009 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5241 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
FTThesaurusOption::thesaurus_id_list_t *til = NULL;
if ( (yysemantic_stack_[(2) - (2)].node) ) {
@@ -9697,10 +10133,10 @@
}
break;
- case 715:
+ case 749:
/* Line 690 of lalr1.cc */
-#line 5019 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5251 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
FTThesaurusOption::thesaurus_id_list_t *til = (yysemantic_stack_[(5) - (4)].thesaurus_id_list);
if ( (yysemantic_stack_[(5) - (3)].node) ) {
@@ -9713,75 +10149,75 @@
}
break;
- case 716:
+ case 750:
/* Line 690 of lalr1.cc */
-#line 5030 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5262 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTThesaurusOption( LOC((yyloc)), NULL, false, true );
}
break;
- case 717:
+ case 751:
/* Line 690 of lalr1.cc */
-#line 5036 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5268 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(1) - (1)].node);
}
break;
- case 718:
+ case 752:
/* Line 690 of lalr1.cc */
-#line 5040 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5272 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = NULL;
}
break;
- case 719:
+ case 753:
/* Line 690 of lalr1.cc */
-#line 5045 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5277 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.thesaurus_id_list) = NULL;
}
break;
- case 720:
+ case 754:
/* Line 690 of lalr1.cc */
-#line 5049 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5281 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.thesaurus_id_list) = (yysemantic_stack_[(2) - (2)].thesaurus_id_list);
}
break;
- case 721:
+ case 755:
/* Line 690 of lalr1.cc */
-#line 5055 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5287 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.thesaurus_id_list) = new FTThesaurusOption::thesaurus_id_list_t;
(yyval.thesaurus_id_list)->push_back( dynamic_cast<FTThesaurusID*>((yysemantic_stack_[(1) - (1)].node)) );
}
break;
- case 722:
+ case 756:
/* Line 690 of lalr1.cc */
-#line 5060 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5292 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yysemantic_stack_[(3) - (1)].thesaurus_id_list)->push_back( dynamic_cast<FTThesaurusID*>((yysemantic_stack_[(3) - (3)].node)) );
(yyval.thesaurus_id_list) = (yysemantic_stack_[(3) - (1)].thesaurus_id_list);
}
break;
- case 723:
+ case 757:
/* Line 690 of lalr1.cc */
-#line 5067 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5299 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTThesaurusID(
LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (2)].sval)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)), dynamic_cast<FTRange*>((yysemantic_stack_[(4) - (4)].node))
@@ -9789,46 +10225,46 @@
}
break;
- case 724:
+ case 758:
/* Line 690 of lalr1.cc */
-#line 5074 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5306 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.sval) = 0;
}
break;
- case 725:
+ case 759:
/* Line 690 of lalr1.cc */
-#line 5078 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5310 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.sval) = (yysemantic_stack_[(2) - (2)].sval);
}
break;
- case 726:
+ case 760:
/* Line 690 of lalr1.cc */
-#line 5084 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5316 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = NULL;
}
break;
- case 727:
+ case 761:
/* Line 690 of lalr1.cc */
-#line 5088 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5320 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = (yysemantic_stack_[(2) - (1)].node);
}
break;
- case 728:
+ case 762:
/* Line 690 of lalr1.cc */
-#line 5094 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5326 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTStopWordOption(
LOC((yyloc)),
@@ -9839,10 +10275,10 @@
}
break;
- case 729:
+ case 763:
/* Line 690 of lalr1.cc */
-#line 5103 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5335 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTStopWordOption(
LOC((yyloc)), NULL, (yysemantic_stack_[(4) - (4)].incl_excl_list), ft_stop_words_mode::with_default
@@ -9851,10 +10287,10 @@
}
break;
- case 730:
+ case 764:
/* Line 690 of lalr1.cc */
-#line 5110 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5342 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTStopWordOption(
LOC((yyloc)), NULL, NULL, ft_stop_words_mode::without
@@ -9862,28 +10298,28 @@
}
break;
- case 731:
+ case 765:
/* Line 690 of lalr1.cc */
-#line 5118 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5350 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTStopWords( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)), NULL );
}
break;
- case 732:
+ case 766:
/* Line 690 of lalr1.cc */
-#line 5122 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5354 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTStopWords( LOC((yyloc)), "", (yysemantic_stack_[(3) - (2)].strlist) );
}
break;
- case 733:
+ case 767:
/* Line 690 of lalr1.cc */
-#line 5128 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5360 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
string_list_t *sl = new string_list_t;
sl->push_back( SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
@@ -9891,10 +10327,10 @@
}
break;
- case 734:
+ case 768:
/* Line 690 of lalr1.cc */
-#line 5134 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5366 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
if ( (yysemantic_stack_[(3) - (1)].strlist) )
(yysemantic_stack_[(3) - (1)].strlist)->push_back( SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
@@ -9902,38 +10338,38 @@
}
break;
- case 735:
+ case 769:
/* Line 690 of lalr1.cc */
-#line 5141 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5373 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.incl_excl_list) = NULL;
}
break;
- case 736:
+ case 770:
/* Line 690 of lalr1.cc */
-#line 5145 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5377 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.incl_excl_list) = (yysemantic_stack_[(1) - (1)].incl_excl_list);
}
break;
- case 737:
+ case 771:
/* Line 690 of lalr1.cc */
-#line 5151 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5383 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.incl_excl_list) = new FTStopWordOption::incl_excl_list_t;
(yyval.incl_excl_list)->push_back( dynamic_cast<FTStopWordsInclExcl*>((yysemantic_stack_[(1) - (1)].node)) );
}
break;
- case 738:
+ case 772:
/* Line 690 of lalr1.cc */
-#line 5156 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5388 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
FTStopWordOption::incl_excl_list_t *iel = (yysemantic_stack_[(2) - (1)].incl_excl_list);
if ( !iel )
@@ -9943,10 +10379,10 @@
}
break;
- case 739:
+ case 773:
/* Line 690 of lalr1.cc */
-#line 5166 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5398 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTStopWordsInclExcl(
LOC((yyloc)),
@@ -9956,10 +10392,10 @@
}
break;
- case 740:
+ case 774:
/* Line 690 of lalr1.cc */
-#line 5174 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5406 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTStopWordsInclExcl(
LOC((yyloc)),
@@ -9969,109 +10405,109 @@
}
break;
- case 741:
+ case 775:
/* Line 690 of lalr1.cc */
-#line 5184 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5416 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTLanguageOption( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
}
break;
- case 742:
+ case 776:
/* Line 690 of lalr1.cc */
-#line 5190 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5422 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTWildCardOption( LOC((yyloc)), ft_wild_card_mode::with );
}
break;
- case 743:
+ case 777:
/* Line 690 of lalr1.cc */
-#line 5194 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5426 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTWildCardOption( LOC((yyloc)), ft_wild_card_mode::without );
}
break;
- case 744:
+ case 778:
/* Line 690 of lalr1.cc */
-#line 5200 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5432 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::at_start );
}
break;
- case 745:
+ case 779:
/* Line 690 of lalr1.cc */
-#line 5204 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5436 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::at_end );
}
break;
- case 746:
+ case 780:
/* Line 690 of lalr1.cc */
-#line 5208 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5440 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::entire );
}
break;
- case 747:
+ case 781:
/* Line 690 of lalr1.cc */
-#line 5214 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5446 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTTimes( LOC((yyloc)), dynamic_cast<FTRange*>((yysemantic_stack_[(3) - (2)].node)) );
}
break;
- case 748:
+ case 782:
/* Line 690 of lalr1.cc */
-#line 5220 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5452 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::exactly, (yysemantic_stack_[(2) - (2)].expr) );
}
break;
- case 749:
+ case 783:
/* Line 690 of lalr1.cc */
-#line 5224 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5456 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::at_least, (yysemantic_stack_[(3) - (3)].expr) );
}
break;
- case 750:
+ case 784:
/* Line 690 of lalr1.cc */
-#line 5228 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5460 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::at_most, (yysemantic_stack_[(3) - (3)].expr) );
}
break;
- case 751:
+ case 785:
/* Line 690 of lalr1.cc */
-#line 5232 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5464 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::from_to, (yysemantic_stack_[(4) - (2)].expr), (yysemantic_stack_[(4) - (4)].expr) );
}
break;
- case 752:
+ case 786:
/* Line 690 of lalr1.cc */
-#line 5238 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5470 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTScope(
LOC((yyloc)),
@@ -10081,10 +10517,10 @@
}
break;
- case 753:
+ case 787:
/* Line 690 of lalr1.cc */
-#line 5246 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5478 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTScope(
LOC((yyloc)),
@@ -10094,113 +10530,114 @@
}
break;
- case 754:
+ case 788:
/* Line 690 of lalr1.cc */
-#line 5256 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5488 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTBigUnit( LOC((yyloc)), ft_big_unit::sentence );
}
break;
- case 755:
+ case 789:
/* Line 690 of lalr1.cc */
-#line 5260 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5492 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTBigUnit( LOC((yyloc)), ft_big_unit::paragraph );
}
break;
- case 756:
+ case 790:
/* Line 690 of lalr1.cc */
-#line 5266 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5498 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.node) = new FTIgnoreOption( LOC((yyloc)), static_cast<UnionExpr*>((yysemantic_stack_[(3) - (3)].expr)) );
}
break;
- case 757:
+ case 791:
/* Line 690 of lalr1.cc */
-#line 5272 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5504 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new JSONArrayConstructor( LOC((yyloc)), NULL );
}
break;
- case 758:
+ case 792:
/* Line 690 of lalr1.cc */
-#line 5276 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5508 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new JSONArrayConstructor( LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr) );
}
break;
- case 759:
+ case 793:
/* Line 690 of lalr1.cc */
-#line 5282 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5514 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new JSONObjectConstructor(LOC((yyloc)), NULL, false);
}
break;
- case 760:
+ case 794:
/* Line 690 of lalr1.cc */
-#line 5286 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5518 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new JSONObjectConstructor(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr), false);
}
break;
- case 761:
+ case 795:
/* Line 690 of lalr1.cc */
-#line 5292 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5524 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new JSONObjectConstructor(LOC((yyloc)), NULL, true);
}
break;
- case 762:
+ case 796:
/* Line 690 of lalr1.cc */
-#line 5296 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5528 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new JSONObjectConstructor(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr), true);
}
break;
- case 763:
+ case 797:
/* Line 690 of lalr1.cc */
-#line 5302 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5534 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new JSONDirectObjectConstructor(LOC((yyloc)),
dynamic_cast<JSONPairList*>((yysemantic_stack_[(3) - (2)].node)));
}
break;
- case 764:
+ case 798:
/* Line 690 of lalr1.cc */
-#line 5309 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5541 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
- StringLiteral* sl = new StringLiteral( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval)) );
+ ERROR_IF_QNAME_NOT_NCNAME((yysemantic_stack_[(3) - (1)].expr), (yylocation_stack_[(3) - (1)]));
+ StringLiteral* sl = new StringLiteral( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)) );
JSONPairList* jpl = new JSONPairList(LOC((yyloc)));
jpl->push_back(new JSONPairConstructor(LOC((yyloc)), sl, (yysemantic_stack_[(3) - (3)].expr)));
(yyval.node) = jpl;
}
break;
- case 765:
+ case 799:
/* Line 690 of lalr1.cc */
-#line 5317 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5550 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
JSONPairList* jpl = new JSONPairList(LOC((yyloc)));
jpl->push_back(new JSONPairConstructor(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)));
@@ -10208,10 +10645,10 @@
}
break;
- case 766:
+ case 800:
/* Line 690 of lalr1.cc */
-#line 5323 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5556 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
JSONPairList* jpl = dynamic_cast<JSONPairList*>((yysemantic_stack_[(5) - (1)].node));
assert(jpl);
@@ -10220,23 +10657,24 @@
}
break;
- case 767:
+ case 801:
/* Line 690 of lalr1.cc */
-#line 5330 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5563 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
+ ERROR_IF_QNAME_NOT_NCNAME((yysemantic_stack_[(5) - (3)].expr), (yylocation_stack_[(5) - (3)]));
JSONPairList* jpl = dynamic_cast<JSONPairList*>((yysemantic_stack_[(5) - (1)].node));
assert(jpl);
- StringLiteral* sl = new StringLiteral( LOC((yyloc)), SYMTAB((yysemantic_stack_[(5) - (3)].sval)) );
+ StringLiteral* sl = new StringLiteral( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)) );
jpl->push_back(new JSONPairConstructor(LOC((yyloc)), sl, (yysemantic_stack_[(5) - (5)].expr)));
(yyval.node) = jpl;
}
break;
- case 768:
+ case 802:
/* Line 690 of lalr1.cc */
-#line 5340 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5574 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new JSONObjectInsertExpr(LOC((yyloc)),
(yysemantic_stack_[(5) - (3)].expr),
@@ -10244,10 +10682,10 @@
}
break;
- case 769:
+ case 803:
/* Line 690 of lalr1.cc */
-#line 5346 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5580 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
JSONPairList* jpl = dynamic_cast<JSONPairList*>((yysemantic_stack_[(5) - (3)].node));
(yyval.expr) = new JSONObjectInsertExpr(
@@ -10259,31 +10697,33 @@
}
break;
- case 770:
+ case 804:
/* Line 690 of lalr1.cc */
-#line 5356 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5590 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new JSONArrayInsertExpr(LOC((yyloc)), (yysemantic_stack_[(8) - (3)].expr), (yysemantic_stack_[(8) - (5)].expr), (yysemantic_stack_[(8) - (8)].expr));
}
break;
- case 771:
+ case 805:
/* Line 690 of lalr1.cc */
-#line 5360 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5594 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
+ driver.addCommonLanguageWarning((yylocation_stack_[(4) - (2)]), ZED(ZWST0009_JSON_KEYWORD_OPTIONAL));
(yyval.expr) = new JSONObjectInsertExpr(LOC((yyloc)),
(yysemantic_stack_[(4) - (2)].expr),
(yysemantic_stack_[(4) - (4)].expr));
}
break;
- case 772:
+ case 806:
/* Line 690 of lalr1.cc */
-#line 5366 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5601 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
+ driver.addCommonLanguageWarning((yylocation_stack_[(4) - (2)]), ZED(ZWST0009_JSON_KEYWORD_OPTIONAL));
JSONPairList* jpl = dynamic_cast<JSONPairList*>((yysemantic_stack_[(4) - (2)].node));
(yyval.expr) = new JSONObjectInsertExpr(
LOC((yyloc)),
@@ -10294,37 +10734,39 @@
}
break;
- case 773:
+ case 807:
/* Line 690 of lalr1.cc */
-#line 5376 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5612 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
+ driver.addCommonLanguageWarning((yylocation_stack_[(7) - (2)]), ZED(ZWST0009_JSON_KEYWORD_OPTIONAL));
(yyval.expr) = new JSONArrayInsertExpr(LOC((yyloc)), (yysemantic_stack_[(7) - (2)].expr), (yysemantic_stack_[(7) - (4)].expr), (yysemantic_stack_[(7) - (7)].expr));
}
break;
- case 774:
+ case 808:
/* Line 690 of lalr1.cc */
-#line 5382 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5619 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
(yyval.expr) = new JSONArrayAppendExpr(LOC((yyloc)), (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr));
}
break;
- case 775:
+ case 809:
/* Line 690 of lalr1.cc */
-#line 5386 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5623 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
+ driver.addCommonLanguageWarning((yylocation_stack_[(4) - (2)]), ZED(ZWST0009_JSON_KEYWORD_OPTIONAL));
(yyval.expr) = new JSONArrayAppendExpr(LOC((yyloc)), (yysemantic_stack_[(4) - (2)].expr), (yysemantic_stack_[(4) - (4)].expr));
}
break;
- case 776:
+ case 810:
/* Line 690 of lalr1.cc */
-#line 5392 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5630 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(3) - (3)].expr));
@@ -10345,11 +10787,12 @@
}
break;
- case 777:
+ case 811:
/* Line 690 of lalr1.cc */
-#line 5411 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5649 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
+ driver.addCommonLanguageWarning((yylocation_stack_[(2) - (2)]), ZED(ZWST0009_JSON_KEYWORD_OPTIONAL));
rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(2) - (2)].expr));
if (lDynamicFunctionInvocation == NULL)
@@ -10369,10 +10812,10 @@
}
break;
- case 778:
+ case 812:
/* Line 690 of lalr1.cc */
-#line 5432 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5671 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(5) - (3)].expr));
@@ -10396,11 +10839,12 @@
}
break;
- case 779:
+ case 813:
/* Line 690 of lalr1.cc */
-#line 5454 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5693 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
+ driver.addCommonLanguageWarning((yylocation_stack_[(4) - (2)]), ZED(ZWST0009_JSON_KEYWORD_OPTIONAL));
rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(4) - (2)].expr));
if(lDynamicFunctionInvocation == NULL)
@@ -10423,10 +10867,10 @@
}
break;
- case 780:
+ case 814:
/* Line 690 of lalr1.cc */
-#line 5478 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5718 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(7) - (5)].expr));
@@ -10450,11 +10894,12 @@
}
break;
- case 781:
+ case 815:
/* Line 690 of lalr1.cc */
-#line 5500 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5740 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{
+ driver.addCommonLanguageWarning((yylocation_stack_[(6) - (2)]), ZED(ZWST0009_JSON_KEYWORD_OPTIONAL));
rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(6) - (4)].expr));
if(lDynamicFunctionInvocation == NULL)
@@ -10477,1583 +10922,1578 @@
}
break;
- case 782:
-
-/* Line 690 of lalr1.cc */
-#line 5524 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 783:
-
-/* Line 690 of lalr1.cc */
-#line 5528 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 784:
-
-/* Line 690 of lalr1.cc */
-#line 5532 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
- }
- break;
-
- case 785:
-
-/* Line 690 of lalr1.cc */
-#line 5538 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonItem);
- }
- break;
-
- case 786:
-
-/* Line 690 of lalr1.cc */
-#line 5542 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonItem);
- }
- break;
-
- case 787:
-
-/* Line 690 of lalr1.cc */
-#line 5548 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonObject);
- }
- break;
-
- case 788:
-
-/* Line 690 of lalr1.cc */
-#line 5552 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonObject);
- }
- break;
-
- case 789:
-
-/* Line 690 of lalr1.cc */
-#line 5558 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonArray);
- }
- break;
-
- case 790:
-
-/* Line 690 of lalr1.cc */
-#line 5562 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonArray);
- }
- break;
-
- case 793:
-
-/* Line 690 of lalr1.cc */
-#line 5572 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
- {
- auto_ptr<QName> lQName( static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
- zstring const &tmp = lQName->get_qname();
- if ( tmp.find (':') != string::npos ) {
- error((yylocation_stack_[(1) - (1)]), "A NCName is expected, found a QName");
- YYERROR;
- }
- (yyval.sval) = SYMTAB_PUT(tmp.c_str());
- }
- break;
-
- case 795:
-
-/* Line 690 of lalr1.cc */
-#line 5584 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ case 816:
+
+/* Line 690 of lalr1.cc */
+#line 5765 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 817:
+
+/* Line 690 of lalr1.cc */
+#line 5769 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 818:
+
+/* Line 690 of lalr1.cc */
+#line 5773 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+ }
+ break;
+
+ case 819:
+
+/* Line 690 of lalr1.cc */
+#line 5779 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonItem);
+ }
+ break;
+
+ case 820:
+
+/* Line 690 of lalr1.cc */
+#line 5783 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ driver.addCommonLanguageWarning((yylocation_stack_[(1) - (1)]), ZED(ZWST0009_JSONIQ_TYPE_KEYWORDS));
+ (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonItem);
+ }
+ break;
+
+ case 821:
+
+/* Line 690 of lalr1.cc */
+#line 5790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonObject);
+ }
+ break;
+
+ case 822:
+
+/* Line 690 of lalr1.cc */
+#line 5794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ driver.addCommonLanguageWarning((yylocation_stack_[(1) - (1)]), ZED(ZWST0009_JSONIQ_TYPE_KEYWORDS));
+ (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonObject);
+ }
+ break;
+
+ case 823:
+
+/* Line 690 of lalr1.cc */
+#line 5801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonArray);
+ }
+ break;
+
+ case 824:
+
+/* Line 690 of lalr1.cc */
+#line 5805 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ {
+ driver.addCommonLanguageWarning((yylocation_stack_[(1) - (1)]), ZED(ZWST0009_JSONIQ_TYPE_KEYWORDS));
+ (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonArray);
+ }
+ break;
+
+ case 827:
+
+/* Line 690 of lalr1.cc */
+#line 5815 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval))); }
+ break;
+
+ case 828:
+
+/* Line 690 of lalr1.cc */
+#line 5816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("attribute"))); }
break;
- case 796:
+ case 829:
/* Line 690 of lalr1.cc */
-#line 5585 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5817 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("comment"))); }
break;
- case 797:
+ case 830:
/* Line 690 of lalr1.cc */
-#line 5586 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5818 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("document-node"))); }
break;
- case 798:
+ case 831:
/* Line 690 of lalr1.cc */
-#line 5587 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("namespace-node"))); }
break;
- case 799:
+ case 832:
/* Line 690 of lalr1.cc */
-#line 5588 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5820 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("element"))); }
break;
- case 800:
+ case 833:
/* Line 690 of lalr1.cc */
-#line 5589 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5821 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("if"))); }
break;
- case 801:
+ case 834:
/* Line 690 of lalr1.cc */
-#line 5590 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5822 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("node"))); }
break;
- case 802:
+ case 835:
/* Line 690 of lalr1.cc */
-#line 5591 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5823 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("processing-instruction"))); }
break;
- case 803:
+ case 836:
/* Line 690 of lalr1.cc */
-#line 5592 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5824 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema-attribute"))); }
break;
- case 804:
+ case 837:
/* Line 690 of lalr1.cc */
-#line 5593 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5825 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema-element"))); }
break;
- case 805:
+ case 838:
/* Line 690 of lalr1.cc */
-#line 5594 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5826 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("text"))); }
break;
- case 806:
+ case 839:
/* Line 690 of lalr1.cc */
-#line 5595 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5827 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("typeswitch"))); }
break;
- case 807:
+ case 840:
/* Line 690 of lalr1.cc */
-#line 5596 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5828 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("switch"))); }
break;
- case 808:
+ case 841:
/* Line 690 of lalr1.cc */
-#line 5597 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5829 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("empty-sequence"))); }
break;
- case 809:
+ case 842:
/* Line 690 of lalr1.cc */
-#line 5598 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5830 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("while"))); }
break;
- case 811:
+ case 844:
/* Line 690 of lalr1.cc */
-#line 5602 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5834 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval))); }
break;
- case 812:
+ case 845:
/* Line 690 of lalr1.cc */
-#line 5603 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5835 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("xquery"))); }
break;
- case 813:
+ case 846:
/* Line 690 of lalr1.cc */
-#line 5604 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5836 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("empty"))); }
break;
- case 814:
+ case 847:
/* Line 690 of lalr1.cc */
-#line 5605 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5837 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("boundary-space"))); }
break;
- case 815:
+ case 848:
/* Line 690 of lalr1.cc */
-#line 5606 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5838 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ft-option"))); }
break;
- case 816:
+ case 849:
/* Line 690 of lalr1.cc */
-#line 5607 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5839 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("base-uri"))); }
break;
- case 817:
+ case 850:
/* Line 690 of lalr1.cc */
-#line 5608 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5840 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("lax"))); }
break;
- case 818:
+ case 851:
/* Line 690 of lalr1.cc */
-#line 5609 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5841 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("strict"))); }
break;
- case 819:
+ case 852:
/* Line 690 of lalr1.cc */
-#line 5610 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5842 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("idiv"))); }
break;
- case 820:
+ case 853:
/* Line 690 of lalr1.cc */
-#line 5611 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5843 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("document"))); }
break;
- case 821:
+ case 854:
/* Line 690 of lalr1.cc */
-#line 5612 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5844 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ftnot"))); }
break;
- case 822:
+ case 855:
/* Line 690 of lalr1.cc */
-#line 5613 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5845 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("not"))); }
break;
- case 823:
+ case 856:
/* Line 690 of lalr1.cc */
-#line 5614 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5846 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sensitive"))); }
break;
- case 824:
+ case 857:
/* Line 690 of lalr1.cc */
-#line 5615 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5847 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("insensitive"))); }
break;
- case 825:
+ case 858:
/* Line 690 of lalr1.cc */
-#line 5616 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5848 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("diacritics"))); }
break;
- case 826:
+ case 859:
/* Line 690 of lalr1.cc */
-#line 5617 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5849 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("without"))); }
break;
- case 827:
+ case 860:
/* Line 690 of lalr1.cc */
-#line 5618 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5850 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stemming"))); }
break;
- case 828:
+ case 861:
/* Line 690 of lalr1.cc */
-#line 5619 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5851 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("thesaurus"))); }
break;
- case 829:
+ case 862:
/* Line 690 of lalr1.cc */
-#line 5620 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5852 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stop"))); }
break;
- case 830:
+ case 863:
/* Line 690 of lalr1.cc */
-#line 5621 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5853 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("wildcards"))); }
break;
- case 831:
+ case 864:
/* Line 690 of lalr1.cc */
-#line 5622 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5854 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("entire"))); }
break;
- case 832:
+ case 865:
/* Line 690 of lalr1.cc */
-#line 5623 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5855 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("content"))); }
break;
- case 833:
+ case 866:
/* Line 690 of lalr1.cc */
-#line 5624 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5856 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("word"))); }
break;
- case 834:
+ case 867:
/* Line 690 of lalr1.cc */
-#line 5625 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5857 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("start"))); }
break;
- case 835:
+ case 868:
/* Line 690 of lalr1.cc */
-#line 5626 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5858 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("end"))); }
break;
- case 836:
+ case 869:
/* Line 690 of lalr1.cc */
-#line 5627 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5859 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("most"))); }
break;
- case 837:
+ case 870:
/* Line 690 of lalr1.cc */
-#line 5628 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5860 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("skip"))); }
break;
- case 838:
+ case 871:
/* Line 690 of lalr1.cc */
-#line 5629 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5861 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("copy"))); }
break;
- case 839:
+ case 872:
/* Line 690 of lalr1.cc */
-#line 5630 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5862 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("general"))); }
break;
- case 840:
+ case 873:
/* Line 690 of lalr1.cc */
-#line 5631 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5863 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("value"))); }
break;
- case 841:
+ case 874:
/* Line 690 of lalr1.cc */
-#line 5632 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5864 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("eq"))); }
break;
- case 842:
+ case 875:
/* Line 690 of lalr1.cc */
-#line 5633 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5865 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ne"))); }
break;
- case 843:
+ case 876:
/* Line 690 of lalr1.cc */
-#line 5634 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5866 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("lt"))); }
break;
- case 844:
+ case 877:
/* Line 690 of lalr1.cc */
-#line 5635 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5867 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("le"))); }
break;
- case 845:
+ case 878:
/* Line 690 of lalr1.cc */
-#line 5636 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5868 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("gt"))); }
break;
- case 846:
+ case 879:
/* Line 690 of lalr1.cc */
-#line 5637 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5869 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ge"))); }
break;
- case 847:
+ case 880:
/* Line 690 of lalr1.cc */
-#line 5638 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5870 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("at"))); }
break;
- case 848:
+ case 881:
/* Line 690 of lalr1.cc */
-#line 5639 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5871 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("context"))); }
break;
- case 849:
+ case 882:
/* Line 690 of lalr1.cc */
-#line 5640 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5872 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("variable"))); }
break;
- case 850:
+ case 883:
/* Line 690 of lalr1.cc */
-#line 5641 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5873 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("return"))); }
break;
- case 851:
+ case 884:
/* Line 690 of lalr1.cc */
-#line 5642 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5874 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("for"))); }
break;
- case 852:
-
-/* Line 690 of lalr1.cc */
-#line 5643 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ case 885:
+
+/* Line 690 of lalr1.cc */
+#line 5875 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+ { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("from"))); }
+ break;
+
+ case 886:
+
+/* Line 690 of lalr1.cc */
+#line 5876 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("allowing"))); }
break;
- case 853:
+ case 887:
/* Line 690 of lalr1.cc */
-#line 5644 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5877 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sliding"))); }
break;
- case 854:
+ case 888:
/* Line 690 of lalr1.cc */
-#line 5645 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5878 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("tumbling"))); }
break;
- case 855:
+ case 889:
/* Line 690 of lalr1.cc */
-#line 5646 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5879 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("previous"))); }
break;
- case 856:
+ case 890:
/* Line 690 of lalr1.cc */
-#line 5647 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5880 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("next"))); }
break;
- case 857:
+ case 891:
/* Line 690 of lalr1.cc */
-#line 5648 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5881 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("only"))); }
break;
- case 858:
+ case 892:
/* Line 690 of lalr1.cc */
-#line 5649 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5882 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("when"))); }
break;
- case 859:
+ case 893:
/* Line 690 of lalr1.cc */
-#line 5650 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5883 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("count"))); }
break;
- case 860:
+ case 894:
/* Line 690 of lalr1.cc */
-#line 5651 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5884 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("in"))); }
break;
- case 861:
+ case 895:
/* Line 690 of lalr1.cc */
-#line 5652 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5885 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("let"))); }
break;
- case 862:
+ case 896:
/* Line 690 of lalr1.cc */
-#line 5653 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5886 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("where"))); }
break;
- case 863:
+ case 897:
/* Line 690 of lalr1.cc */
-#line 5654 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5887 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("by"))); }
break;
- case 864:
+ case 898:
/* Line 690 of lalr1.cc */
-#line 5655 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5888 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("group"))); }
break;
- case 865:
+ case 899:
/* Line 690 of lalr1.cc */
-#line 5656 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5889 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("order"))); }
break;
- case 866:
+ case 900:
/* Line 690 of lalr1.cc */
-#line 5657 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5890 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stable"))); }
break;
- case 867:
+ case 901:
/* Line 690 of lalr1.cc */
-#line 5658 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5891 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ascending"))); }
break;
- case 868:
+ case 902:
/* Line 690 of lalr1.cc */
-#line 5659 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5892 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("descending"))); }
break;
- case 869:
+ case 903:
/* Line 690 of lalr1.cc */
-#line 5660 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5893 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("greatest"))); }
break;
- case 870:
+ case 904:
/* Line 690 of lalr1.cc */
-#line 5661 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5894 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("least"))); }
break;
- case 871:
+ case 905:
/* Line 690 of lalr1.cc */
-#line 5662 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5895 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("collation"))); }
break;
- case 872:
+ case 906:
/* Line 690 of lalr1.cc */
-#line 5663 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5896 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("some"))); }
break;
- case 873:
+ case 907:
/* Line 690 of lalr1.cc */
-#line 5664 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5897 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("every"))); }
break;
- case 874:
+ case 908:
/* Line 690 of lalr1.cc */
-#line 5665 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5898 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("satisfies"))); }
break;
- case 875:
+ case 909:
/* Line 690 of lalr1.cc */
-#line 5666 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5899 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("case"))); }
break;
- case 876:
+ case 910:
/* Line 690 of lalr1.cc */
-#line 5667 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5900 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("as"))); }
break;
- case 877:
+ case 911:
/* Line 690 of lalr1.cc */
-#line 5668 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5901 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("then"))); }
break;
- case 878:
+ case 912:
/* Line 690 of lalr1.cc */
-#line 5669 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5902 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("else"))); }
break;
- case 879:
+ case 913:
/* Line 690 of lalr1.cc */
-#line 5670 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5903 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("or"))); }
break;
- case 880:
+ case 914:
/* Line 690 of lalr1.cc */
-#line 5671 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5904 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("and"))); }
break;
- case 881:
+ case 915:
/* Line 690 of lalr1.cc */
-#line 5672 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5905 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("instance"))); }
break;
- case 882:
+ case 916:
/* Line 690 of lalr1.cc */
-#line 5673 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5906 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("of"))); }
break;
- case 883:
+ case 917:
/* Line 690 of lalr1.cc */
-#line 5674 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5907 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("castable"))); }
break;
- case 884:
+ case 918:
/* Line 690 of lalr1.cc */
-#line 5675 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5908 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("to"))); }
break;
- case 885:
+ case 919:
/* Line 690 of lalr1.cc */
-#line 5676 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5909 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("div"))); }
break;
- case 886:
+ case 920:
/* Line 690 of lalr1.cc */
-#line 5677 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5910 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("mod"))); }
break;
- case 887:
+ case 921:
/* Line 690 of lalr1.cc */
-#line 5678 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5911 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("union"))); }
break;
- case 888:
+ case 922:
/* Line 690 of lalr1.cc */
-#line 5679 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5912 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("intersect"))); }
break;
- case 889:
+ case 923:
/* Line 690 of lalr1.cc */
-#line 5680 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5913 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("except"))); }
break;
- case 890:
+ case 924:
/* Line 690 of lalr1.cc */
-#line 5681 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5914 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("validate"))); }
break;
- case 891:
+ case 925:
/* Line 690 of lalr1.cc */
-#line 5682 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5915 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("type"))); }
break;
- case 892:
+ case 926:
/* Line 690 of lalr1.cc */
-#line 5683 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5916 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("cast"))); }
break;
- case 893:
+ case 927:
/* Line 690 of lalr1.cc */
-#line 5684 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5917 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("treat"))); }
break;
- case 894:
+ case 928:
/* Line 690 of lalr1.cc */
-#line 5685 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5918 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("is"))); }
break;
- case 895:
+ case 929:
/* Line 690 of lalr1.cc */
-#line 5686 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5919 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("preserve"))); }
break;
- case 896:
+ case 930:
/* Line 690 of lalr1.cc */
-#line 5687 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5920 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("strip"))); }
break;
- case 897:
+ case 931:
/* Line 690 of lalr1.cc */
-#line 5688 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5921 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("namespace"))); }
break;
- case 898:
+ case 932:
/* Line 690 of lalr1.cc */
-#line 5689 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5922 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("external"))); }
break;
- case 899:
+ case 933:
/* Line 690 of lalr1.cc */
-#line 5690 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5923 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("encoding"))); }
break;
- case 900:
+ case 934:
/* Line 690 of lalr1.cc */
-#line 5691 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5924 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("no-preserve"))); }
break;
- case 901:
+ case 935:
/* Line 690 of lalr1.cc */
-#line 5692 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5925 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("inherit"))); }
break;
- case 902:
+ case 936:
/* Line 690 of lalr1.cc */
-#line 5693 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5926 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("no-inherit"))); }
break;
- case 903:
+ case 937:
/* Line 690 of lalr1.cc */
-#line 5694 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5927 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("declare"))); }
break;
- case 904:
+ case 938:
/* Line 690 of lalr1.cc */
-#line 5695 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5928 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("construction"))); }
break;
- case 905:
+ case 939:
/* Line 690 of lalr1.cc */
-#line 5696 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5929 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ordering"))); }
break;
- case 906:
+ case 940:
/* Line 690 of lalr1.cc */
-#line 5697 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5930 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("default"))); }
break;
- case 907:
+ case 941:
/* Line 690 of lalr1.cc */
-#line 5698 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5931 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("copy-namespaces"))); }
break;
- case 908:
+ case 942:
/* Line 690 of lalr1.cc */
-#line 5699 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5932 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("option"))); }
break;
- case 909:
+ case 943:
/* Line 690 of lalr1.cc */
-#line 5700 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5933 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("version"))); }
break;
- case 910:
+ case 944:
/* Line 690 of lalr1.cc */
-#line 5701 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5934 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("import"))); }
break;
- case 911:
+ case 945:
/* Line 690 of lalr1.cc */
-#line 5702 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5935 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema"))); }
break;
- case 912:
+ case 946:
/* Line 690 of lalr1.cc */
-#line 5703 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5936 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("module"))); }
break;
- case 913:
+ case 947:
/* Line 690 of lalr1.cc */
-#line 5704 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5937 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("function"))); }
break;
- case 914:
+ case 948:
/* Line 690 of lalr1.cc */
-#line 5705 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5938 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("score"))); }
break;
- case 915:
+ case 949:
/* Line 690 of lalr1.cc */
-#line 5706 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5939 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
{ (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("contains"))); }
break;
- case 916:
+ case 950:
/* Line 690 of lalr1.cc */
-#line 5707 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+#line 5940 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parse
Follow ups
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: noreply, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Chris Hillery, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Matthias Brantner, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-15
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Chris Hillery, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-15
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-13
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-13
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-13
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-13
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-13
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-13
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-13
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-13
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-13
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-13
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-13
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-13
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Ghislain Fourny, 2013-05-10
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Matthias Brantner, 2013-05-09
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-03
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-03
-
Re: [Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-03
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-03
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Zorba Build Bot, 2013-05-03
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-03
-
[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba
From: Nicolae Brinza, 2013-05-03