Merge lp:~nbrinza/zorba/hof into lp:zorba

Proposed by Nicolae Brinza
Status: Superseded
Proposed branch: lp:~nbrinza/zorba/hof
Merge into: lp:zorba
Diff against target: 38000 lines (+13090/-9527)
191 files modified
include/zorba/pregenerated/diagnostic_list.h (+4/-0)
modules/w3c/pregenerated/xqt-errors.xq (+16/-0)
src/api/serialization/serializer.cpp (+5/-0)
src/compiler/api/compiler_api.cpp (+4/-1)
src/compiler/api/compilercb.cpp (+5/-0)
src/compiler/codegen/plan_visitor.cpp (+252/-28)
src/compiler/expression/abstract_expr_visitor.h (+7/-6)
src/compiler/expression/expr_base.cpp (+7/-0)
src/compiler/expression/expr_base.h (+3/-0)
src/compiler/expression/expr_classes.h (+1/-0)
src/compiler/expression/expr_clone.cpp (+37/-15)
src/compiler/expression/expr_iter.cpp (+23/-6)
src/compiler/expression/expr_manager.cpp (+27/-12)
src/compiler/expression/expr_manager.h (+18/-7)
src/compiler/expression/expr_put.cpp (+62/-11)
src/compiler/expression/expr_type.cpp (+10/-1)
src/compiler/expression/expr_visitor.h (+6/-5)
src/compiler/expression/function_item_expr.cpp (+79/-40)
src/compiler/expression/function_item_expr.h (+77/-32)
src/compiler/expression/var_expr.cpp (+2/-1)
src/compiler/expression/var_expr.h (+2/-0)
src/compiler/parser/xquery_parser.cpp (+7005/-6829)
src/compiler/parser/xquery_parser.hpp (+18/-59)
src/compiler/parser/xquery_parser.y (+32/-8)
src/compiler/parser/xquery_scanner.cpp (+360/-360)
src/compiler/parsetree/parsenode_print_xml_visitor.cpp (+1/-0)
src/compiler/parsetree/parsenode_print_xqdoc_visitor.cpp (+15/-14)
src/compiler/parsetree/parsenode_print_xquery_visitor.cpp (+15/-6)
src/compiler/parsetree/parsenode_visitor.h (+1/-0)
src/compiler/parsetree/parsenodes.cpp (+19/-2)
src/compiler/parsetree/parsenodes.h (+32/-6)
src/compiler/rewriter/framework/rewriter_context.cpp (+1/-2)
src/compiler/rewriter/rules/fold_rules.cpp (+29/-20)
src/compiler/rewriter/rules/hoist_rules.cpp (+1/-0)
src/compiler/rewriter/rules/nodeid_rules.cpp (+11/-7)
src/compiler/rewriter/tools/dataflow_annotations.cpp (+8/-0)
src/compiler/rewriter/tools/udf_graph.cpp (+7/-3)
src/compiler/translator/translator.cpp (+1492/-854)
src/compiler/translator/translator.h (+15/-0)
src/context/dynamic_context.cpp (+35/-0)
src/context/dynamic_context.h (+8/-0)
src/context/root_static_context.cpp (+1/-1)
src/context/static_context.cpp (+47/-0)
src/context/static_context.h (+10/-1)
src/diagnostics/diagnostic_en.xml (+14/-0)
src/diagnostics/pregenerated/diagnostic_list.cpp (+6/-0)
src/diagnostics/pregenerated/dict_en.cpp (+2/-0)
src/functions/CMakeLists.txt (+1/-0)
src/functions/func_hof_impl.cpp (+216/-0)
src/functions/func_hof_impl.h (+38/-0)
src/functions/func_sequences_impl.cpp (+2/-0)
src/functions/function.h (+4/-4)
src/functions/function_consts.h (+3/-0)
src/functions/library.cpp (+2/-0)
src/functions/pregenerated/func_function_item_iter.cpp (+27/-29)
src/functions/pregenerated/func_function_item_iter.h (+50/-5)
src/functions/pregenerated/func_numerics.cpp (+2/-2)
src/functions/pregenerated/function_enum.h (+4/-2)
src/functions/signature.cpp (+122/-87)
src/functions/signature.h (+10/-0)
src/functions/udf.cpp (+26/-1)
src/functions/udf.h (+2/-2)
src/runtime/accessors/accessors_impl.cpp (+3/-2)
src/runtime/api/plan_iterator_wrapper.cpp (+133/-7)
src/runtime/api/plan_iterator_wrapper.h (+66/-7)
src/runtime/api/plan_wrapper.cpp (+33/-12)
src/runtime/api/plan_wrapper.h (+3/-0)
src/runtime/base/plan_iterator.cpp (+71/-2)
src/runtime/base/plan_iterator.h (+40/-24)
src/runtime/core/constructors.cpp (+14/-2)
src/runtime/core/flwor_iterator.h (+50/-50)
src/runtime/core/fncall_iterator.cpp (+54/-20)
src/runtime/core/fncall_iterator.h (+24/-17)
src/runtime/core/item_iterator.cpp (+403/-16)
src/runtime/core/item_iterator.h (+68/-19)
src/runtime/core/sequencetypes.cpp (+1/-1)
src/runtime/core/var_iterators.cpp (+33/-1)
src/runtime/core/var_iterators.h (+27/-27)
src/runtime/function_item/dynamic_fncall_iterator.cpp (+114/-64)
src/runtime/function_item/dynamic_fncall_iterator.h (+56/-14)
src/runtime/function_item/function_item.cpp (+210/-85)
src/runtime/function_item/function_item.h (+87/-29)
src/runtime/function_item/function_item_iter_impl.cpp (+363/-29)
src/runtime/function_item/pregenerated/function_item_iter.cpp (+89/-26)
src/runtime/function_item/pregenerated/function_item_iter.h (+124/-15)
src/runtime/misc/materialize.cpp (+8/-0)
src/runtime/misc/materialize.h (+2/-0)
src/runtime/numerics/numerics_impl.cpp (+6/-3)
src/runtime/pregenerated/iterator_enum.h (+3/-1)
src/runtime/sequences/sequences_impl.cpp (+15/-15)
src/runtime/spec/function_item/function_item_iter.xml (+100/-30)
src/runtime/spec/numerics/numerics.xml (+2/-2)
src/runtime/spec/printer_visitor_cpp.xq (+4/-0)
src/runtime/strings/strings_impl.cpp (+20/-9)
src/runtime/util/item_iterator.cpp (+9/-0)
src/runtime/util/item_iterator.h (+3/-0)
src/runtime/visitors/planiter_visitor_impl_code.h (+3/-0)
src/runtime/visitors/planiter_visitor_impl_include.h (+2/-0)
src/runtime/visitors/pregenerated/planiter_visitor.h (+13/-3)
src/runtime/visitors/pregenerated/printer_visitor.cpp (+44/-12)
src/runtime/visitors/pregenerated/printer_visitor.h (+8/-2)
src/runtime/visitors/printer_visitor_impl.cpp (+40/-9)
src/runtime/visitors/printer_visitor_impl.h (+4/-0)
src/store/api/item.h (+36/-22)
src/store/api/iterator.h (+4/-0)
src/store/api/temp_seq.h (+5/-0)
src/store/naive/atomic_items.cpp (+7/-0)
src/store/naive/atomic_items.h (+18/-4)
src/store/naive/item.cpp (+6/-0)
src/store/naive/simple_lazy_temp_seq.cpp (+23/-1)
src/store/naive/simple_lazy_temp_seq.h (+4/-0)
src/store/naive/simple_temp_seq.cpp (+48/-0)
src/store/naive/simple_temp_seq.h (+11/-1)
src/system/zorba_properties.h (+8/-1)
src/system/zorba_properties.txt (+1/-0)
src/types/typeimpl.cpp (+5/-3)
src/types/typeimpl.h (+1/-1)
src/types/typemanagerimpl.cpp (+14/-3)
src/types/typeops.cpp (+7/-2)
src/zorbaserialization/archiver_consts.h (+18/-15)
src/zorbaserialization/class_serializer.h (+21/-14)
src/zorbaserialization/serialize_template_types.h (+4/-0)
test/apitest.cpp (+59/-4)
test/fots/CMakeLists.txt (+13/-5)
test/rbkt/ExpCompilerResults/IterPlan/zorba/collections/count_w3c_collection.iter (+1/-1)
test/rbkt/ExpCompilerResults/IterPlan/zorba/index/match_veq_06.iter (+1/-1)
test/rbkt/ExpCompilerResults/IterPlan/zorba/misc/inline_var1.iter (+1/-1)
test/rbkt/ExpCompilerResults/IterPlan/zorba/no-copy/dataguide-c.iter (+4/-4)
test/rbkt/ExpCompilerResults/IterPlan/zorba/no-copy/dataguide-nc.iter (+4/-4)
test/rbkt/ExpCompilerResults/IterPlan/zorba/no-copy/dataguide2-c.iter (+4/-4)
test/rbkt/ExpCompilerResults/IterPlan/zorba/no-copy/dataguide2-nc.iter (+4/-4)
test/rbkt/ExpCompilerResults/IterPlan/zorba/no-copy/udfs1.iter (+3/-3)
test/rbkt/ExpCompilerResults/IterPlan/zorba/optim/hoist01.iter (+1/-1)
test/rbkt/ExpCompilerResults/IterPlan/zorba/udf/udf-fib-rec2.iter (+3/-3)
test/rbkt/ExpCompilerResults/IterPlan/zorba/udf/udf-recursive-1.iter (+6/-6)
test/rbkt/ExpCompilerResults/IterPlan/zorba/udf/udf-recursive-2.iter (+3/-3)
test/rbkt/ExpCompilerResults/IterPlan/zorba/udf/udf1.iter (+1/-1)
test/rbkt/ExpCompilerResults/IterPlan/zorba/xray/ppm_10.iter (+22/-22)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-001.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-002.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-003.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-004.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-005.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-006.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-010.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-011.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-012.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-013.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-014.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-015.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-023.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-025.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-026.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-032.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-037.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-038.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-039.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/HigherOrder/hof-904.xml.res (+0/-1)
test/rbkt/ExpQueryResults/zorba/introspection/introsp-fn-7.xml.res (+1/-1)
test/rbkt/Queries/CMakeLists.txt (+17/-2)
test/rbkt/Queries/w3c_known_failures.txt (+4/-0)
test/rbkt/Queries/w3c_known_failures_XQueryX.txt (+4/-0)
test/rbkt/Queries/zorba/HigherOrder/hof-001.xq (+0/-13)
test/rbkt/Queries/zorba/HigherOrder/hof-002.xq (+0/-17)
test/rbkt/Queries/zorba/HigherOrder/hof-003.lib (+0/-10)
test/rbkt/Queries/zorba/HigherOrder/hof-003.xq (+0/-11)
test/rbkt/Queries/zorba/HigherOrder/hof-004.xq (+0/-9)
test/rbkt/Queries/zorba/HigherOrder/hof-023.xq (+0/-11)
test/rbkt/Queries/zorba/HigherOrder/hof-025.xq (+0/-11)
test/rbkt/Queries/zorba/HigherOrder/hof-026.xq (+0/-17)
test/rbkt/Queries/zorba/HigherOrder/hof-032.xq (+0/-10)
test/rbkt/Queries/zorba/HigherOrder/hof-037.xq (+0/-17)
test/rbkt/Queries/zorba/HigherOrder/hof-038.xq (+0/-18)
test/rbkt/Queries/zorba/HigherOrder/hof-039.xq (+0/-22)
test/rbkt/Queries/zorba/HigherOrder/hof-101.xq.failing (+0/-7)
test/rbkt/Queries/zorba/HigherOrder/hof-901.spec (+0/-1)
test/rbkt/Queries/zorba/HigherOrder/hof-901.xq (+0/-13)
test/rbkt/Queries/zorba/HigherOrder/hof-902.spec (+0/-1)
test/rbkt/Queries/zorba/HigherOrder/hof-902.xq (+0/-13)
test/rbkt/Queries/zorba/HigherOrder/hof-904.xq (+0/-13)
test/rbkt/Queries/zorba/HigherOrder/hof-905.spec (+0/-1)
test/rbkt/Queries/zorba/HigherOrder/hof-905.xq (+0/-13)
test/rbkt/Queries/zorba/HigherOrder/hof-906.spec (+0/-1)
test/rbkt/Queries/zorba/HigherOrder/hof-906.xq (+0/-13)
test/rbkt/Queries/zorba/HigherOrder/hof-907.spec (+0/-1)
test/rbkt/Queries/zorba/HigherOrder/hof-907.xq (+0/-13)
test/rbkt/Queries/zorba/HigherOrder/hof-908.spec (+0/-1)
test/rbkt/Queries/zorba/HigherOrder/hof-908.xq (+0/-13)
test/rbkt/Queries/zorba/HigherOrder/hof-909.spec (+0/-1)
test/rbkt/Queries/zorba/HigherOrder/hof-909.xq (+0/-13)
test/rbkt/Queries/zorba/HigherOrder/userdefined.xsd (+0/-62)
To merge this branch: bzr merge lp:~nbrinza/zorba/hof
Reviewer Review Type Date Requested Status
Nicolae Brinza Pending
Review via email: mp+151635@code.launchpad.net

This proposal supersedes a proposal from 2013-03-02.

This proposal has been superseded by a proposal from 2013-03-04.

Commit message

Implementation of higher order functions.

Description of the change

Implementation of higher order functions.

To post a comment you must log in.
Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote : Posted in a previous version of this proposal

Attempt to merge into lp:zorba failed due to conflicts:

text conflict in test/rbkt/ExpCompilerResults/IterPlan/zorba/optim/hoist01.iter

Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

Validation queue starting for merge proposal.
Log at: http://zorbatest.lambda.nu:8080/remotequeue/hof-2013-03-04T22-44-26.059Z/log.html

Revision history for this message
Zorba Build Bot (zorba-buildbot) wrote :

The attempt to merge lp:~nbrinza/zorba/hof into lp:zorba failed. Below is the output from the failed tests.

CMake Error at /home/ceej/zo/testing/zorbatest/tester/TarmacLander.cmake:275 (message):
  Validation queue job hof-2013-03-04T22-44-26.059Z is finished. The final
  status was:

  No tests were run - build or configure step must have failed.

  Not commiting changes.

Error in read script: /home/ceej/zo/testing/zorbatest/tester/TarmacLander.cmake

lp:~nbrinza/zorba/hof updated
10699. By Nicolae Brinza

Cleanup of HoF work

10700. By Nicolae Brinza

Updated iterator tree for the gflwor_04.iter test

10701. By Nicolae Brinza

HoF cleanup

10702. By Nicolae Brinza

Fixed issues reported by Markos.

10703. By Nicolae Brinza

Removed HoFs from the features system. They are now always supported.

10704. By Nicolae Brinza

Removed redundant arity checks

10705. By Nicolae Brinza

Enabled FOTS HoF tests

10706. By Nicolae Brinza

Fixed more fn:function-lookup() tests.

10707. By Nicolae Brinza

Fixed a small error in the code

10708. By Nicolae Brinza

Better static typing for dynamic_function_invocation_expr

10709. By Nicolae Brinza

The testdriver no longer attempts to set enable the HoF feature

10710. By Nicolae Brinza

dynamic_function_invocation_expr's flwor translation now uses allowing empty, so that the flow reaches the iterator and the proper error is thrown

10711. By Nicolae Brinza

Merged with Zorba trunk

10712. By Nicolae Brinza

Removed more obsolete HoF feature enabling code.

10713. By Nicolae Brinza

HoF work in progress

10714. By Nicolae Brinza

Pulled some changes from the hof-merge branch

10715. By Nicolae Brinza

Fixed fn:function-name() for coerced functions.

10716. By Nicolae Brinza

Pulled changes from the hof-merge branch

Unmerged revisions

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'include/zorba/pregenerated/diagnostic_list.h'
--- include/zorba/pregenerated/diagnostic_list.h 2013-02-26 04:12:43 +0000
+++ include/zorba/pregenerated/diagnostic_list.h 2013-03-04 23:04:24 +0000
@@ -64,6 +64,8 @@
6464
65extern ZORBA_DLL_PUBLIC XQueryErrorCode XQTY0086;65extern ZORBA_DLL_PUBLIC XQueryErrorCode XQTY0086;
6666
67extern ZORBA_DLL_PUBLIC XQueryErrorCode XQTY0105;
68
67extern ZORBA_DLL_PUBLIC XQueryErrorCode XQST0009;69extern ZORBA_DLL_PUBLIC XQueryErrorCode XQST0009;
6870
69extern ZORBA_DLL_PUBLIC XQueryErrorCode XQST0012;71extern ZORBA_DLL_PUBLIC XQueryErrorCode XQST0012;
@@ -300,6 +302,8 @@
300302
301extern ZORBA_DLL_PUBLIC XQueryErrorCode FOUT1190;303extern ZORBA_DLL_PUBLIC XQueryErrorCode FOUT1190;
302304
305extern ZORBA_DLL_PUBLIC XQueryErrorCode FOFL0001;
306
303extern ZORBA_DLL_PUBLIC XQueryErrorCode XUST0001;307extern ZORBA_DLL_PUBLIC XQueryErrorCode XUST0001;
304308
305extern ZORBA_DLL_PUBLIC XQueryErrorCode XUST0002;309extern ZORBA_DLL_PUBLIC XQueryErrorCode XUST0002;
306310
=== modified file 'modules/w3c/pregenerated/xqt-errors.xq'
--- modules/w3c/pregenerated/xqt-errors.xq 2013-02-26 04:12:43 +0000
+++ modules/w3c/pregenerated/xqt-errors.xq 2013-03-04 23:04:24 +0000
@@ -203,6 +203,14 @@
203203
204(:~204(:~
205 :205 :
206 : It is a type error if the content sequence in an element constructor contains a function item.
207 :
208 : @see http://www.w3.org/2005/xqt-errors
209:)
210declare variable $err:XQTY0105 as xs:QName := fn:QName($err:NS, "err:XQTY0105");
211
212(:~
213 :
206 : An implementation that does not support the Schema Import Feature must214 : An implementation that does not support the Schema Import Feature must
207 : raise a static error if a Prolog contains a schema import.215 : raise a static error if a Prolog contains a schema import.
208 : 216 :
@@ -1303,6 +1311,14 @@
13031311
1304(:~1312(:~
1305 :1313 :
1314 : This error is raised if the fn:function-lookup returns a context-dependent function and the context-dependent function is then called.
1315 :
1316 : @see http://www.w3.org/2005/xqt-errors
1317:)
1318declare variable $err:FOFL0001 as xs:QName := fn:QName($err:NS, "err:FOFL0001");
1319
1320(:~
1321 :
1306 : It is a static error if an updating expression is used in any position1322 : It is a static error if an updating expression is used in any position
1307 : other than one of the following:1323 : other than one of the following:
1308 : - The topmost expression in the body of a query.1324 : - The topmost expression in the body of a query.
13091325
=== modified file 'src/api/serialization/serializer.cpp'
--- src/api/serialization/serializer.cpp 2013-02-26 04:12:43 +0000
+++ src/api/serialization/serializer.cpp 2013-03-04 23:04:24 +0000
@@ -455,6 +455,11 @@
455455
456 thePreviousItemKind = PREVIOUS_ITEM_WAS_TEXT;456 thePreviousItemKind = PREVIOUS_ITEM_WAS_TEXT;
457 }457 }
458 else if (item->isFunction()) // TODO: what about function items serialization?
459 {
460 // throw XQUERY_EXCEPTION(err::SENR0001, ERROR_PARAMS(item->show(), "function item node"));
461 tr << item->show();
462 }
458 else if (!theEmitAttributes 463 else if (!theEmitAttributes
459 && item->getNodeKind() == store::StoreConsts::attributeNode)464 && item->getNodeKind() == store::StoreConsts::attributeNode)
460 {465 {
461466
=== modified file 'src/compiler/api/compiler_api.cpp'
--- src/compiler/api/compiler_api.cpp 2013-02-07 17:24:36 +0000
+++ src/compiler/api/compiler_api.cpp 2013-03-04 23:04:24 +0000
@@ -273,6 +273,9 @@
273 lTimer);273 lTimer);
274274
275 rootExpr = optimize(rootExpr);275 rootExpr = optimize(rootExpr);
276
277 // TODO: remove debug message
278// std::cerr << "==========================================\nOptimizations finished" << std::endl;
276 }279 }
277280
278#if 0281#if 0
@@ -355,7 +358,7 @@
355 // are actually non-deterministic and mark them as such. This has to be done358 // are actually non-deterministic and mark them as such. This has to be done
356 // before optimization.359 // before optimization.
357 udfGraph.inferDeterminism();360 udfGraph.inferDeterminism();
358361
359 if (theCompilerCB->theConfig.opt_level <= CompilerCB::config::O0)362 if (theCompilerCB->theConfig.opt_level <= CompilerCB::config::O0)
360 {363 {
361 theCompilerCB->setPhase(CompilerCB::NONE);364 theCompilerCB->setPhase(CompilerCB::NONE);
362365
=== modified file 'src/compiler/api/compilercb.cpp'
--- src/compiler/api/compilercb.cpp 2013-02-07 17:24:36 +0000
+++ src/compiler/api/compilercb.cpp 2013-03-04 23:04:24 +0000
@@ -127,6 +127,8 @@
127{127{
128 if (timeout >= 0)128 if (timeout >= 0)
129 theHaveTimeout = true;129 theHaveTimeout = true;
130
131// std::cerr << "--> created CompilerCB: " << this << std::endl;
130}132}
131133
132134
@@ -155,6 +157,7 @@
155 theConfig(cb.theConfig),157 theConfig(cb.theConfig),
156 theEM(new ExprManager(this))158 theEM(new ExprManager(this))
157{159{
160// std::cerr << "--> created CompilerCB: " << this << std::endl;
158}161}
159162
160163
@@ -185,6 +188,8 @@
185{188{
186 delete theEM;189 delete theEM;
187 theSctxMap.clear();190 theSctxMap.clear();
191
192// std::cerr << "--> deleted ~CompilerCB: " << this << std::endl;
188}193}
189194
190195
191196
=== modified file 'src/compiler/codegen/plan_visitor.cpp'
--- src/compiler/codegen/plan_visitor.cpp 2013-02-26 04:12:43 +0000
+++ src/compiler/codegen/plan_visitor.cpp 2013-03-04 23:04:24 +0000
@@ -466,29 +466,185 @@
466void end_visit(function_item_expr& v)466void end_visit(function_item_expr& v)
467{467{
468 CODEGEN_TRACE_OUT("");468 CODEGEN_TRACE_OUT("");
469 store::Item_t lQName = v.get_qname();469
470 store::Item_t lFItem;470// std::cerr << "--> plan_visitor() end_visit of function_item_expr" << std::endl;
471471
472 bool isInline = (lQName == 0);472 DynamicFunctionInfo* fnInfo = v.get_dynamic_fn_info();
473473 fnInfo->theCCB = theCCB;
474 if (!isInline)474 fnInfo->theMustDeleteCCB = false;
475 fnInfo->theLoc = qloc;
476 fnInfo->theFunction = v.get_function();
477 fnInfo->theQName = v.get_qname();
478 fnInfo->theArity = v.get_arity();
479
480 if (v.is_inline())
475 {481 {
476 // literal function item482 for (csize i = 0; i < v.get_subst_vars_values().size(); ++i)
477 lFItem = new FunctionItem(theCCB, sctx, &v);483 {
484 if (!v.get_is_global_var()[i])
485 fnInfo->theScopedVarsIterators.push_back(pop_itstack());
486
487 // TODO: cleanup debug info
488 /*
489 PlanIter_t varIter = NULL;
490 PlanIter_t enclosedIter = NULL;
491
492 store::Item* var_qname = NULL;
493 if (dynamic_cast<LetVarIterator*>(varIter.getp()) != NULL)
494 var_qname = dynamic_cast<LetVarIterator*>(varIter.getp())->getVarName();
495 else if (dynamic_cast<ForVarIterator*>(varIter.getp()) != NULL)
496 var_qname = dynamic_cast<ForVarIterator*>(varIter.getp())->getVarName();
497 else
498 var_qname = v.get_scoped_vars_names()[i].getp();
499
500 std::cerr << "--> PlanVisitor function_item_expr: var name: " << v.get_scoped_vars_names()[i]->show()
501 << " global: " << v.get_is_global_var()[i]
502 << " with iter: "
503 << (enclosedIter.getp()?enclosedIter->toString() : "NULL");
504 if (dynamic_cast<LetVarIterator*>(enclosedIter.getp()) != NULL)
505 std::cerr << " var name: " << dynamic_cast<LetVarIterator*>(enclosedIter.getp())->getVarName()->show();
506 else if (dynamic_cast<ForVarIterator*>(enclosedIter.getp()) != NULL)
507 std::cerr << " var name: " << dynamic_cast<ForVarIterator*>(enclosedIter.getp())->getVarName()->show();
508 else
509 std::cerr << " var name (from the expr, not the iterator): " << (var_qname? var_qname->show() : "NULL");
510 std::cerr << std::endl;
511 */
512 }
513
514 std::reverse(fnInfo->theScopedVarsIterators.begin(), fnInfo->theScopedVarsIterators.end());
478 }515 }
479 else516
517
518 // This portion is taken from the eval iterator
480 {519 {
481 // inline function520 // Create the "import" sctx. The importOuterEnv() method (called below) will
482 std::vector<PlanIter_t> lVariableValues;521 // register into the importSctx (a) the outer vars of the eval query and (b)
483 size_t lSize = v.get_vars().size();522 // the expression-level ns bindings of the outer query at the place where
484 for (size_t i = 0; i < lSize; ++i)523 // the eval call appears at.
524 // static_context* importSctx = sctx->create_child_context();
525
526 // Create the root sctx for the eval query
527 // static_context* evalSctx = importSctx->create_child_context();
528
529 // Create the ccb for the eval query
530
531 // fnInfo->theCCBHolder.reset(new CompilerCB(*theCCB));
532 // fnInfo->theCCB = fnInfo->theCCBHolder.get();
533 // fnInfo->theCCB->theRootSctx = evalSctx;
534 // (fnInfo->theCCB->theSctxMap)[1] = evalSctx;
535
536 // Create the dynamic context for the eval query
537 // std::auto_ptr<dynamic_context> evalDctx;
538 // evalDctx.reset(new dynamic_context(planState.theGlobalDynCtx));
539 // evalDctx.reset(new dynamic_context());
540
541 // Import the outer environment.
542 // importOuterEnv(planState, evalCCB.get(), importSctx, evalDctx.get());
543
544 // Set the values for the (explicit) external vars of the eval query
545 // setExternalVariables(evalCCB.get(), importSctx, evalDctx.get());
546
547
548 // std::cerr << "--> " << toString() << ": creating function item with params: " << std::endl;
549 // for (csize i=0; i<theChildren.size(); i++)
550 // std::cerr << " " << (theDynamicFunctionInfo->theScopedVarsNames[i].getp() ? theDynamicFunctionInfo->theScopedVarsNames[i]->show() : "") << std::endl;
551
552 // std::cerr << "--> the body before: " << static_cast<user_function*>(theDynamicFunctionInfo->theFunction.getp())->getBody()->toString() << std::endl;
553
554 // result = new FunctionItem(theDynamicFunctionInfo, evalCCB.release(), evalDctx.release());
555
556 // std::cerr << "--> sctx: " << sctx->toString() << std::endl;
557 // std::cerr << "--> closureSctx: " << fnInfo->theClosureSctx->toString() << std::endl;
558
559 // ulong maxOuterVarId = 1;
560 // ++maxOuterVarId; // TODO: get it from the plan_visitor
561
562 csize curChild = -1;
563 csize numOuterVars = fnInfo->theScopedVarsNames.size();
564 for (csize i = 0; i < numOuterVars; ++i)
485 {565 {
486 lVariableValues.push_back(pop_itstack());566 var_expr* ve = theCCB->theEM->create_var_expr(fnInfo->theClosureSctx,
567 NULL,
568 qloc,
569 var_expr::hof_var,
570 fnInfo->theScopedVarsNames[i].getp());
571
572 // ve->set_type(theOuterVarTypes[i]); TODO: get types
573 if (!fnInfo->theIsGlobalVar[i])
574 {
575 ++curChild;
576 // store::Iterator_t iter = new PlanIteratorWrapper(theChildren[curChild], planState);
577 // evalDctx->add_variable(maxOuterVarId, iter);
578 // ve->set_unique_id(maxOuterVarId);
579
580 if (fnInfo->theSubstVarsValues[i] != NULL
581 &&
582 fnInfo->theSubstVarsValues[i]->get_unique_id() == 0)
583 {
584 fnInfo->theSubstVarsValues[i]->set_var_info(NULL);
585 // fnInfo->theSubstVarsValues[i]->set_unique_id(maxOuterVarId);
586 fnInfo->theSubstVarsValues[i]->set_unique_id(theNextDynamicVarId++);
587 }
588
589 // std::cerr << "--> plan_visitor: " << fnInfo->theQName->toString() << " var: " << fnInfo->theScopedVarsNames[i]->toString() << " has id: " << fnInfo->theSubstVarsValues[i]->get_unique_id() << std::endl;
590
591 ve->set_unique_id(fnInfo->theSubstVarsValues[i]->get_unique_id());
592 fnInfo->theVarId[i] = fnInfo->theSubstVarsValues[i]->get_unique_id();
593
594 // ++maxOuterVarId;
595 // theNextDynamicVarId++;
596 }
597 else
598 {
599 // static_context* outerSctx = importSctx->get_parent();
600 static_context* outerSctx = fnInfo->theClosureSctx->get_parent();
601
602 VarInfo* outerGlobalVar = outerSctx->lookup_var(fnInfo->theScopedVarsNames[i]);
603
604 ulong outerGlobalVarId = 0;
605
606 if (outerGlobalVar)
607 {
608 outerGlobalVarId = outerGlobalVar->getId();
609 }
610 else
611 {
612 // std::cerr << "--> searching for var: " << theDynamicFunctionInfo->theScopedVarsNames[i]->toString() << std::endl;
613 for (csize j=0; j<fnInfo->theSubstVarsValues.size(); j++)
614 {
615 // std::cerr << " substVar: " << (theDynamicFunctionInfo->theSubstVarsValues[j] ? theDynamicFunctionInfo->theSubstVarsValues[j]->toString() : "NULL");
616 if (fnInfo->theSubstVarsValues[j]->get_name()->equals(fnInfo->theScopedVarsNames[i].getp()))
617 outerGlobalVarId = fnInfo->theSubstVarsValues[j]->get_unique_id();
618 }
619 }
620
621 // ZORBA_ASSERT(outerGlobalVar);
622
623 // std::cerr << "--> importOuterEnv(): outerSctx: " << outerSctx->toString() << std::endl;
624 // std::cerr << "--> plan_visitor: " << fnInfo->theQName->toString() << " updating id for subst_var: " << (fnInfo->theSubstVarsValues[i] ? fnInfo->theSubstVarsValues[i]->toString() : "NULL\n");
625
626 if (fnInfo->theSubstVarsValues[i] != NULL
627 &&
628 fnInfo->theSubstVarsValues[i]->get_unique_id() == 0)
629 {
630 fnInfo->theSubstVarsValues[i]->set_unique_id(outerGlobalVarId);
631 }
632
633 ve->set_unique_id(outerGlobalVarId);
634
635 fnInfo->theVarId[i] = outerGlobalVarId;
636 }
637
638 // importSctx->bind_var(ve, qloc);
639 // fnInfo->theClosureSctx->bind_var(ve, qloc);
487 }640 }
488 lFItem = new FunctionItem(theCCB, sctx, &v, lVariableValues);
489 }641 }
490642
491 push_itstack(new SingletonIterator (sctx, qloc, lFItem));643 // std::cerr << "--> the body now: " << static_cast<user_function*>(fnInfo->theFunction.getp())->getBody()->toString() << std::endl;
644
645 PlanIter_t tmp = new DynamicFunctionIterator(sctx, qloc, fnInfo);
646 // std::cerr << "--> plan_visitor: pushing iter: " << tmp->toString() << std::endl;
647 push_itstack(tmp);
492}648}
493649
494650
@@ -507,18 +663,49 @@
507663
508 ulong numArgs = (ulong)v.get_args().size() + 1;664 ulong numArgs = (ulong)v.get_args().size() + 1;
509665
510 std::vector<PlanIter_t> argIters(numArgs);666 std::vector<PlanIter_t> argIters;
511667
512 for (size_t i = 1; i < numArgs; ++i)668 bool isPartialApply = false;
513 {669
514 argIters[i] = pop_itstack();670 // the arguments are reversed on the stack
515 }671 for (csize i=0; i<v.get_dot_vars().size(); i++)
516672 {
517 argIters[0] = pop_itstack();673 PlanIter_t iter = pop_itstack();
518674 argIters.push_back(iter);
519 push_itstack(new DynamicFnCallIterator(sctx, qloc, argIters));675 // std::cerr << "--> plan_visitor dot var iterator: " << iter->toString() << std::endl; // TODO
520}676 }
521677
678 for (size_t i = 0; i < numArgs-1; ++i)
679 {
680 if (v.get_args()[i]->get_expr_kind() == argument_placeholder_expr_kind)
681 isPartialApply = true;
682
683 argIters.push_back(pop_itstack());
684 }
685
686 argIters.push_back(pop_itstack());
687
688 std::reverse(argIters.begin(), argIters.end());
689
690 push_itstack(new DynamicFnCallIterator(sctx, qloc, argIters, v.get_dot_vars().size(), isPartialApply));
691}
692
693
694/***************************************************************************//**
695
696********************************************************************************/
697bool begin_visit(argument_placeholder_expr& v)
698{
699 CODEGEN_TRACE_IN("");
700 return true;
701}
702
703void end_visit(argument_placeholder_expr& v)
704{
705 CODEGEN_TRACE_OUT("");
706 PlanIter_t it = new ArgumentPlaceholderIterator(sctx, qloc);
707 push_itstack(it);
708}
522709
523/***************************************************************************//**710/***************************************************************************//**
524711
@@ -743,6 +930,8 @@
743930
744 bool isForVar = false;931 bool isForVar = false;
745932
933 // std::cerr << "--> general_var_codegen() on var: " << var.toString();
934
746 switch (var.get_kind())935 switch (var.get_kind())
747 {936 {
748 case var_expr::for_var:937 case var_expr::for_var:
@@ -836,6 +1025,7 @@
8361025
837 case var_expr::arg_var:1026 case var_expr::arg_var:
838 {1027 {
1028 ZORBA_ASSERT(arg_var_iter_map != NULL);
839 PlanIter_t iter = base_var_codegen(var, *arg_var_iter_map);1029 PlanIter_t iter = base_var_codegen(var, *arg_var_iter_map);
840 push_itstack(iter);1030 push_itstack(iter);
841 break;1031 break;
@@ -856,6 +1046,7 @@
856 }1046 }
8571047
858 case var_expr::prolog_var:1048 case var_expr::prolog_var:
1049 case var_expr::hof_var:
859 {1050 {
860 push_itstack(new CtxVarIterator(sctx,1051 push_itstack(new CtxVarIterator(sctx,
861 qloc,1052 qloc,
@@ -3577,6 +3768,11 @@
3577#ifndef NDEBUG3768#ifndef NDEBUG
3578 if (!itstack.empty())3769 if (!itstack.empty())
3579 {3770 {
3771 std::cout << "Plan_visitor partial iterator tree:\n"; // TODO: remove this debug output
3772 XMLIterPrinter vp(std::cout);
3773 print_iter_plan(vp, res);
3774 std::cout<< std::endl;
3775
3580 std::cout << "\nPlan_visitor stack still contains "3776 std::cout << "\nPlan_visitor stack still contains "
3581 << itstack.size() << " entries: " << std::endl;3777 << itstack.size() << " entries: " << std::endl;
3582 while (!itstack.empty())3778 while (!itstack.empty())
@@ -3689,9 +3885,37 @@
3689 hash64map<std::vector<LetVarIter_t> *>* arg_var_map)3885 hash64map<std::vector<LetVarIter_t> *>* arg_var_map)
3690{3886{
3691 plan_visitor c(ccb, nextDynamicVarId, arg_var_map);3887 plan_visitor c(ccb, nextDynamicVarId, arg_var_map);
3888
3889 /*
3890 std::cerr << "------------------- codegen: -------------------\n";
3891 if (dynamic_cast<function_item_expr*>(root) != NULL)
3892 std::cerr << "--> function_item_expr " << root->get_loc() << std::endl;
3893
3894 std::cerr << std::endl;
3895 std::cerr << root->toString() << std::endl;
3896 std::cerr << "------------------------------------------------\n";
3897 */
3898
3692 root->accept(c);3899 root->accept(c);
3693 PlanIter_t result = c.result();3900 PlanIter_t result = c.result();
36943901
3902 /*
3903 std::cerr << "--> arg_var_map: " << arg_var_map << " size: " << (arg_var_map==NULL?0 : arg_var_map->size()) << " iterators: ";
3904 if (arg_var_map != NULL)
3905 {
3906 csize i = 0;
3907 for (checked_vector<hash64map<std::vector<LetVarIter_t> *>::entry>::const_iterator it = arg_var_map->begin(); it != arg_var_map->end(); ++it, ++i)
3908 {
3909 var_expr* var = (var_expr*)it->key;
3910 std::cerr << std::endl << "--> [" << i << "] " << var->toString() << "--> [" << i << "] referenced by:";
3911 for (csize j=0; j < it->val->size(); j++)
3912 std::cerr << " " << (*it->val)[j]->getId() << " = LetVarIterator";
3913 }
3914 }
3915 std::cerr << std::endl << "------------------------------------------------\n";
3916 */
3917
3918
3695 if (result != NULL &&3919 if (result != NULL &&
3696 descr != NULL &&3920 descr != NULL &&
3697 Properties::instance()->printIteratorTree())3921 Properties::instance()->printIteratorTree())
36983922
=== modified file 'src/compiler/expression/abstract_expr_visitor.h'
--- src/compiler/expression/abstract_expr_visitor.h 2013-02-07 17:24:36 +0000
+++ src/compiler/expression/abstract_expr_visitor.h 2013-03-04 23:04:24 +0000
@@ -1,12 +1,12 @@
1/*1/*
2 * Copyright 2006-2008 The FLWOR Foundation.2 * Copyright 2006-2008 The FLWOR Foundation.
3 * 3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at6 * You may obtain a copy of the License at
7 * 7 *
8 * http://www.apache.org/licenses/LICENSE-2.08 * http://www.apache.org/licenses/LICENSE-2.0
9 * 9 *
10 * Unless required by applicable law or agreed to in writing, software10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -22,18 +22,18 @@
22#include "compiler/expression/expr_visitor.h"22#include "compiler/expression/expr_visitor.h"
2323
24/*______________________________________________________________________24/*______________________________________________________________________
25| 25|
26| Design note: Visitor pattern. See, for example:26| Design note: Visitor pattern. See, for example:
27| "Modern C++ Design" by Andrei Alexandrescu,27| "Modern C++ Design" by Andrei Alexandrescu,
28| Addison Wesley (2001), Chapter 10.28| Addison Wesley (2001), Chapter 10.
29|_______________________________________________________________________*/29|_______________________________________________________________________*/
3030
31namespace zorba 31namespace zorba
32{32{
3333
34class abstract_expr_visitor : public expr_visitor34class abstract_expr_visitor : public expr_visitor
35{35{
36public: 36public:
37 virtual ~abstract_expr_visitor() {}37 virtual ~abstract_expr_visitor() {}
3838
39public:39public:
@@ -80,6 +80,7 @@
80 EXPR_VISITOR_METHODS(trycatch_expr);80 EXPR_VISITOR_METHODS(trycatch_expr);
81 EXPR_VISITOR_METHODS(function_item_expr);81 EXPR_VISITOR_METHODS(function_item_expr);
82 EXPR_VISITOR_METHODS(dynamic_function_invocation_expr);82 EXPR_VISITOR_METHODS(dynamic_function_invocation_expr);
83 EXPR_VISITOR_METHODS(argument_placeholder_epxr);
8384
84 EXPR_VISITOR_METHODS (delete_expr);85 EXPR_VISITOR_METHODS (delete_expr);
85 EXPR_VISITOR_METHODS (insert_expr);86 EXPR_VISITOR_METHODS (insert_expr);
8687
=== modified file 'src/compiler/expression/expr_base.cpp'
--- src/compiler/expression/expr_base.cpp 2013-02-21 16:34:45 +0000
+++ src/compiler/expression/expr_base.cpp 2013-03-04 23:04:24 +0000
@@ -288,6 +288,13 @@
288 return oss.str();288 return oss.str();
289}289}
290290
291/*******************************************************************************
292 to mirror the Item's class show() method
293********************************************************************************/
294std::string expr::show() const
295{
296 return toString();
297}
291298
292/*******************************************************************************299/*******************************************************************************
293300
294301
=== modified file 'src/compiler/expression/expr_base.h'
--- src/compiler/expression/expr_base.h 2013-02-13 12:53:50 +0000
+++ src/compiler/expression/expr_base.h 2013-03-04 23:04:24 +0000
@@ -70,6 +70,7 @@
7070
71 fo_expr_kind,71 fo_expr_kind,
72 dynamic_function_invocation_expr_kind,72 dynamic_function_invocation_expr_kind,
73 argument_placeholder_expr_kind,
73 function_item_expr_kind,74 function_item_expr_kind,
7475
75 castable_expr_kind,76 castable_expr_kind,
@@ -269,6 +270,8 @@
269270
270 std::string toString() const;271 std::string toString() const;
271272
273 std::string show() const; // to mirror the Item's class show() method
274
272public:275public:
273 //276 //
274 void setVisitId(uint8_t id) { theVisitId = id; }277 void setVisitId(uint8_t id) { theVisitId = id; }
275278
=== modified file 'src/compiler/expression/expr_classes.h'
--- src/compiler/expression/expr_classes.h 2013-02-07 17:24:36 +0000
+++ src/compiler/expression/expr_classes.h 2013-03-04 23:04:24 +0000
@@ -50,6 +50,7 @@
50 class trycatch_expr;50 class trycatch_expr;
51 class function_item_expr;51 class function_item_expr;
52 class dynamic_function_invocation_expr;52 class dynamic_function_invocation_expr;
53 class argument_placeholder_expr;
5354
54 class insert_expr;55 class insert_expr;
55 class delete_expr;56 class delete_expr;
5657
=== modified file 'src/compiler/expression/expr_clone.cpp'
--- src/compiler/expression/expr_clone.cpp 2013-02-21 16:34:45 +0000
+++ src/compiler/expression/expr_clone.cpp 2013-03-04 23:04:24 +0000
@@ -31,6 +31,7 @@
31#include "compiler/api/compilercb.h"31#include "compiler/api/compilercb.h"
3232
33#include "functions/function.h"33#include "functions/function.h"
34#include "functions/udf.h"
3435
35#include "diagnostics/xquery_diagnostics.h"36#include "diagnostics/xquery_diagnostics.h"
36#include "diagnostics/util_macros.h"37#include "diagnostics/util_macros.h"
@@ -147,7 +148,7 @@
147148
148 std::vector<expr*> names;149 std::vector<expr*> names;
149 std::vector<expr*> values;150 std::vector<expr*> values;
150 151
151 names.reserve(e->theNames.size());152 names.reserve(e->theNames.size());
152 values.reserve(e->theValues.size());153 values.reserve(e->theValues.size());
153154
@@ -333,7 +334,7 @@
333 }334 }
334 case dynamic_function_invocation_expr_kind:335 case dynamic_function_invocation_expr_kind:
335 {336 {
336 const dynamic_function_invocation_expr* e = 337 const dynamic_function_invocation_expr* e =
337 static_cast<const dynamic_function_invocation_expr*>(this);338 static_cast<const dynamic_function_invocation_expr*>(this);
338339
339 checked_vector<expr*> newArgs;340 checked_vector<expr*> newArgs;
@@ -344,12 +345,26 @@
344 newArgs.push_back((*ite)->clone(udf, subst));345 newArgs.push_back((*ite)->clone(udf, subst));
345 }346 }
346 347
348 checked_vector<expr*> newDotVars;
349 for (checked_vector<expr*>::const_iterator ite = e->theDotVars.begin();
350 ite != e->theDotVars.end();
351 ++ite)
352 {
353 newDotVars.push_back((*ite)->clone(udf, subst));
354 }
355
347 newExpr = theCCB->theEM->356 newExpr = theCCB->theEM->
348 create_dynamic_function_invocation_expr(theSctx,357 create_dynamic_function_invocation_expr(theSctx,
349 udf,358 udf,
350 theLoc,359 theLoc,
351 e->theExpr->clone(udf, subst),360 e->theExpr->clone(udf, subst),
352 newArgs);361 newArgs,
362 newDotVars);
363 break;
364 }
365 case argument_placeholder_expr_kind:
366 {
367 newExpr = theCCB->theEM->create_argument_placeholder_expr(theSctx, udf, theLoc);
353 break;368 break;
354 }369 }
355 case function_item_expr_kind:370 case function_item_expr_kind:
@@ -359,17 +374,24 @@
359 function_item_expr* cloneExpr = theCCB->theEM->374 function_item_expr* cloneExpr = theCCB->theEM->
360 create_function_item_expr(theSctx,375 create_function_item_expr(theSctx,
361 udf,376 udf,
362 theLoc,377 get_loc(),
363 e->theFunction->getName(),378 e->theDynamicFunctionInfo->theClosureSctx,
364 e->theFunction.getp(),379 e->theDynamicFunctionInfo->theFunction,
365 e->theArity);380 e->theDynamicFunctionInfo->theFunction->getName(),
381 e->theDynamicFunctionInfo->theArity,
382 e->is_inline(),
383 e->needs_context_item());
366384
367 std::vector<expr*> lNewVariables;385 std::vector<expr*>::const_iterator varIter = e->theDynamicFunctionInfo->theScopedVarsValues.begin();
368 for (std::vector<expr*>::const_iterator ite = e->theScopedVariables.begin();386 std::vector<var_expr*>::const_iterator substVarIter = e->theDynamicFunctionInfo->theSubstVarsValues.begin();
369 ite != e->theScopedVariables.end();387 std::vector<store::Item_t>::const_iterator nameIter = e->theDynamicFunctionInfo->theScopedVarsNames.begin();
370 ++ite)388 std::vector<int>::const_iterator isGlobalIter = e->theDynamicFunctionInfo->theIsGlobalVar.begin();
389 for (; varIter != e->theDynamicFunctionInfo->theScopedVarsValues.end(); ++varIter, ++substVarIter, ++nameIter, ++isGlobalIter)
371 {390 {
372 cloneExpr->add_variable((*ite)->clone(udf, subst));391 cloneExpr->add_variable((*varIter) ? (*varIter)->clone(udf, subst) : NULL,
392 (*substVarIter) ? static_cast<var_expr*>((*substVarIter)->clone(udf, subst)) : NULL,
393 *nameIter,
394 *isGlobalIter);
373 }395 }
374396
375 newExpr = cloneExpr;397 newExpr = cloneExpr;
@@ -581,7 +603,7 @@
581603
582 transform_expr* cloneExpr = theCCB->theEM->604 transform_expr* cloneExpr = theCCB->theEM->
583 create_transform_expr(theSctx, udf, theLoc);605 create_transform_expr(theSctx, udf, theLoc);
584 606
585 for (std::vector<copy_clause*>::const_iterator ite = e->theCopyClauses.begin();607 for (std::vector<copy_clause*>::const_iterator ite = e->theCopyClauses.begin();
586 ite != e->theCopyClauses.end();608 ite != e->theCopyClauses.end();
587 ++ite)609 ++ite)
@@ -686,10 +708,10 @@
686 for (; ite != end; ++ite)708 for (; ite != end; ++ite)
687 {709 {
688 assert(subst.find(*ite) != subst.end());710 assert(subst.find(*ite) != subst.end());
689 711
690 clonedExits.push_back(subst[*ite]);712 clonedExits.push_back(subst[*ite]);
691 }713 }
692 714
693 newExpr = theCCB->theEM->715 newExpr = theCCB->theEM->
694 create_exit_catcher_expr(theSctx, udf, theLoc, clonedInput, clonedExits);716 create_exit_catcher_expr(theSctx, udf, theLoc, clonedInput, clonedExits);
695717
696718
=== modified file 'src/compiler/expression/expr_iter.cpp'
--- src/compiler/expression/expr_iter.cpp 2013-02-21 16:34:45 +0000
+++ src/compiler/expression/expr_iter.cpp 2013-03-04 23:04:24 +0000
@@ -195,9 +195,9 @@
195195
196 theArgsIter = oc->theOrderingExprs.begin();196 theArgsIter = oc->theOrderingExprs.begin();
197 theArgsEnd = oc->theOrderingExprs.end();197 theArgsEnd = oc->theOrderingExprs.end();
198 198
199 theCurrentChild = &(*theArgsIter);199 theCurrentChild = &(*theArgsIter);
200 200
201 ++theArgsIter;201 ++theArgsIter;
202 theState = 3;202 theState = 3;
203 return;203 return;
@@ -242,7 +242,7 @@
242 while (theWincondIter < 2)242 while (theWincondIter < 2)
243 {243 {
244 window_clause* wc = static_cast<window_clause *>(*theClausesIter);244 window_clause* wc = static_cast<window_clause *>(*theClausesIter);
245 245
246 flwor_wincond* wincond = (theWincondIter == 0 ?246 flwor_wincond* wincond = (theWincondIter == 0 ?
247 wc->theWinStartCond :247 wc->theWinStartCond :
248 wc->theWinStopCond );248 wc->theWinStopCond );
@@ -269,7 +269,7 @@
269 ++theArgsIter;269 ++theArgsIter;
270 return;270 return;
271 }271 }
272 272
273 theState = 1;273 theState = 1;
274 ++theClausesIter;274 ++theClausesIter;
275 goto nextclause;275 goto nextclause;
@@ -691,10 +691,12 @@
691691
692 EXPR_ITER_BEGIN();692 EXPR_ITER_BEGIN();
693693
694 theArgsIter = fiExpr->theScopedVariables.begin();694 theArgsIter = fiExpr->theDynamicFunctionInfo->theScopedVarsValues.begin();
695 theArgsEnd = fiExpr->theScopedVariables.end();695 theArgsEnd = fiExpr->theDynamicFunctionInfo->theScopedVarsValues.end();
696 for (; theArgsIter != theArgsEnd; ++theArgsIter)696 for (; theArgsIter != theArgsEnd; ++theArgsIter)
697 {697 {
698 if ( ! *theArgsIter) // TODO: the vars values for prolog variables is null, so they have to be skipped, or the optimizer will trip and fall off. Maybe null vars values need not be remembered
699 continue;
698 EXPR_ITER_NEXT(*theArgsIter);700 EXPR_ITER_NEXT(*theArgsIter);
699 }701 }
700702
@@ -717,11 +719,26 @@
717 {719 {
718 EXPR_ITER_NEXT(*theArgsIter);720 EXPR_ITER_NEXT(*theArgsIter);
719 }721 }
722
723 theArgsIter = dfiExpr->theDotVars.begin();
724 theArgsEnd = dfiExpr->theDotVars.end();
725 for (; theArgsIter != theArgsEnd; ++theArgsIter)
726 {
727 if ( ! *theArgsIter)
728 continue;
729 EXPR_ITER_NEXT(*theArgsIter);
730 }
720731
721 EXPR_ITER_END();732 EXPR_ITER_END();
722 return;733 return;
723 }734 }
724735
736 case argument_placeholder_expr_kind:
737 {
738 theIsDone = true;
739 return;
740 }
741
725 case insert_expr_kind:742 case insert_expr_kind:
726 {743 {
727 insert_expr* insExpr = static_cast<insert_expr*>(theExpr);744 insert_expr* insExpr = static_cast<insert_expr*>(theExpr);
728745
=== modified file 'src/compiler/expression/expr_manager.cpp'
--- src/compiler/expression/expr_manager.cpp 2013-02-07 17:24:36 +0000
+++ src/compiler/expression/expr_manager.cpp 2013-03-04 23:04:24 +0000
@@ -785,14 +785,24 @@
785////////////////////////////////////////////////////////////////////////////////785////////////////////////////////////////////////////////////////////////////////
786786
787dynamic_function_invocation_expr*787dynamic_function_invocation_expr*
788ExprManager::create_dynamic_function_invocation_expr(788ExprManager::create_dynamic_function_invocation_expr(static_context* sctx,
789 static_context* sctx,
790 user_function* udf,789 user_function* udf,
791 const QueryLoc& loc,790 const QueryLoc& loc,
792 expr* anExpr,791 expr* anExpr,
793 const std::vector<expr*>& args)792 const std::vector<expr*>& args,
794{793 const std::vector<expr*>& dotVars)
795 CREATE_AND_RETURN_EXPR(dynamic_function_invocation_expr, sctx, udf, loc, anExpr, args);794{
795 CREATE_AND_RETURN_EXPR(dynamic_function_invocation_expr, sctx, udf, loc, anExpr, args, dotVars);
796}
797
798
799argument_placeholder_expr*
800ExprManager::create_argument_placeholder_expr(
801 static_context* sctx,
802 user_function* udf,
803 const QueryLoc& loc)
804{
805 CREATE_AND_RETURN_EXPR(argument_placeholder_expr, sctx, udf, loc);
796}806}
797807
798808
@@ -800,20 +810,25 @@
800 static_context* sctx,810 static_context* sctx,
801 user_function* udf,811 user_function* udf,
802 const QueryLoc& loc,812 const QueryLoc& loc,
803 const store::Item* aQName,813 static_context* closureSctx,
804 function* f,814 function* f,
805 uint32_t aArity)815 store::Item* aQName,
816 uint32_t aArity,
817 bool isInline,
818 bool needsContextItem)
806{819{
807 CREATE_AND_RETURN_EXPR(function_item_expr, sctx, udf, loc, aQName, f, aArity);820 CREATE_AND_RETURN_EXPR(function_item_expr, sctx, udf, loc, closureSctx, f, aQName, aArity, isInline, needsContextItem);
808}821}
809822
810823
811function_item_expr* ExprManager::create_function_item_expr(824function_item_expr* ExprManager::create_function_item_expr(static_context* sctx,
812 static_context* sctx,
813 user_function* udf,825 user_function* udf,
814 const QueryLoc& loc)826 const QueryLoc& loc,
827 static_context *closureSctx,
828 bool isInline,
829 bool needsContextItem)
815{830{
816 CREATE_AND_RETURN_EXPR(function_item_expr, sctx, udf, loc);831 CREATE_AND_RETURN_EXPR(function_item_expr, sctx, udf, loc, closureSctx, isInline, needsContextItem);
817}832}
818833
819834
820835
=== modified file 'src/compiler/expression/expr_manager.h'
--- src/compiler/expression/expr_manager.h 2013-02-07 17:24:36 +0000
+++ src/compiler/expression/expr_manager.h 2013-03-04 23:04:24 +0000
@@ -482,20 +482,31 @@
482 user_function* udf,482 user_function* udf,
483 const QueryLoc& loc,483 const QueryLoc& loc,
484 expr* anExpr,484 expr* anExpr,
485 const std::vector<expr*>& args);485 const std::vector<expr*>& args,
486 const std::vector<expr*>& dotVars);
486487
487 function_item_expr* create_function_item_expr(488 argument_placeholder_expr* create_argument_placeholder_expr(
488 static_context* sctx,489 static_context* sctx,
489 user_function* udf,490 user_function* udf,
491 const QueryLoc& loc);
492
493 function_item_expr* create_function_item_expr(static_context* sctx,
494 user_function* udf,
490 const QueryLoc& loc,495 const QueryLoc& loc,
491 const store::Item* aQName,496 static_context *closureSctx,
492 function* f,497 function* f,
493 uint32_t aArity);498 store::Item* aQName,
499 uint32_t aArity,
500 bool isInline,
501 bool needsContextItem);
494502
495 function_item_expr* create_function_item_expr(503 function_item_expr* create_function_item_expr(
496 static_context* sctx,504 static_context* sctx,
497 user_function* udf,505 user_function* udf,
498 const QueryLoc& loc);506 const QueryLoc& loc,
507 static_context *closureSctx,
508 bool isInline,
509 bool needsContextItem);
499510
500 ftcontains_expr* create_ftcontains_expr(511 ftcontains_expr* create_ftcontains_expr(
501 static_context*,512 static_context*,
@@ -609,7 +620,7 @@
609 user_function* udf,620 user_function* udf,
610 const QueryLoc& loc,621 const QueryLoc& loc,
611 bool general);622 bool general);
612 623
613 pragma* create_pragma(624 pragma* create_pragma(
614 const store::Item_t&,625 const store::Item_t&,
615 const zstring&);626 const zstring&);
616627
=== modified file 'src/compiler/expression/expr_put.cpp'
--- src/compiler/expression/expr_put.cpp 2013-02-21 16:34:45 +0000
+++ src/compiler/expression/expr_put.cpp 2013-03-04 23:04:24 +0000
@@ -152,7 +152,10 @@
152152
153 BEGIN_PUT_NO_EOL(vref) ;153 BEGIN_PUT_NO_EOL(vref) ;
154 put_qname(varExpr->get_name(), os);154 put_qname(varExpr->get_name(), os);
155 os << expr_addr(varExpr) << " ]" << endl;155 os << expr_addr(varExpr);
156 os << " kind=" << var_expr::decode_var_kind(varExpr->get_kind()); // TODO: remove this info
157 os << " uniqueId=" << varExpr->get_unique_id(); // TODO: remove this info
158 os << " ]" << endl;
156 return os;159 return os;
157 }160 }
158 else161 else
@@ -185,6 +188,11 @@
185 put_qname(get_name(), os);188 put_qname(get_name(), os);
186 }189 }
187190
191 if (get_kind() == prolog_var || get_kind() == hof_var)
192 {
193 os << " uniqueId=" << theUniqueId;
194 }
195
188#if VERBOSE196#if VERBOSE
189 if (theDeclaredType != NULL)197 if (theDeclaredType != NULL)
190 {198 {
@@ -224,7 +232,7 @@
224 }232 }
225233
226 os << endl << indent << "[\n" << inc_indent;234 os << endl << indent << "[\n" << inc_indent;
227 235
228 theDomainExpr->put(os);236 theDomainExpr->put(os);
229237
230 END_PUT();238 END_PUT();
@@ -502,7 +510,7 @@
502ostream& fo_expr::put(ostream& os) const510ostream& fo_expr::put(ostream& os) const
503{511{
504 const store::Item* qname = theFunction->getName();512 const store::Item* qname = theFunction->getName();
505 BEGIN_PUT_MSG( qname->getStringValue() << "/" << num_args() );513 BEGIN_PUT_MSG( qname->getStringValue() << "#" << num_args() );
506 csize numArgs = num_args();514 csize numArgs = num_args();
507515
508 for (csize i = 0; i < numArgs; ++i)516 for (csize i = 0; i < numArgs; ++i)
@@ -528,18 +536,46 @@
528536
529std::ostream& function_item_expr::put(std::ostream& os) const537std::ostream& function_item_expr::put(std::ostream& os) const
530{538{
531 os << indent << "funtion_item_expr " << expr_addr(this) << inc_indent;539 os << indent << "funtion_item_expr" << expr_addr(this) << inc_indent;
532540
533 if (theQName != NULL)541 // TODO: delete
542 // if (theDynamicFunctionInfo->theQName != NULL)
543 if (!is_inline())
534 {544 {
535 os << " " << theQName->getStringValue() << "/" << theArity;545 os << " " << theDynamicFunctionInfo->theQName->getStringValue()
546 << "#" << theDynamicFunctionInfo->theArity;
536 os << dec_indent << endl;547 os << dec_indent << endl;
537 return os;548 return os;
538 }549 }
539 else550 else
540 {551 {
541 os << " inline udf (" << theFunction.getp() << ") [\n";552 os << " " << theDynamicFunctionInfo->theQName->getStringValue()
542 reinterpret_cast<const user_function*>(theFunction.getp())->getBody()->put(os);553 << "#" << theDynamicFunctionInfo->theArity << " [\n";
554
555 const signature& sig = get_function()->getSignature();
556 std::vector<xqtref_t> paramTypes;
557 for (csize i=0; i < sig.paramCount(); i++)
558 paramTypes.push_back(sig[i]);
559 xqtref_t funcType = get_type_manager()->create_function_type(paramTypes, sig.returnType(), TypeConstants::QUANT_ONE);
560
561 // TODO: remove type
562 os << indent << "type: " << funcType->toString() << std::endl;
563
564 for (ulong i = 0; i < theDynamicFunctionInfo->theScopedVarsValues.size(); i++)
565 {
566 os << indent << "using $"
567 << theDynamicFunctionInfo->theScopedVarsNames[i]->getStringValue()
568 << (theDynamicFunctionInfo->theIsGlobalVar[i] ? " global=1" : "") << " := [";
569 os << endl << inc_indent;
570 if (theDynamicFunctionInfo->theScopedVarsValues[i])
571 theDynamicFunctionInfo->theScopedVarsValues[i]->put(os);
572 os << dec_indent << indent << "]" << endl;
573 }
574
575 if (theDynamicFunctionInfo->theFunction != NULL &&
576 static_cast<user_function*>(theDynamicFunctionInfo->theFunction.getp())->getBody() != NULL)
577 static_cast<user_function*>(theDynamicFunctionInfo->theFunction.getp())->getBody()->put(os);
578
543 END_PUT();579 END_PUT();
544 }580 }
545}581}
@@ -548,16 +584,31 @@
548ostream& dynamic_function_invocation_expr::put(ostream& os) const584ostream& dynamic_function_invocation_expr::put(ostream& os) const
549{585{
550 BEGIN_PUT( dynamic_function_invocation_expr );586 BEGIN_PUT( dynamic_function_invocation_expr );
551587
552 theExpr->put(os);588 theExpr->put(os);
553589
554 for (csize i = 0; i < theArgs.size(); ++i)590 for (csize i = 0; i < theArgs.size(); ++i)
555 theArgs[i]->put(os);591 theArgs[i]->put(os);
592
593 for (csize i = 0; i < theDotVars.size(); i++)
594 if (theDotVars[i] != NULL)
595 {
596 os << indent << "using $";
597 theDotVars[i]->put(os);
598 }
556599
557 END_PUT();600 END_PUT();
558}601}
559602
560603
604ostream& argument_placeholder_expr::put(ostream& os) const
605{
606 BEGIN_PUT_NO_EOL( argument_placeholder_expr );
607 os << "? ]\n";
608 return os;
609}
610
611
561ostream& instanceof_expr::put( ostream& os) const612ostream& instanceof_expr::put( ostream& os) const
562{613{
563 BEGIN_PUT_MSG("instanceof_expr " << theTargetType->toSchemaString());614 BEGIN_PUT_MSG("instanceof_expr " << theTargetType->toSchemaString());
@@ -745,7 +796,7 @@
745796
746 if (theValue->isFunction())797 if (theValue->isFunction())
747 {798 {
748 os << "functrion item [ " << theValue->show() << " ]";799 os << "function item [ " << theValue->show() << " ]";
749 }800 }
750 else801 else
751 {802 {
752803
=== modified file 'src/compiler/expression/expr_type.cpp'
--- src/compiler/expression/expr_type.cpp 2013-02-26 04:12:43 +0000
+++ src/compiler/expression/expr_type.cpp 2013-03-04 23:04:24 +0000
@@ -31,6 +31,7 @@
31#include "compiler/expression/var_expr.h"31#include "compiler/expression/var_expr.h"
32#include "compiler/expression/expr.h"32#include "compiler/expression/expr.h"
33#include "compiler/expression/expr_iter.h"33#include "compiler/expression/expr_iter.h"
34#include "compiler/expression/function_item_expr.h"
3435
35#include "compiler/api/compilercb.h"36#include "compiler/api/compilercb.h"
3637
@@ -259,6 +260,7 @@
259 case var_expr::catch_var: // TODO260 case var_expr::catch_var: // TODO
260 case var_expr::arg_var:261 case var_expr::arg_var:
261 case var_expr::eval_var:262 case var_expr::eval_var:
263 case var_expr::hof_var:
262 {264 {
263 break;265 break;
264 }266 }
@@ -625,7 +627,14 @@
625627
626 case dynamic_function_invocation_expr_kind:628 case dynamic_function_invocation_expr_kind:
627 {629 {
628 theType = rtm.ITEM_TYPE_STAR; // TODO630 dynamic_function_invocation_expr* e = static_cast<dynamic_function_invocation_expr*>(this);
631 newType = e->theExpr->get_return_type();
632 break;
633 }
634
635 case argument_placeholder_expr_kind:
636 {
637 theType = rtm.ITEM_TYPE_STAR;
629 return;638 return;
630 }639 }
631640
632641
=== modified file 'src/compiler/expression/expr_visitor.h'
--- src/compiler/expression/expr_visitor.h 2013-02-07 17:24:36 +0000
+++ src/compiler/expression/expr_visitor.h 2013-03-04 23:04:24 +0000
@@ -1,12 +1,12 @@
1/*1/*
2 * Copyright 2006-2008 The FLWOR Foundation.2 * Copyright 2006-2008 The FLWOR Foundation.
3 * 3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at6 * You may obtain a copy of the License at
7 * 7 *
8 * http://www.apache.org/licenses/LICENSE-2.08 * http://www.apache.org/licenses/LICENSE-2.0
9 * 9 *
10 * Unless required by applicable law or agreed to in writing, software10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -20,7 +20,7 @@
20#include <zorba/config.h>20#include <zorba/config.h>
21#include "compiler/expression/expr_classes.h"21#include "compiler/expression/expr_classes.h"
2222
23namespace zorba 23namespace zorba
24{24{
2525
26#ifndef ZORBA_NO_FULL_TEXT26#ifndef ZORBA_NO_FULL_TEXT
@@ -29,7 +29,7 @@
2929
30class expr_visitor30class expr_visitor
31{31{
32public: 32public:
3333
34 virtual ~expr_visitor() { }34 virtual ~expr_visitor() { }
3535
@@ -78,6 +78,7 @@
78 DECL_EXPR_VISITOR_VISIT_MEM_FNS( trycatch_expr );78 DECL_EXPR_VISITOR_VISIT_MEM_FNS( trycatch_expr );
79 DECL_EXPR_VISITOR_VISIT_MEM_FNS( function_item_expr );79 DECL_EXPR_VISITOR_VISIT_MEM_FNS( function_item_expr );
80 DECL_EXPR_VISITOR_VISIT_MEM_FNS( dynamic_function_invocation_expr );80 DECL_EXPR_VISITOR_VISIT_MEM_FNS( dynamic_function_invocation_expr );
81 DECL_EXPR_VISITOR_VISIT_MEM_FNS( argument_placeholder_expr );
8182
82 DECL_EXPR_VISITOR_VISIT_MEM_FNS(insert_expr);83 DECL_EXPR_VISITOR_VISIT_MEM_FNS(insert_expr);
83 DECL_EXPR_VISITOR_VISIT_MEM_FNS(delete_expr);84 DECL_EXPR_VISITOR_VISIT_MEM_FNS(delete_expr);
8485
=== modified file 'src/compiler/expression/function_item_expr.cpp'
--- src/compiler/expression/function_item_expr.cpp 2013-02-07 17:24:36 +0000
+++ src/compiler/expression/function_item_expr.cpp 2013-03-04 23:04:24 +0000
@@ -15,6 +15,8 @@
15 */15 */
16#include "stdafx.h"16#include "stdafx.h"
1717
18#include "store/api/item_factory.h"
19
18#include "compiler/expression/function_item_expr.h"20#include "compiler/expression/function_item_expr.h"
19#include "compiler/expression/expr_visitor.h"21#include "compiler/expression/expr_visitor.h"
2022
@@ -27,7 +29,7 @@
27namespace zorba {29namespace zorba {
2830
2931
30DEF_EXPR_ACCEPT (dynamic_function_invocation_expr)32DEF_EXPR_ACCEPT (dynamic_function_invocation_expr);
3133
3234
33dynamic_function_invocation_expr::dynamic_function_invocation_expr(35dynamic_function_invocation_expr::dynamic_function_invocation_expr(
@@ -36,11 +38,13 @@
36 user_function* udf,38 user_function* udf,
37 const QueryLoc& loc,39 const QueryLoc& loc,
38 expr* anExpr,40 expr* anExpr,
39 const std::vector<expr*>& args)41 const std::vector<expr*>& args,
42 const std::vector<expr*>& dotVars)
40 :43 :
41 expr(ccb, sctx, udf, loc, dynamic_function_invocation_expr_kind),44 expr(ccb, sctx, udf, loc, dynamic_function_invocation_expr_kind),
42 theExpr(anExpr),45 theExpr(anExpr),
43 theArgs(args)46 theArgs(args),
47 theDotVars(dotVars)
44{48{
45 assert(anExpr != 0);49 assert(anExpr != 0);
46 compute_scripting_kind();50 compute_scripting_kind();
@@ -61,7 +65,19 @@
6165
62********************************************************************************/66********************************************************************************/
6367
64DEF_EXPR_ACCEPT (function_item_expr)68DEF_EXPR_ACCEPT (argument_placeholder_expr);
69
70void argument_placeholder_expr::compute_scripting_kind()
71{
72 theScriptingKind = SIMPLE_EXPR;
73}
74
75
76/*******************************************************************************
77
78********************************************************************************/
79
80DEF_EXPR_ACCEPT (function_item_expr);
6581
6682
67function_item_expr::function_item_expr(83function_item_expr::function_item_expr(
@@ -69,17 +85,29 @@
69 static_context* sctx,85 static_context* sctx,
70 user_function* udf,86 user_function* udf,
71 const QueryLoc& loc,87 const QueryLoc& loc,
72 const store::Item* aQName,88 static_context* closureSctx,
73 function* f,89 function* f,
74 uint32_t aArity)90 store::Item* aQName,
91 uint32_t aArity,
92 bool isInline,
93 bool needsContextItem)
75 :94 :
76 expr(ccb, sctx, udf, loc, function_item_expr_kind),95 expr(ccb, sctx, udf, loc, function_item_expr_kind),
77 theQName(const_cast<store::Item*>(aQName)),96 theDynamicFunctionInfo(new DynamicFunctionInfo(
78 theFunction(f),97 // ccb,
79 theArity(aArity)98 closureSctx,
99 loc,
100 f,
101 aQName,
102 aArity,
103 isInline,
104 needsContextItem))
80{105{
81 assert(f != NULL);106 assert(f != NULL);
82 compute_scripting_kind();107 compute_scripting_kind();
108
109 // std::cerr << "--> created function_item_expr: " << this // << " with DynamicFunctionInfo: " << theDynamicFunctionInfo << " counter: " << theDynamicFunctionInfo->getRefCount()
110 // << std::endl;
83}111}
84112
85113
@@ -87,46 +115,46 @@
87 CompilerCB* ccb,115 CompilerCB* ccb,
88 static_context* sctx,116 static_context* sctx,
89 user_function* udf,117 user_function* udf,
90 const QueryLoc& loc)118 const QueryLoc& loc,
119 static_context* closureSctx,
120 bool isInline,
121 bool needsContextItem)
91 :122 :
92 expr(ccb, sctx, udf, loc, function_item_expr_kind),123 expr(ccb, sctx, udf, loc, function_item_expr_kind),
93 theQName(0),124 theDynamicFunctionInfo(new DynamicFunctionInfo(
94 theFunction(NULL),125 // ccb,
95 theArity(0)126 closureSctx,
127 loc,
128 NULL,
129 NULL,
130 0,
131 isInline,
132 needsContextItem))
96{133{
97 theScriptingKind = SIMPLE_EXPR;134 theScriptingKind = SIMPLE_EXPR;
135 // std::cerr << "--> created function_item_expr: " << this // << " with DynamicFunctionInfo: " << theDynamicFunctionInfo << " counter: " << theDynamicFunctionInfo->getRefCount()
136 // << std::endl;
98}137}
99138
100139
101function_item_expr::~function_item_expr()140function_item_expr::~function_item_expr()
102{141{
103}142 // std::cerr << "--> deleted ~function_item_expr: " << this // << " with DynamicFunctionInfo: " << theDynamicFunctionInfo << " counter: " << theDynamicFunctionInfo->getRefCount()
104143 // << std::endl;
105144}
106user_function* function_item_expr::get_function() const 145
107{146void function_item_expr::add_variable(expr* var, var_expr* substVar, const store::Item_t& name, int isGlobal)
108 assert(theFunction->isUdf());147{
109 return static_cast<user_function*>(theFunction.getp());148 theDynamicFunctionInfo->add_variable(var, substVar, name, isGlobal);
110}149}
111150
112151
113void function_item_expr::add_variable(expr* var)152void function_item_expr::set_function(user_function* udf)
114{153{
115 theScopedVariables.push_back(var);154 theDynamicFunctionInfo->theFunction = udf;
116}155 theDynamicFunctionInfo->theArity = udf->getArity();
117156 theDynamicFunctionInfo->theQName = udf->getName();
118157 // compute_scripting_kind();
119const std::vector<expr*>& function_item_expr::get_vars() const
120{
121 return theScopedVariables;
122}
123
124
125void function_item_expr::set_function(user_function_t& udf)
126{
127 theFunction = udf;
128 theArity = udf->getArity();
129 compute_scripting_kind();
130}158}
131159
132160
@@ -136,6 +164,17 @@
136 theScriptingKind = SIMPLE_EXPR;164 theScriptingKind = SIMPLE_EXPR;
137}165}
138166
167store::Item_t function_item_expr::create_inline_fname(const QueryLoc& loc)
168{
169 store::Item_t name;
170 std::stringstream ss;
171 ss << "inline function(";
172 ss << loc;
173 ss << ")";
174 GENV_ITEMFACTORY->createQName(name, "", "", ss.str());
175 return name;
176}
177
139178
140}//end of namespace179}//end of namespace
141/* vim:set et sw=2 ts=2: */180/* vim:set et sw=2 ts=2: */
142181
=== modified file 'src/compiler/expression/function_item_expr.h'
--- src/compiler/expression/function_item_expr.h 2013-02-07 17:24:36 +0000
+++ src/compiler/expression/function_item_expr.h 2013-03-04 23:04:24 +0000
@@ -23,9 +23,38 @@
2323
24#include "store/naive/shared_types.h"24#include "store/naive/shared_types.h"
2525
26#include "runtime/function_item/function_item.h"
27
28
26namespace zorba {29namespace zorba {
2730
28/*******************************************************************************31/*******************************************************************************
32 [133] ArgumentPlaceholder ::= "?"
33********************************************************************************/
34class argument_placeholder_expr : public expr
35{
36 friend class ExprIterator;
37 friend class expr;
38 friend class ExprManager;
39
40protected:
41 argument_placeholder_expr(CompilerCB* ccb, static_context* sctx, user_function* udf, const QueryLoc& loc)
42 :
43 expr(ccb, sctx, udf, loc, argument_placeholder_expr_kind)
44 {
45 compute_scripting_kind();
46 }
47
48public:
49 void compute_scripting_kind();
50
51 void accept(expr_visitor&);
52
53 std::ostream& put(std::ostream& os) const;
54};
55
56
57/*******************************************************************************
2958
30 [121] FilterExpr ::= PrimaryExpr (Predicate | DynamicFunctionInvocation)*59 [121] FilterExpr ::= PrimaryExpr (Predicate | DynamicFunctionInvocation)*
3160
@@ -43,20 +72,24 @@
43protected:72protected:
44 expr * theExpr;73 expr * theExpr;
45 std::vector<expr*> theArgs;74 std::vector<expr*> theArgs;
75
76 std::vector<expr*> theDotVars; // context item vars
4677
47protected:78protected:
48 dynamic_function_invocation_expr(79 dynamic_function_invocation_expr(CompilerCB* ccb,
49 CompilerCB* ccb,
50 static_context* sctx,80 static_context* sctx,
51 user_function* udf,81 user_function* udf,
52 const QueryLoc& loc,82 const QueryLoc& loc,
53 expr* anExpr,83 expr* anExpr,
54 const std::vector<expr*>& args);84 const std::vector<expr*>& args,
85 const std::vector<expr*>& dotVars);
5586
56public:87public:
57 const expr* get_function() const { return theExpr; }88 const expr* get_function() const { return theExpr; }
5889
59 const std::vector<expr*>& get_args() const { return theArgs; }90 const std::vector<expr*>& get_args() const { return theArgs; }
91
92 const std::vector<expr*>& get_dot_vars() const { return theDotVars; }
6093
61 void compute_scripting_kind();94 void compute_scripting_kind();
6295
@@ -74,10 +107,6 @@
74107
75 InlineFunction ::= "function" "(" ParamList? ")" ("as" SequenceType)? EnclosedExpr108 InlineFunction ::= "function" "(" ParamList? ")" ("as" SequenceType)? EnclosedExpr
76109
77 theQName :
78 NULL in case of inline function. Otherwise, the qname of the named function
79 in the LiteralFunctionItem.
80
81 theFunction :110 theFunction :
82 This is always a pointer to a user_function obj. In case of an inline function111 This is always a pointer to a user_function obj. In case of an inline function
83 expr, it is an anonymous user_function obj that is created on-the-fly by the112 expr, it is an anonymous user_function obj that is created on-the-fly by the
@@ -103,50 +132,66 @@
103 friend class expr;132 friend class expr;
104 friend class ExprManager;133 friend class ExprManager;
105134
106private:135protected:
107 store::Item_t theQName;136 DynamicFunctionInfo_t theDynamicFunctionInfo;
108 function_t theFunction;137
109 uint32_t theArity;
110 std::vector<expr*> theScopedVariables;
111
112public:
113
114protected:138protected:
115 function_item_expr(139 function_item_expr(
116 CompilerCB* ccb,140 CompilerCB* ccb,
117 static_context* sctx,141 static_context* sctx,
118 user_function* udf,142 user_function* udf,
119 const QueryLoc& loc,143 const QueryLoc& loc,
120 const store::Item* aQName,144 static_context* closureSctx,
121 function* f,145 function* f,
122 uint32_t aArity);146 store::Item* aQName,
147 uint32_t aArity,
148 bool isInline,
149 bool needsContextItem);
123150
124 function_item_expr(151 function_item_expr(
125 CompilerCB* ccb,152 CompilerCB* ccb,
126 static_context* sctx,153 static_context* sctx,
127 user_function* udf,154 user_function* udf,
128 const QueryLoc& loc);155 const QueryLoc& loc,
129156 static_context* closureSctx,
157 bool isInline,
158 bool needsContextItem);
159
160 virtual ~function_item_expr();
161
130public:162public:
131 ~function_item_expr();163 DynamicFunctionInfo* get_dynamic_fn_info() { return theDynamicFunctionInfo; }
132164
133 void add_variable(expr* var);165 void add_variable(expr* var, var_expr* substVar, const store::Item_t& name, int isGlobal);
134166
135 void set_function(user_function_t& udf);167 const std::vector<var_expr*>& get_subst_vars_values() const { return theDynamicFunctionInfo->theSubstVarsValues; }
136168
137 user_function* get_function() const;169 const std::vector<store::Item_t>& get_scoped_vars_names() const { return theDynamicFunctionInfo->theScopedVarsNames; }
138170
139 const store::Item_t& get_qname() const { return theQName; }171 const std::vector<int>& get_is_global_var() const { return theDynamicFunctionInfo->theIsGlobalVar; }
140172
141 uint32_t get_arity() const { return theArity; }173 void set_function(user_function* udf);
142174
143 const std::vector<expr*>& get_vars() const;175 function* get_function() const { return theDynamicFunctionInfo->theFunction; }
176
177 const store::Item_t& get_qname() const { return theDynamicFunctionInfo->theQName; }
178
179 uint32_t get_arity() const { return theDynamicFunctionInfo->theArity; }
180
181 bool is_inline() const { return theDynamicFunctionInfo->theIsInline; }
182
183 bool needs_context_item() const { return theDynamicFunctionInfo->theNeedsContextItem; }
144184
145 void compute_scripting_kind();185 void compute_scripting_kind();
146186
147 void accept(expr_visitor&);187 void accept(expr_visitor&);
148188
149 std::ostream& put(std::ostream& os) const;189 std::ostream& put(std::ostream& os) const;
190
191public:
192 // Given a location, will create an inline function name string such
193 // as "inline function(loc)"
194 static store::Item_t create_inline_fname(const QueryLoc& loc);
150};195};
151196
152} //end of namespace197} //end of namespace
153198
=== modified file 'src/compiler/expression/var_expr.cpp'
--- src/compiler/expression/var_expr.cpp 2013-02-07 17:24:36 +0000
+++ src/compiler/expression/var_expr.cpp 2013-03-04 23:04:24 +0000
@@ -53,6 +53,7 @@
53 case count_var: return "CNT"; break;53 case count_var: return "CNT"; break;
54 case score_var: return "SCORE"; break;54 case score_var: return "SCORE"; break;
55 case prolog_var: return "PROLOG"; break;55 case prolog_var: return "PROLOG"; break;
56 case hof_var: return "HOF"; break;
56 case local_var: return "LOCAL"; break;57 case local_var: return "LOCAL"; break;
57 case catch_var: return "CATCH"; break;58 case catch_var: return "CATCH"; break;
58 case copy_var: return "COPY"; break;59 case copy_var: return "COPY"; break;
@@ -315,7 +316,7 @@
315********************************************************************************/316********************************************************************************/
316void var_expr::remove_set_expr(expr* e)317void var_expr::remove_set_expr(expr* e)
317{318{
318 assert(theVarKind == local_var || theVarKind == prolog_var);319 assert(theVarKind == local_var || theVarKind == prolog_var || theVarKind == hof_var);
319320
320 bool found = false;321 bool found = false;
321 VarSetExprs::iterator ite = theSetExprs.begin();322 VarSetExprs::iterator ite = theSetExprs.begin();
322323
=== modified file 'src/compiler/expression/var_expr.h'
--- src/compiler/expression/var_expr.h 2013-02-21 16:34:45 +0000
+++ src/compiler/expression/var_expr.h 2013-03-04 23:04:24 +0000
@@ -152,6 +152,8 @@
152152
153 prolog_var,153 prolog_var,
154154
155 hof_var, // used by HoF functions, behaves similarly to prolog vars
156
155 local_var,157 local_var,
156158
157 arg_var159 arg_var
158160
=== modified file 'src/compiler/parser/xquery_parser.cpp'
--- src/compiler/parser/xquery_parser.cpp 2013-02-07 17:24:36 +0000
+++ src/compiler/parser/xquery_parser.cpp 2013-03-04 23:04:24 +0000
@@ -1,10 +1,8 @@
11/* A Bison parser, made by GNU Bison 2.5. */
2/* A Bison parser, made by GNU Bison 2.4.1. */
32
4/* Skeleton implementation for Bison LALR(1) parsers in C++3/* Skeleton implementation for Bison LALR(1) parsers in C++
5 4
6 Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software5 Copyright (C) 2002-2011 Free Software Foundation, Inc.
7 Foundation, Inc.
8 6
9 This program is free software: you can redistribute it and/or modify7 This program is free software: you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by8 it under the terms of the GNU General Public License as published by
@@ -37,8 +35,8 @@
3735
38/* First part of user declarations. */36/* First part of user declarations. */
3937
40/* Line 311 of lalr1.cc */38/* Line 293 of lalr1.cc */
41#line 87 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"39#line 87 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
4240
4341
44#include "common/common.h"42#include "common/common.h"
@@ -74,16 +72,16 @@
7472
7573
7674
77/* Line 311 of lalr1.cc */75/* Line 293 of lalr1.cc */
78#line 79 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"76#line 77 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
7977
8078
81#include "xquery_parser.hpp"79#include "xquery_parser.hpp"
8280
83/* User implementation prologue. */81/* User implementation prologue. */
8482
85/* Line 317 of lalr1.cc */83/* Line 299 of lalr1.cc */
86#line 911 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"84#line 911 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
8785
88// HACK to trigger rchandle release: rchandles are freed when refcount == 086// HACK to trigger rchandle release: rchandles are freed when refcount == 0
89// (not <= 0); but Bison never increments the refcount, so we do it manually...87// (not <= 0); but Bison never increments the refcount, so we do it manually...
@@ -94,8 +92,8 @@
94 }92 }
95}93}
9694
97/* Line 317 of lalr1.cc */95/* Line 299 of lalr1.cc */
98#line 1036 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"96#line 1036 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
9997
100#include "compiler/parser/xquery_scanner.h"98#include "compiler/parser/xquery_scanner.h"
10199
@@ -104,11 +102,11 @@
104102
105103
106104
107/* Line 317 of lalr1.cc */105/* Line 299 of lalr1.cc */
108#line 109 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"106#line 107 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
109107
110#ifndef YY_108#ifndef YY_
111# if YYENABLE_NLS109# if defined YYENABLE_NLS && YYENABLE_NLS
112# if ENABLE_NLS110# if ENABLE_NLS
113# include <libintl.h> /* FIXME: INFRINGES ON USER NAME SPACE */111# include <libintl.h> /* FIXME: INFRINGES ON USER NAME SPACE */
114# define YY_(msgid) dgettext ("bison-runtime", msgid)112# define YY_(msgid) dgettext ("bison-runtime", msgid)
@@ -119,6 +117,26 @@
119# endif117# endif
120#endif118#endif
121119
120/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
121 If N is 0, then set CURRENT to the empty location which ends
122 the previous symbol: RHS[0] (always defined). */
123
124#define YYRHSLOC(Rhs, K) ((Rhs)[K])
125#ifndef YYLLOC_DEFAULT
126# define YYLLOC_DEFAULT(Current, Rhs, N) \
127 do \
128 if (N) \
129 { \
130 (Current).begin = YYRHSLOC (Rhs, 1).begin; \
131 (Current).end = YYRHSLOC (Rhs, N).end; \
132 } \
133 else \
134 { \
135 (Current).begin = (Current).end = YYRHSLOC (Rhs, 0).end; \
136 } \
137 while (false)
138#endif
139
122/* Suppress unused-variable warnings by "using" E. */140/* Suppress unused-variable warnings by "using" E. */
123#define YYUSE(e) ((void) (e))141#define YYUSE(e) ((void) (e))
124142
@@ -168,14 +186,10 @@
168#define YYRECOVERING() (!!yyerrstatus_)186#define YYRECOVERING() (!!yyerrstatus_)
169187
170188
171/* Line 380 of lalr1.cc */
172#line 1 "[Bison:b4_percent_define_default]"
173
174namespace zorba {189namespace zorba {
175190
176/* Line 380 of lalr1.cc */191/* Line 382 of lalr1.cc */
177#line 178 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"192#line 193 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
178#if YYERROR_VERBOSE
179193
180 /* Return YYSTR after stripping away unnecessary quotes and194 /* Return YYSTR after stripping away unnecessary quotes and
181 backslashes, so that it's suitable for yyerror. The heuristic is195 backslashes, so that it's suitable for yyerror. The heuristic is
@@ -214,7 +228,6 @@
214 return yystr;228 return yystr;
215 }229 }
216230
217#endif
218231
219 /// Build a parser object.232 /// Build a parser object.
220 xquery_parser::xquery_parser (xquery_driver& driver_yyarg)233 xquery_parser::xquery_parser (xquery_driver& driver_yyarg)
@@ -277,2540 +290,2540 @@
277 case 110: /* "\"'DECIMAL'\"" */290 case 110: /* "\"'DECIMAL'\"" */
278291
279/* Line 480 of lalr1.cc */292/* Line 480 of lalr1.cc */
280#line 909 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"293#line 909 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
281 { delete (yyvaluep->decval); };294 { delete (yyvaluep->decval); };
282295
283/* Line 480 of lalr1.cc */296/* Line 480 of lalr1.cc */
284#line 285 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"297#line 298 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
285 break;298 break;
286 case 124: /* "\"'DOUBLE'\"" */299 case 124: /* "\"'DOUBLE'\"" */
287300
288/* Line 480 of lalr1.cc */301/* Line 480 of lalr1.cc */
289#line 908 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"302#line 908 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
290 { delete (yyvaluep->dval); };303 { delete (yyvaluep->dval); };
291304
292/* Line 480 of lalr1.cc */305/* Line 480 of lalr1.cc */
293#line 294 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"306#line 307 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
294 break;307 break;
295 case 149: /* "\"'INTEGER'\"" */308 case 149: /* "\"'INTEGER'\"" */
296309
297/* Line 480 of lalr1.cc */310/* Line 480 of lalr1.cc */
298#line 907 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"311#line 907 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
299 { delete (yyvaluep->ival); };312 { delete (yyvaluep->ival); };
300313
301/* Line 480 of lalr1.cc */314/* Line 480 of lalr1.cc */
302#line 303 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"315#line 316 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
303 break;316 break;
304 case 338: /* "VersionDecl" */317 case 338: /* "VersionDecl" */
305318
306/* Line 480 of lalr1.cc */319/* Line 480 of lalr1.cc */
307#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"320#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
308 { release_hack( (yyvaluep->node) ); };321 { release_hack( (yyvaluep->node) ); };
309322
310/* Line 480 of lalr1.cc */323/* Line 480 of lalr1.cc */
311#line 312 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"324#line 325 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
312 break;325 break;
313 case 339: /* "MainModule" */326 case 339: /* "MainModule" */
314327
315/* Line 480 of lalr1.cc */328/* Line 480 of lalr1.cc */
316#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"329#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
317 { release_hack( (yyvaluep->node) ); };330 { release_hack( (yyvaluep->node) ); };
318331
319/* Line 480 of lalr1.cc */332/* Line 480 of lalr1.cc */
320#line 321 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"333#line 334 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
321 break;334 break;
322 case 340: /* "LibraryModule" */335 case 340: /* "LibraryModule" */
323336
324/* Line 480 of lalr1.cc */337/* Line 480 of lalr1.cc */
325#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"338#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
326 { release_hack( (yyvaluep->node) ); };339 { release_hack( (yyvaluep->node) ); };
327340
328/* Line 480 of lalr1.cc */341/* Line 480 of lalr1.cc */
329#line 330 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"342#line 343 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
330 break;343 break;
331 case 341: /* "ModuleDecl" */344 case 341: /* "ModuleDecl" */
332345
333/* Line 480 of lalr1.cc */346/* Line 480 of lalr1.cc */
334#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"347#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
335 { release_hack( (yyvaluep->node) ); };348 { release_hack( (yyvaluep->node) ); };
336349
337/* Line 480 of lalr1.cc */350/* Line 480 of lalr1.cc */
338#line 339 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"351#line 352 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
339 break;352 break;
340 case 342: /* "SIND_DeclList" */353 case 342: /* "SIND_DeclList" */
341354
342/* Line 480 of lalr1.cc */355/* Line 480 of lalr1.cc */
343#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"356#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
344 { release_hack( (yyvaluep->node) ); };357 { release_hack( (yyvaluep->node) ); };
345358
346/* Line 480 of lalr1.cc */359/* Line 480 of lalr1.cc */
347#line 348 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"360#line 361 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
348 break;361 break;
349 case 343: /* "SIND_Decl" */362 case 343: /* "SIND_Decl" */
350363
351/* Line 480 of lalr1.cc */364/* Line 480 of lalr1.cc */
352#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"365#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
353 { release_hack( (yyvaluep->node) ); };366 { release_hack( (yyvaluep->node) ); };
354367
355/* Line 480 of lalr1.cc */368/* Line 480 of lalr1.cc */
356#line 357 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"369#line 370 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
357 break;370 break;
358 case 344: /* "Setter" */371 case 344: /* "Setter" */
359372
360/* Line 480 of lalr1.cc */373/* Line 480 of lalr1.cc */
361#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"374#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
362 { release_hack( (yyvaluep->node) ); };375 { release_hack( (yyvaluep->node) ); };
363376
364/* Line 480 of lalr1.cc */377/* Line 480 of lalr1.cc */
365#line 366 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"378#line 379 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
366 break;379 break;
367 case 345: /* "BoundarySpaceDecl" */380 case 345: /* "BoundarySpaceDecl" */
368381
369/* Line 480 of lalr1.cc */382/* Line 480 of lalr1.cc */
370#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"383#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
371 { release_hack( (yyvaluep->node) ); };384 { release_hack( (yyvaluep->node) ); };
372385
373/* Line 480 of lalr1.cc */386/* Line 480 of lalr1.cc */
374#line 375 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"387#line 388 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
375 break;388 break;
376 case 346: /* "DefaultCollationDecl" */389 case 346: /* "DefaultCollationDecl" */
377390
378/* Line 480 of lalr1.cc */391/* Line 480 of lalr1.cc */
379#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"392#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
380 { release_hack( (yyvaluep->node) ); };393 { release_hack( (yyvaluep->node) ); };
381394
382/* Line 480 of lalr1.cc */395/* Line 480 of lalr1.cc */
383#line 384 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"396#line 397 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
384 break;397 break;
385 case 347: /* "BaseURIDecl" */398 case 347: /* "BaseURIDecl" */
386399
387/* Line 480 of lalr1.cc */400/* Line 480 of lalr1.cc */
388#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"401#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
389 { release_hack( (yyvaluep->node) ); };402 { release_hack( (yyvaluep->node) ); };
390403
391/* Line 480 of lalr1.cc */404/* Line 480 of lalr1.cc */
392#line 393 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"405#line 406 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
393 break;406 break;
394 case 348: /* "ConstructionDecl" */407 case 348: /* "ConstructionDecl" */
395408
396/* Line 480 of lalr1.cc */409/* Line 480 of lalr1.cc */
397#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"410#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
398 { release_hack( (yyvaluep->node) ); };411 { release_hack( (yyvaluep->node) ); };
399412
400/* Line 480 of lalr1.cc */413/* Line 480 of lalr1.cc */
401#line 402 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"414#line 415 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
402 break;415 break;
403 case 349: /* "OrderingModeDecl" */416 case 349: /* "OrderingModeDecl" */
404417
405/* Line 480 of lalr1.cc */418/* Line 480 of lalr1.cc */
406#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"419#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
407 { release_hack( (yyvaluep->node) ); };420 { release_hack( (yyvaluep->node) ); };
408421
409/* Line 480 of lalr1.cc */422/* Line 480 of lalr1.cc */
410#line 411 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"423#line 424 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
411 break;424 break;
412 case 350: /* "EmptyOrderDecl" */425 case 350: /* "EmptyOrderDecl" */
413426
414/* Line 480 of lalr1.cc */427/* Line 480 of lalr1.cc */
415#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"428#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
416 { release_hack( (yyvaluep->node) ); };429 { release_hack( (yyvaluep->node) ); };
417430
418/* Line 480 of lalr1.cc */431/* Line 480 of lalr1.cc */
419#line 420 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"432#line 433 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
420 break;433 break;
421 case 351: /* "CopyNamespacesDecl" */434 case 351: /* "CopyNamespacesDecl" */
422435
423/* Line 480 of lalr1.cc */436/* Line 480 of lalr1.cc */
424#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"437#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
425 { release_hack( (yyvaluep->node) ); };438 { release_hack( (yyvaluep->node) ); };
426439
427/* Line 480 of lalr1.cc */440/* Line 480 of lalr1.cc */
428#line 429 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"441#line 442 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
429 break;442 break;
430 case 352: /* "Import" */443 case 352: /* "Import" */
431444
432/* Line 480 of lalr1.cc */445/* Line 480 of lalr1.cc */
433#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"446#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
434 { release_hack( (yyvaluep->node) ); };447 { release_hack( (yyvaluep->node) ); };
435448
436/* Line 480 of lalr1.cc */449/* Line 480 of lalr1.cc */
437#line 438 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"450#line 451 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
438 break;451 break;
439 case 353: /* "SchemaImport" */452 case 353: /* "SchemaImport" */
440453
441/* Line 480 of lalr1.cc */454/* Line 480 of lalr1.cc */
442#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"455#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
443 { release_hack( (yyvaluep->node) ); };456 { release_hack( (yyvaluep->node) ); };
444457
445/* Line 480 of lalr1.cc */458/* Line 480 of lalr1.cc */
446#line 447 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"459#line 460 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
447 break;460 break;
448 case 354: /* "URILiteralList" */461 case 354: /* "URILiteralList" */
449462
450/* Line 480 of lalr1.cc */463/* Line 480 of lalr1.cc */
451#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"464#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
452 { release_hack( (yyvaluep->node) ); };465 { release_hack( (yyvaluep->node) ); };
453466
454/* Line 480 of lalr1.cc */467/* Line 480 of lalr1.cc */
455#line 456 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"468#line 469 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
456 break;469 break;
457 case 355: /* "SchemaPrefix" */470 case 355: /* "SchemaPrefix" */
458471
459/* Line 480 of lalr1.cc */472/* Line 480 of lalr1.cc */
460#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"473#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
461 { release_hack( (yyvaluep->node) ); };474 { release_hack( (yyvaluep->node) ); };
462475
463/* Line 480 of lalr1.cc */476/* Line 480 of lalr1.cc */
464#line 465 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"477#line 478 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
465 break;478 break;
466 case 356: /* "ModuleImport" */479 case 356: /* "ModuleImport" */
467480
468/* Line 480 of lalr1.cc */481/* Line 480 of lalr1.cc */
469#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"482#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
470 { release_hack( (yyvaluep->node) ); };483 { release_hack( (yyvaluep->node) ); };
471484
472/* Line 480 of lalr1.cc */485/* Line 480 of lalr1.cc */
473#line 474 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"486#line 487 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
474 break;487 break;
475 case 357: /* "NamespaceDecl" */488 case 357: /* "NamespaceDecl" */
476489
477/* Line 480 of lalr1.cc */490/* Line 480 of lalr1.cc */
478#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"491#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
479 { release_hack( (yyvaluep->node) ); };492 { release_hack( (yyvaluep->node) ); };
480493
481/* Line 480 of lalr1.cc */494/* Line 480 of lalr1.cc */
482#line 483 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"495#line 496 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
483 break;496 break;
484 case 358: /* "DefaultNamespaceDecl" */497 case 358: /* "DefaultNamespaceDecl" */
485498
486/* Line 480 of lalr1.cc */499/* Line 480 of lalr1.cc */
487#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"500#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
488 { release_hack( (yyvaluep->node) ); };501 { release_hack( (yyvaluep->node) ); };
489502
490/* Line 480 of lalr1.cc */503/* Line 480 of lalr1.cc */
491#line 492 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"504#line 505 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
492 break;505 break;
493 case 359: /* "VFO_DeclList" */506 case 359: /* "VFO_DeclList" */
494507
495/* Line 480 of lalr1.cc */508/* Line 480 of lalr1.cc */
496#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"509#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
497 { release_hack( (yyvaluep->node) ); };510 { release_hack( (yyvaluep->node) ); };
498511
499/* Line 480 of lalr1.cc */512/* Line 480 of lalr1.cc */
500#line 501 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"513#line 514 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
501 break;514 break;
502 case 360: /* "VFO_Decl" */515 case 360: /* "VFO_Decl" */
503516
504/* Line 480 of lalr1.cc */517/* Line 480 of lalr1.cc */
505#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"518#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
506 { release_hack( (yyvaluep->node) ); };519 { release_hack( (yyvaluep->node) ); };
507520
508/* Line 480 of lalr1.cc */521/* Line 480 of lalr1.cc */
509#line 510 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"522#line 523 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
510 break;523 break;
511 case 361: /* "DecimalFormatDecl" */524 case 361: /* "DecimalFormatDecl" */
512525
513/* Line 480 of lalr1.cc */526/* Line 480 of lalr1.cc */
514#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"527#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
515 { release_hack( (yyvaluep->node) ); };528 { release_hack( (yyvaluep->node) ); };
516529
517/* Line 480 of lalr1.cc */530/* Line 480 of lalr1.cc */
518#line 519 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"531#line 532 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
519 break;532 break;
520 case 362: /* "DecimalFormatParamList" */533 case 362: /* "DecimalFormatParamList" */
521534
522/* Line 480 of lalr1.cc */535/* Line 480 of lalr1.cc */
523#line 935 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"536#line 935 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
524 { delete (yyvaluep->vstrpair); };537 { delete (yyvaluep->vstrpair); };
525538
526/* Line 480 of lalr1.cc */539/* Line 480 of lalr1.cc */
527#line 528 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"540#line 541 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
528 break;541 break;
529 case 363: /* "DecimalFormatParam" */542 case 363: /* "DecimalFormatParam" */
530543
531/* Line 480 of lalr1.cc */544/* Line 480 of lalr1.cc */
532#line 935 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"545#line 935 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
533 { delete (yyvaluep->strpair); };546 { delete (yyvaluep->strpair); };
534547
535/* Line 480 of lalr1.cc */548/* Line 480 of lalr1.cc */
536#line 537 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"549#line 550 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
537 break;550 break;
538 case 365: /* "OptionDecl" */551 case 365: /* "OptionDecl" */
539552
540/* Line 480 of lalr1.cc */553/* Line 480 of lalr1.cc */
541#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"554#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
542 { release_hack( (yyvaluep->node) ); };555 { release_hack( (yyvaluep->node) ); };
543556
544/* Line 480 of lalr1.cc */557/* Line 480 of lalr1.cc */
545#line 546 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"558#line 559 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
546 break;559 break;
547 case 366: /* "FTOptionDecl" */560 case 366: /* "FTOptionDecl" */
548561
549/* Line 480 of lalr1.cc */562/* Line 480 of lalr1.cc */
550#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"563#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
551 { release_hack( (yyvaluep->node) ); };564 { release_hack( (yyvaluep->node) ); };
552565
553/* Line 480 of lalr1.cc */566/* Line 480 of lalr1.cc */
554#line 555 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"567#line 568 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
555 break;568 break;
556 case 367: /* "CtxItemDecl" */569 case 367: /* "CtxItemDecl" */
557570
558/* Line 480 of lalr1.cc */571/* Line 480 of lalr1.cc */
559#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"572#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
560 { release_hack( (yyvaluep->node) ); };573 { release_hack( (yyvaluep->node) ); };
561574
562/* Line 480 of lalr1.cc */575/* Line 480 of lalr1.cc */
563#line 564 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"576#line 577 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
564 break;577 break;
565 case 368: /* "CtxItemDecl2" */578 case 368: /* "CtxItemDecl2" */
566579
567/* Line 480 of lalr1.cc */580/* Line 480 of lalr1.cc */
568#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"581#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
569 { release_hack( (yyvaluep->node) ); };582 { release_hack( (yyvaluep->node) ); };
570583
571/* Line 480 of lalr1.cc */584/* Line 480 of lalr1.cc */
572#line 573 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"585#line 586 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
573 break;586 break;
574 case 369: /* "CtxItemDecl3" */587 case 369: /* "CtxItemDecl3" */
575588
576/* Line 480 of lalr1.cc */589/* Line 480 of lalr1.cc */
577#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"590#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
578 { release_hack( (yyvaluep->node) ); };591 { release_hack( (yyvaluep->node) ); };
579592
580/* Line 480 of lalr1.cc */593/* Line 480 of lalr1.cc */
581#line 582 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"594#line 595 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
582 break;595 break;
583 case 370: /* "CtxItemDecl4" */596 case 370: /* "CtxItemDecl4" */
584597
585/* Line 480 of lalr1.cc */598/* Line 480 of lalr1.cc */
586#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"599#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
587 { release_hack( (yyvaluep->node) ); };600 { release_hack( (yyvaluep->node) ); };
588601
589/* Line 480 of lalr1.cc */602/* Line 480 of lalr1.cc */
590#line 591 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"603#line 604 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
591 break;604 break;
592 case 371: /* "VarDecl" */605 case 371: /* "VarDecl" */
593606
594/* Line 480 of lalr1.cc */607/* Line 480 of lalr1.cc */
595#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"608#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
596 { release_hack( (yyvaluep->node) ); };609 { release_hack( (yyvaluep->node) ); };
597610
598/* Line 480 of lalr1.cc */611/* Line 480 of lalr1.cc */
599#line 600 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"612#line 613 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
600 break;613 break;
601 case 372: /* "VarNameAndType" */614 case 372: /* "VarNameAndType" */
602615
603/* Line 480 of lalr1.cc */616/* Line 480 of lalr1.cc */
604#line 935 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"617#line 935 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
605 { delete (yyvaluep->varnametype); };618 { delete (yyvaluep->varnametype); };
606619
607/* Line 480 of lalr1.cc */620/* Line 480 of lalr1.cc */
608#line 609 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"621#line 622 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
609 break;622 break;
610 case 373: /* "AnnotationList" */623 case 373: /* "AnnotationList" */
611624
612/* Line 480 of lalr1.cc */625/* Line 480 of lalr1.cc */
613#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"626#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
614 { release_hack( (yyvaluep->node) ); };627 { release_hack( (yyvaluep->node) ); };
615628
616/* Line 480 of lalr1.cc */629/* Line 480 of lalr1.cc */
617#line 618 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"630#line 631 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
618 break;631 break;
619 case 374: /* "Annotation" */632 case 374: /* "Annotation" */
620633
621/* Line 480 of lalr1.cc */634/* Line 480 of lalr1.cc */
622#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"635#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
623 { release_hack( (yyvaluep->node) ); };636 { release_hack( (yyvaluep->node) ); };
624637
625/* Line 480 of lalr1.cc */638/* Line 480 of lalr1.cc */
626#line 627 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"639#line 640 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
627 break;640 break;
628 case 375: /* "AnnotationLiteralList" */641 case 375: /* "AnnotationLiteralList" */
629642
630/* Line 480 of lalr1.cc */643/* Line 480 of lalr1.cc */
631#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"644#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
632 { release_hack( (yyvaluep->node) ); };645 { release_hack( (yyvaluep->node) ); };
633646
634/* Line 480 of lalr1.cc */647/* Line 480 of lalr1.cc */
635#line 636 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"648#line 649 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
636 break;649 break;
637 case 376: /* "FunctionDecl" */650 case 376: /* "FunctionDecl" */
638651
639/* Line 480 of lalr1.cc */652/* Line 480 of lalr1.cc */
640#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"653#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
641 { release_hack( (yyvaluep->node) ); };654 { release_hack( (yyvaluep->node) ); };
642655
643/* Line 480 of lalr1.cc */656/* Line 480 of lalr1.cc */
644#line 645 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"657#line 658 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
645 break;658 break;
646 case 377: /* "FunctionDecl2" */659 case 377: /* "FunctionDecl2" */
647660
648/* Line 480 of lalr1.cc */661/* Line 480 of lalr1.cc */
649#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"662#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
650 { release_hack( (yyvaluep->node) ); };663 { release_hack( (yyvaluep->node) ); };
651664
652/* Line 480 of lalr1.cc */665/* Line 480 of lalr1.cc */
653#line 654 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"666#line 667 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
654 break;667 break;
655 case 378: /* "FunctionDeclSimple" */668 case 378: /* "FunctionDeclSimple" */
656669
657/* Line 480 of lalr1.cc */670/* Line 480 of lalr1.cc */
658#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"671#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
659 { release_hack( (yyvaluep->node) ); };672 { release_hack( (yyvaluep->node) ); };
660673
661/* Line 480 of lalr1.cc */674/* Line 480 of lalr1.cc */
662#line 663 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"675#line 676 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
663 break;676 break;
664 case 379: /* "FunctionDeclUpdating" */677 case 379: /* "FunctionDeclUpdating" */
665678
666/* Line 480 of lalr1.cc */679/* Line 480 of lalr1.cc */
667#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"680#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
668 { release_hack( (yyvaluep->node) ); };681 { release_hack( (yyvaluep->node) ); };
669682
670/* Line 480 of lalr1.cc */683/* Line 480 of lalr1.cc */
671#line 672 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"684#line 685 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
672 break;685 break;
673 case 380: /* "FunctionSig" */686 case 380: /* "FunctionSig" */
674687
675/* Line 480 of lalr1.cc */688/* Line 480 of lalr1.cc */
676#line 935 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"689#line 935 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
677 { delete (yyvaluep->fnsig); };690 { delete (yyvaluep->fnsig); };
678691
679/* Line 480 of lalr1.cc */692/* Line 480 of lalr1.cc */
680#line 681 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"693#line 694 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
681 break;694 break;
682 case 381: /* "ParamList" */695 case 381: /* "ParamList" */
683696
684/* Line 480 of lalr1.cc */697/* Line 480 of lalr1.cc */
685#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"698#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
686 { release_hack( (yyvaluep->node) ); };699 { release_hack( (yyvaluep->node) ); };
687700
688/* Line 480 of lalr1.cc */701/* Line 480 of lalr1.cc */
689#line 690 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"702#line 703 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
690 break;703 break;
691 case 382: /* "Param" */704 case 382: /* "Param" */
692705
693/* Line 480 of lalr1.cc */706/* Line 480 of lalr1.cc */
694#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"707#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
695 { release_hack( (yyvaluep->node) ); };708 { release_hack( (yyvaluep->node) ); };
696709
697/* Line 480 of lalr1.cc */710/* Line 480 of lalr1.cc */
698#line 699 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"711#line 712 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
699 break;712 break;
700 case 383: /* "CollectionDecl" */713 case 383: /* "CollectionDecl" */
701714
702/* Line 480 of lalr1.cc */715/* Line 480 of lalr1.cc */
703#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"716#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
704 { release_hack( (yyvaluep->node) ); };717 { release_hack( (yyvaluep->node) ); };
705718
706/* Line 480 of lalr1.cc */719/* Line 480 of lalr1.cc */
707#line 708 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"720#line 721 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
708 break;721 break;
709 case 385: /* "IndexDecl" */722 case 385: /* "IndexDecl" */
710723
711/* Line 480 of lalr1.cc */724/* Line 480 of lalr1.cc */
712#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"725#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
713 { release_hack( (yyvaluep->node) ); };726 { release_hack( (yyvaluep->node) ); };
714727
715/* Line 480 of lalr1.cc */728/* Line 480 of lalr1.cc */
716#line 717 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"729#line 730 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
717 break;730 break;
718 case 386: /* "IndexKeyList" */731 case 386: /* "IndexKeyList" */
719732
720/* Line 480 of lalr1.cc */733/* Line 480 of lalr1.cc */
721#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"734#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
722 { release_hack( (yyvaluep->node) ); };735 { release_hack( (yyvaluep->node) ); };
723736
724/* Line 480 of lalr1.cc */737/* Line 480 of lalr1.cc */
725#line 726 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"738#line 739 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
726 break;739 break;
727 case 387: /* "IndexKeySpec" */740 case 387: /* "IndexKeySpec" */
728741
729/* Line 480 of lalr1.cc */742/* Line 480 of lalr1.cc */
730#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"743#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
731 { release_hack( (yyvaluep->node) ); };744 { release_hack( (yyvaluep->node) ); };
732745
733/* Line 480 of lalr1.cc */746/* Line 480 of lalr1.cc */
734#line 735 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"747#line 748 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
735 break;748 break;
736 case 388: /* "IntegrityConstraintDecl" */749 case 388: /* "IntegrityConstraintDecl" */
737750
738/* Line 480 of lalr1.cc */751/* Line 480 of lalr1.cc */
739#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"752#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
740 { release_hack( (yyvaluep->node) ); };753 { release_hack( (yyvaluep->node) ); };
741754
742/* Line 480 of lalr1.cc */755/* Line 480 of lalr1.cc */
743#line 744 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"756#line 757 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
744 break;757 break;
745 case 389: /* "QueryBody" */758 case 389: /* "QueryBody" */
746759
747/* Line 480 of lalr1.cc */760/* Line 480 of lalr1.cc */
748#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"761#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
749 { release_hack( (yyvaluep->expr) ); };762 { release_hack( (yyvaluep->expr) ); };
750763
751/* Line 480 of lalr1.cc */764/* Line 480 of lalr1.cc */
752#line 753 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"765#line 766 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
753 break;766 break;
754 case 390: /* "StatementsAndOptionalExprTop" */767 case 390: /* "StatementsAndOptionalExprTop" */
755768
756/* Line 480 of lalr1.cc */769/* Line 480 of lalr1.cc */
757#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"770#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
758 { release_hack( (yyvaluep->expr) ); };771 { release_hack( (yyvaluep->expr) ); };
759772
760/* Line 480 of lalr1.cc */773/* Line 480 of lalr1.cc */
761#line 762 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"774#line 775 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
762 break;775 break;
763 case 391: /* "StatementsAndOptionalExpr" */776 case 391: /* "StatementsAndOptionalExpr" */
764777
765/* Line 480 of lalr1.cc */778/* Line 480 of lalr1.cc */
766#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"779#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
767 { release_hack( (yyvaluep->expr) ); };780 { release_hack( (yyvaluep->expr) ); };
768781
769/* Line 480 of lalr1.cc */782/* Line 480 of lalr1.cc */
770#line 771 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"783#line 784 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
771 break;784 break;
772 case 392: /* "StatementsAndExpr" */785 case 392: /* "StatementsAndExpr" */
773786
774/* Line 480 of lalr1.cc */787/* Line 480 of lalr1.cc */
775#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"788#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
776 { release_hack( (yyvaluep->expr) ); };789 { release_hack( (yyvaluep->expr) ); };
777790
778/* Line 480 of lalr1.cc */791/* Line 480 of lalr1.cc */
779#line 780 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"792#line 793 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
780 break;793 break;
781 case 393: /* "Statements" */794 case 393: /* "Statements" */
782795
783/* Line 480 of lalr1.cc */796/* Line 480 of lalr1.cc */
784#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"797#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
785 { release_hack( (yyvaluep->expr) ); };798 { release_hack( (yyvaluep->expr) ); };
786799
787/* Line 480 of lalr1.cc */800/* Line 480 of lalr1.cc */
788#line 789 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"801#line 802 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
789 break;802 break;
790 case 394: /* "Statement" */803 case 394: /* "Statement" */
791804
792/* Line 480 of lalr1.cc */805/* Line 480 of lalr1.cc */
793#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"806#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
794 { release_hack( (yyvaluep->expr) ); };807 { release_hack( (yyvaluep->expr) ); };
795808
796/* Line 480 of lalr1.cc */809/* Line 480 of lalr1.cc */
797#line 798 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"810#line 811 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
798 break;811 break;
799 case 395: /* "BlockStatement" */812 case 395: /* "BlockStatement" */
800813
801/* Line 480 of lalr1.cc */814/* Line 480 of lalr1.cc */
802#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"815#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
803 { release_hack( (yyvaluep->expr) ); };816 { release_hack( (yyvaluep->expr) ); };
804817
805/* Line 480 of lalr1.cc */818/* Line 480 of lalr1.cc */
806#line 807 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"819#line 820 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
807 break;820 break;
808 case 396: /* "BlockExpr" */821 case 396: /* "BlockExpr" */
809822
810/* Line 480 of lalr1.cc */823/* Line 480 of lalr1.cc */
811#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"824#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
812 { release_hack( (yyvaluep->expr) ); };825 { release_hack( (yyvaluep->expr) ); };
813826
814/* Line 480 of lalr1.cc */827/* Line 480 of lalr1.cc */
815#line 816 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"828#line 829 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
816 break;829 break;
817 case 397: /* "EnclosedStatementsAndOptionalExpr" */830 case 397: /* "EnclosedStatementsAndOptionalExpr" */
818831
819/* Line 480 of lalr1.cc */832/* Line 480 of lalr1.cc */
820#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"833#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
821 { release_hack( (yyvaluep->expr) ); };834 { release_hack( (yyvaluep->expr) ); };
822835
823/* Line 480 of lalr1.cc */836/* Line 480 of lalr1.cc */
824#line 825 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"837#line 838 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
825 break;838 break;
826 case 398: /* "VarDeclStatement" */839 case 398: /* "VarDeclStatement" */
827840
828/* Line 480 of lalr1.cc */841/* Line 480 of lalr1.cc */
829#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"842#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
830 { release_hack( (yyvaluep->expr) ); };843 { release_hack( (yyvaluep->expr) ); };
831844
832/* Line 480 of lalr1.cc */845/* Line 480 of lalr1.cc */
833#line 834 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"846#line 847 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
834 break;847 break;
835 case 401: /* "AssignStatement" */848 case 401: /* "AssignStatement" */
836849
837/* Line 480 of lalr1.cc */850/* Line 480 of lalr1.cc */
838#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"851#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
839 { release_hack( (yyvaluep->expr) ); };852 { release_hack( (yyvaluep->expr) ); };
840853
841/* Line 480 of lalr1.cc */854/* Line 480 of lalr1.cc */
842#line 843 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"855#line 856 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
843 break;856 break;
844 case 402: /* "ApplyStatement" */857 case 402: /* "ApplyStatement" */
845858
846/* Line 480 of lalr1.cc */859/* Line 480 of lalr1.cc */
847#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"860#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
848 { release_hack( (yyvaluep->expr) ); };861 { release_hack( (yyvaluep->expr) ); };
849862
850/* Line 480 of lalr1.cc */863/* Line 480 of lalr1.cc */
851#line 852 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"864#line 865 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
852 break;865 break;
853 case 403: /* "ExitStatement" */866 case 403: /* "ExitStatement" */
854867
855/* Line 480 of lalr1.cc */868/* Line 480 of lalr1.cc */
856#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"869#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
857 { release_hack( (yyvaluep->expr) ); };870 { release_hack( (yyvaluep->expr) ); };
858871
859/* Line 480 of lalr1.cc */872/* Line 480 of lalr1.cc */
860#line 861 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"873#line 874 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
861 break;874 break;
862 case 404: /* "WhileStatement" */875 case 404: /* "WhileStatement" */
863876
864/* Line 480 of lalr1.cc */877/* Line 480 of lalr1.cc */
865#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"878#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
866 { release_hack( (yyvaluep->expr) ); };879 { release_hack( (yyvaluep->expr) ); };
867880
868/* Line 480 of lalr1.cc */881/* Line 480 of lalr1.cc */
869#line 870 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"882#line 883 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
870 break;883 break;
871 case 405: /* "FlowCtlStatement" */884 case 405: /* "FlowCtlStatement" */
872885
873/* Line 480 of lalr1.cc */886/* Line 480 of lalr1.cc */
874#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"887#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
875 { release_hack( (yyvaluep->expr) ); };888 { release_hack( (yyvaluep->expr) ); };
876889
877/* Line 480 of lalr1.cc */890/* Line 480 of lalr1.cc */
878#line 879 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"891#line 892 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
879 break;892 break;
880 case 406: /* "FLWORStatement" */893 case 406: /* "FLWORStatement" */
881894
882/* Line 480 of lalr1.cc */895/* Line 480 of lalr1.cc */
883#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"896#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
884 { release_hack( (yyvaluep->expr) ); };897 { release_hack( (yyvaluep->expr) ); };
885898
886/* Line 480 of lalr1.cc */899/* Line 480 of lalr1.cc */
887#line 888 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"900#line 901 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
888 break;901 break;
889 case 407: /* "ReturnStatement" */902 case 407: /* "ReturnStatement" */
890903
891/* Line 480 of lalr1.cc */904/* Line 480 of lalr1.cc */
892#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"905#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
893 { release_hack( (yyvaluep->expr) ); };906 { release_hack( (yyvaluep->expr) ); };
894907
895/* Line 480 of lalr1.cc */908/* Line 480 of lalr1.cc */
896#line 897 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"909#line 910 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
897 break;910 break;
898 case 408: /* "IfStatement" */911 case 408: /* "IfStatement" */
899912
900/* Line 480 of lalr1.cc */913/* Line 480 of lalr1.cc */
901#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"914#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
902 { release_hack( (yyvaluep->expr) ); };915 { release_hack( (yyvaluep->expr) ); };
903916
904/* Line 480 of lalr1.cc */917/* Line 480 of lalr1.cc */
905#line 906 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"918#line 919 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
906 break;919 break;
907 case 409: /* "TryStatement" */920 case 409: /* "TryStatement" */
908921
909/* Line 480 of lalr1.cc */922/* Line 480 of lalr1.cc */
910#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"923#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
911 { release_hack( (yyvaluep->expr) ); };924 { release_hack( (yyvaluep->expr) ); };
912925
913/* Line 480 of lalr1.cc */926/* Line 480 of lalr1.cc */
914#line 915 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"927#line 928 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
915 break;928 break;
916 case 410: /* "CatchListStatement" */929 case 410: /* "CatchListStatement" */
917930
918/* Line 480 of lalr1.cc */931/* Line 480 of lalr1.cc */
919#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"932#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
920 { release_hack( (yyvaluep->expr) ); };933 { release_hack( (yyvaluep->expr) ); };
921934
922/* Line 480 of lalr1.cc */935/* Line 480 of lalr1.cc */
923#line 924 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"936#line 937 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
924 break;937 break;
925 case 411: /* "CatchStatement" */938 case 411: /* "CatchStatement" */
926939
927/* Line 480 of lalr1.cc */940/* Line 480 of lalr1.cc */
928#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"941#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
929 { release_hack( (yyvaluep->expr) ); };942 { release_hack( (yyvaluep->expr) ); };
930943
931/* Line 480 of lalr1.cc */944/* Line 480 of lalr1.cc */
932#line 933 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"945#line 946 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
933 break;946 break;
934 case 412: /* "Expr" */947 case 412: /* "Expr" */
935948
936/* Line 480 of lalr1.cc */949/* Line 480 of lalr1.cc */
937#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"950#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
938 { release_hack( (yyvaluep->expr) ); };951 { release_hack( (yyvaluep->expr) ); };
939952
940/* Line 480 of lalr1.cc */953/* Line 480 of lalr1.cc */
941#line 942 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"954#line 955 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
942 break;955 break;
943 case 413: /* "ExprSingle" */956 case 413: /* "ExprSingle" */
944957
945/* Line 480 of lalr1.cc */958/* Line 480 of lalr1.cc */
946#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"959#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
947 { release_hack( (yyvaluep->expr) ); };960 { release_hack( (yyvaluep->expr) ); };
948961
949/* Line 480 of lalr1.cc */962/* Line 480 of lalr1.cc */
950#line 951 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"963#line 964 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
951 break;964 break;
952 case 414: /* "ExprSimple" */965 case 414: /* "ExprSimple" */
953966
954/* Line 480 of lalr1.cc */967/* Line 480 of lalr1.cc */
955#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"968#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
956 { release_hack( (yyvaluep->expr) ); };969 { release_hack( (yyvaluep->expr) ); };
957970
958/* Line 480 of lalr1.cc */971/* Line 480 of lalr1.cc */
959#line 960 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"972#line 973 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
960 break;973 break;
961 case 415: /* "FLWORExpr" */974 case 415: /* "FLWORExpr" */
962975
963/* Line 480 of lalr1.cc */976/* Line 480 of lalr1.cc */
964#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"977#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
965 { release_hack( (yyvaluep->expr) ); };978 { release_hack( (yyvaluep->expr) ); };
966979
967/* Line 480 of lalr1.cc */980/* Line 480 of lalr1.cc */
968#line 969 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"981#line 982 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
969 break;982 break;
970 case 416: /* "ReturnExpr" */983 case 416: /* "ReturnExpr" */
971984
972/* Line 480 of lalr1.cc */985/* Line 480 of lalr1.cc */
973#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"986#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
974 { release_hack( (yyvaluep->expr) ); };987 { release_hack( (yyvaluep->expr) ); };
975988
976/* Line 480 of lalr1.cc */989/* Line 480 of lalr1.cc */
977#line 978 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"990#line 991 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
978 break;991 break;
979 case 419: /* "FLWORWinCond" */992 case 419: /* "FLWORWinCond" */
980993
981/* Line 480 of lalr1.cc */994/* Line 480 of lalr1.cc */
982#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"995#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
983 { release_hack( (yyvaluep->node) ); };996 { release_hack( (yyvaluep->node) ); };
984997
985/* Line 480 of lalr1.cc */998/* Line 480 of lalr1.cc */
986#line 987 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"999#line 1000 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
987 break;1000 break;
988 case 420: /* "WindowClause" */1001 case 420: /* "WindowClause" */
9891002
990/* Line 480 of lalr1.cc */1003/* Line 480 of lalr1.cc */
991#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1004#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
992 { release_hack( (yyvaluep->node) ); };1005 { release_hack( (yyvaluep->node) ); };
9931006
994/* Line 480 of lalr1.cc */1007/* Line 480 of lalr1.cc */
995#line 996 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1008#line 1009 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
996 break;1009 break;
997 case 421: /* "CountClause" */1010 case 421: /* "CountClause" */
9981011
999/* Line 480 of lalr1.cc */1012/* Line 480 of lalr1.cc */
1000#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1013#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1001 { release_hack( (yyvaluep->node) ); };1014 { release_hack( (yyvaluep->node) ); };
10021015
1003/* Line 480 of lalr1.cc */1016/* Line 480 of lalr1.cc */
1004#line 1005 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1017#line 1018 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1005 break;1018 break;
1006 case 422: /* "ForLetWinClause" */1019 case 422: /* "ForLetWinClause" */
10071020
1008/* Line 480 of lalr1.cc */1021/* Line 480 of lalr1.cc */
1009#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1022#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1010 { release_hack( (yyvaluep->node) ); };1023 { release_hack( (yyvaluep->node) ); };
10111024
1012/* Line 480 of lalr1.cc */1025/* Line 480 of lalr1.cc */
1013#line 1014 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1026#line 1027 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1014 break;1027 break;
1015 case 424: /* "FLWORClauseList" */1028 case 424: /* "FLWORClauseList" */
10161029
1017/* Line 480 of lalr1.cc */1030/* Line 480 of lalr1.cc */
1018#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1031#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1019 { release_hack( (yyvaluep->node) ); };1032 { release_hack( (yyvaluep->node) ); };
10201033
1021/* Line 480 of lalr1.cc */1034/* Line 480 of lalr1.cc */
1022#line 1023 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1035#line 1036 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1023 break;1036 break;
1024 case 425: /* "ForClause" */1037 case 425: /* "ForClause" */
10251038
1026/* Line 480 of lalr1.cc */1039/* Line 480 of lalr1.cc */
1027#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1040#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1028 { release_hack( (yyvaluep->node) ); };1041 { release_hack( (yyvaluep->node) ); };
10291042
1030/* Line 480 of lalr1.cc */1043/* Line 480 of lalr1.cc */
1031#line 1032 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1044#line 1045 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1032 break;1045 break;
1033 case 426: /* "VarInDeclList" */1046 case 426: /* "VarInDeclList" */
10341047
1035/* Line 480 of lalr1.cc */1048/* Line 480 of lalr1.cc */
1036#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1049#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1037 { release_hack( (yyvaluep->node) ); };1050 { release_hack( (yyvaluep->node) ); };
10381051
1039/* Line 480 of lalr1.cc */1052/* Line 480 of lalr1.cc */
1040#line 1041 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1053#line 1054 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1041 break;1054 break;
1042 case 427: /* "VarInDecl" */1055 case 427: /* "VarInDecl" */
10431056
1044/* Line 480 of lalr1.cc */1057/* Line 480 of lalr1.cc */
1045#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1058#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1046 { release_hack( (yyvaluep->node) ); };1059 { release_hack( (yyvaluep->node) ); };
10471060
1048/* Line 480 of lalr1.cc */1061/* Line 480 of lalr1.cc */
1049#line 1050 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1062#line 1063 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1050 break;1063 break;
1051 case 428: /* "PositionalVar" */1064 case 428: /* "PositionalVar" */
10521065
1053/* Line 480 of lalr1.cc */1066/* Line 480 of lalr1.cc */
1054#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1067#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1055 { release_hack( (yyvaluep->node) ); };1068 { release_hack( (yyvaluep->node) ); };
10561069
1057/* Line 480 of lalr1.cc */1070/* Line 480 of lalr1.cc */
1058#line 1059 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1071#line 1072 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1059 break;1072 break;
1060 case 429: /* "FTScoreVar" */1073 case 429: /* "FTScoreVar" */
10611074
1062/* Line 480 of lalr1.cc */1075/* Line 480 of lalr1.cc */
1063#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1076#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1064 { release_hack( (yyvaluep->node) ); };1077 { release_hack( (yyvaluep->node) ); };
10651078
1066/* Line 480 of lalr1.cc */1079/* Line 480 of lalr1.cc */
1067#line 1068 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1080#line 1081 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1068 break;1081 break;
1069 case 430: /* "LetClause" */1082 case 430: /* "LetClause" */
10701083
1071/* Line 480 of lalr1.cc */1084/* Line 480 of lalr1.cc */
1072#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1085#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1073 { release_hack( (yyvaluep->node) ); };1086 { release_hack( (yyvaluep->node) ); };
10741087
1075/* Line 480 of lalr1.cc */1088/* Line 480 of lalr1.cc */
1076#line 1077 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1089#line 1090 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1077 break;1090 break;
1078 case 431: /* "VarGetsDeclList" */1091 case 431: /* "VarGetsDeclList" */
10791092
1080/* Line 480 of lalr1.cc */1093/* Line 480 of lalr1.cc */
1081#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1094#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1082 { release_hack( (yyvaluep->node) ); };1095 { release_hack( (yyvaluep->node) ); };
10831096
1084/* Line 480 of lalr1.cc */1097/* Line 480 of lalr1.cc */
1085#line 1086 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1098#line 1099 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1086 break;1099 break;
1087 case 432: /* "VarGetsDecl" */1100 case 432: /* "VarGetsDecl" */
10881101
1089/* Line 480 of lalr1.cc */1102/* Line 480 of lalr1.cc */
1090#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1103#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1091 { release_hack( (yyvaluep->node) ); };1104 { release_hack( (yyvaluep->node) ); };
10921105
1093/* Line 480 of lalr1.cc */1106/* Line 480 of lalr1.cc */
1094#line 1095 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1107#line 1108 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1095 break;1108 break;
1096 case 433: /* "WindowVarDecl" */1109 case 433: /* "WindowVarDecl" */
10971110
1098/* Line 480 of lalr1.cc */1111/* Line 480 of lalr1.cc */
1099#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1112#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1100 { release_hack( (yyvaluep->node) ); };1113 { release_hack( (yyvaluep->node) ); };
11011114
1102/* Line 480 of lalr1.cc */1115/* Line 480 of lalr1.cc */
1103#line 1104 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1116#line 1117 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1104 break;1117 break;
1105 case 434: /* "WindowVars" */1118 case 434: /* "WindowVars" */
11061119
1107/* Line 480 of lalr1.cc */1120/* Line 480 of lalr1.cc */
1108#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1121#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1109 { release_hack( (yyvaluep->node) ); };1122 { release_hack( (yyvaluep->node) ); };
11101123
1111/* Line 480 of lalr1.cc */1124/* Line 480 of lalr1.cc */
1112#line 1113 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1125#line 1126 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1113 break;1126 break;
1114 case 435: /* "WindowVars3" */1127 case 435: /* "WindowVars3" */
11151128
1116/* Line 480 of lalr1.cc */1129/* Line 480 of lalr1.cc */
1117#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1130#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1118 { release_hack( (yyvaluep->node) ); };1131 { release_hack( (yyvaluep->node) ); };
11191132
1120/* Line 480 of lalr1.cc */1133/* Line 480 of lalr1.cc */
1121#line 1122 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1134#line 1135 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1122 break;1135 break;
1123 case 436: /* "WindowVars2" */1136 case 436: /* "WindowVars2" */
11241137
1125/* Line 480 of lalr1.cc */1138/* Line 480 of lalr1.cc */
1126#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1139#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1127 { release_hack( (yyvaluep->node) ); };1140 { release_hack( (yyvaluep->node) ); };
11281141
1129/* Line 480 of lalr1.cc */1142/* Line 480 of lalr1.cc */
1130#line 1131 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1143#line 1144 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1131 break;1144 break;
1132 case 437: /* "WhereClause" */1145 case 437: /* "WhereClause" */
11331146
1134/* Line 480 of lalr1.cc */1147/* Line 480 of lalr1.cc */
1135#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1148#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1136 { release_hack( (yyvaluep->node) ); };1149 { release_hack( (yyvaluep->node) ); };
11371150
1138/* Line 480 of lalr1.cc */1151/* Line 480 of lalr1.cc */
1139#line 1140 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1152#line 1153 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1140 break;1153 break;
1141 case 438: /* "GroupByClause" */1154 case 438: /* "GroupByClause" */
11421155
1143/* Line 480 of lalr1.cc */1156/* Line 480 of lalr1.cc */
1144#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1157#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1145 { release_hack( (yyvaluep->node) ); };1158 { release_hack( (yyvaluep->node) ); };
11461159
1147/* Line 480 of lalr1.cc */1160/* Line 480 of lalr1.cc */
1148#line 1149 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1161#line 1162 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1149 break;1162 break;
1150 case 439: /* "GroupSpecList" */1163 case 439: /* "GroupSpecList" */
11511164
1152/* Line 480 of lalr1.cc */1165/* Line 480 of lalr1.cc */
1153#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1166#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1154 { release_hack( (yyvaluep->node) ); };1167 { release_hack( (yyvaluep->node) ); };
11551168
1156/* Line 480 of lalr1.cc */1169/* Line 480 of lalr1.cc */
1157#line 1158 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1170#line 1171 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1158 break;1171 break;
1159 case 440: /* "GroupSpec" */1172 case 440: /* "GroupSpec" */
11601173
1161/* Line 480 of lalr1.cc */1174/* Line 480 of lalr1.cc */
1162#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1175#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1163 { release_hack( (yyvaluep->node) ); };1176 { release_hack( (yyvaluep->node) ); };
11641177
1165/* Line 480 of lalr1.cc */1178/* Line 480 of lalr1.cc */
1166#line 1167 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1179#line 1180 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1167 break;1180 break;
1168 case 441: /* "GroupCollationSpec" */1181 case 441: /* "GroupCollationSpec" */
11691182
1170/* Line 480 of lalr1.cc */1183/* Line 480 of lalr1.cc */
1171#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1184#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1172 { release_hack( (yyvaluep->node) ); };1185 { release_hack( (yyvaluep->node) ); };
11731186
1174/* Line 480 of lalr1.cc */1187/* Line 480 of lalr1.cc */
1175#line 1176 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1188#line 1189 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1176 break;1189 break;
1177 case 442: /* "OrderByClause" */1190 case 442: /* "OrderByClause" */
11781191
1179/* Line 480 of lalr1.cc */1192/* Line 480 of lalr1.cc */
1180#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1193#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1181 { release_hack( (yyvaluep->node) ); };1194 { release_hack( (yyvaluep->node) ); };
11821195
1183/* Line 480 of lalr1.cc */1196/* Line 480 of lalr1.cc */
1184#line 1185 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1197#line 1198 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1185 break;1198 break;
1186 case 443: /* "OrderSpecList" */1199 case 443: /* "OrderSpecList" */
11871200
1188/* Line 480 of lalr1.cc */1201/* Line 480 of lalr1.cc */
1189#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1202#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1190 { release_hack( (yyvaluep->node) ); };1203 { release_hack( (yyvaluep->node) ); };
11911204
1192/* Line 480 of lalr1.cc */1205/* Line 480 of lalr1.cc */
1193#line 1194 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1206#line 1207 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1194 break;1207 break;
1195 case 444: /* "OrderSpec" */1208 case 444: /* "OrderSpec" */
11961209
1197/* Line 480 of lalr1.cc */1210/* Line 480 of lalr1.cc */
1198#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1211#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1199 { release_hack( (yyvaluep->node) ); };1212 { release_hack( (yyvaluep->node) ); };
12001213
1201/* Line 480 of lalr1.cc */1214/* Line 480 of lalr1.cc */
1202#line 1203 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1215#line 1216 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1203 break;1216 break;
1204 case 445: /* "OrderModifier" */1217 case 445: /* "OrderModifier" */
12051218
1206/* Line 480 of lalr1.cc */1219/* Line 480 of lalr1.cc */
1207#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1220#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1208 { release_hack( (yyvaluep->node) ); };1221 { release_hack( (yyvaluep->node) ); };
12091222
1210/* Line 480 of lalr1.cc */1223/* Line 480 of lalr1.cc */
1211#line 1212 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1224#line 1225 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1212 break;1225 break;
1213 case 446: /* "OrderDirSpec" */1226 case 446: /* "OrderDirSpec" */
12141227
1215/* Line 480 of lalr1.cc */1228/* Line 480 of lalr1.cc */
1216#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1229#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1217 { release_hack( (yyvaluep->node) ); };1230 { release_hack( (yyvaluep->node) ); };
12181231
1219/* Line 480 of lalr1.cc */1232/* Line 480 of lalr1.cc */
1220#line 1221 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1233#line 1234 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1221 break;1234 break;
1222 case 447: /* "OrderEmptySpec" */1235 case 447: /* "OrderEmptySpec" */
12231236
1224/* Line 480 of lalr1.cc */1237/* Line 480 of lalr1.cc */
1225#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1238#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1226 { release_hack( (yyvaluep->node) ); };1239 { release_hack( (yyvaluep->node) ); };
12271240
1228/* Line 480 of lalr1.cc */1241/* Line 480 of lalr1.cc */
1229#line 1230 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1242#line 1243 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1230 break;1243 break;
1231 case 448: /* "OrderCollationSpec" */1244 case 448: /* "OrderCollationSpec" */
12321245
1233/* Line 480 of lalr1.cc */1246/* Line 480 of lalr1.cc */
1234#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1247#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1235 { release_hack( (yyvaluep->node) ); };1248 { release_hack( (yyvaluep->node) ); };
12361249
1237/* Line 480 of lalr1.cc */1250/* Line 480 of lalr1.cc */
1238#line 1239 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1251#line 1252 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1239 break;1252 break;
1240 case 449: /* "QuantifiedExpr" */1253 case 449: /* "QuantifiedExpr" */
12411254
1242/* Line 480 of lalr1.cc */1255/* Line 480 of lalr1.cc */
1243#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1256#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1244 { release_hack( (yyvaluep->expr) ); };1257 { release_hack( (yyvaluep->expr) ); };
12451258
1246/* Line 480 of lalr1.cc */1259/* Line 480 of lalr1.cc */
1247#line 1248 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1260#line 1261 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1248 break;1261 break;
1249 case 450: /* "QVarInDeclList" */1262 case 450: /* "QVarInDeclList" */
12501263
1251/* Line 480 of lalr1.cc */1264/* Line 480 of lalr1.cc */
1252#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1265#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1253 { release_hack( (yyvaluep->node) ); };1266 { release_hack( (yyvaluep->node) ); };
12541267
1255/* Line 480 of lalr1.cc */1268/* Line 480 of lalr1.cc */
1256#line 1257 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1269#line 1270 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1257 break;1270 break;
1258 case 451: /* "QVarInDecl" */1271 case 451: /* "QVarInDecl" */
12591272
1260/* Line 480 of lalr1.cc */1273/* Line 480 of lalr1.cc */
1261#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1274#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1262 { release_hack( (yyvaluep->node) ); };1275 { release_hack( (yyvaluep->node) ); };
12631276
1264/* Line 480 of lalr1.cc */1277/* Line 480 of lalr1.cc */
1265#line 1266 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1278#line 1279 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1266 break;1279 break;
1267 case 452: /* "SwitchExpr" */1280 case 452: /* "SwitchExpr" */
12681281
1269/* Line 480 of lalr1.cc */1282/* Line 480 of lalr1.cc */
1270#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1283#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1271 { release_hack( (yyvaluep->expr) ); };1284 { release_hack( (yyvaluep->expr) ); };
12721285
1273/* Line 480 of lalr1.cc */1286/* Line 480 of lalr1.cc */
1274#line 1275 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1287#line 1288 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1275 break;1288 break;
1276 case 453: /* "SwitchCaseClauseList" */1289 case 453: /* "SwitchCaseClauseList" */
12771290
1278/* Line 480 of lalr1.cc */1291/* Line 480 of lalr1.cc */
1279#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1292#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1280 { release_hack( (yyvaluep->node) ); };1293 { release_hack( (yyvaluep->node) ); };
12811294
1282/* Line 480 of lalr1.cc */1295/* Line 480 of lalr1.cc */
1283#line 1284 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1296#line 1297 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1284 break;1297 break;
1285 case 454: /* "SwitchCaseClause" */1298 case 454: /* "SwitchCaseClause" */
12861299
1287/* Line 480 of lalr1.cc */1300/* Line 480 of lalr1.cc */
1288#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1301#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1289 { release_hack( (yyvaluep->node) ); };1302 { release_hack( (yyvaluep->node) ); };
12901303
1291/* Line 480 of lalr1.cc */1304/* Line 480 of lalr1.cc */
1292#line 1293 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1305#line 1306 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1293 break;1306 break;
1294 case 455: /* "SwitchCaseOperandList" */1307 case 455: /* "SwitchCaseOperandList" */
12951308
1296/* Line 480 of lalr1.cc */1309/* Line 480 of lalr1.cc */
1297#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1310#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1298 { release_hack( (yyvaluep->node) ); };1311 { release_hack( (yyvaluep->node) ); };
12991312
1300/* Line 480 of lalr1.cc */1313/* Line 480 of lalr1.cc */
1301#line 1302 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1314#line 1315 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1302 break;1315 break;
1303 case 456: /* "SwitchStatement" */1316 case 456: /* "SwitchStatement" */
13041317
1305/* Line 480 of lalr1.cc */1318/* Line 480 of lalr1.cc */
1306#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1319#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1307 { release_hack( (yyvaluep->expr) ); };1320 { release_hack( (yyvaluep->expr) ); };
13081321
1309/* Line 480 of lalr1.cc */1322/* Line 480 of lalr1.cc */
1310#line 1311 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1323#line 1324 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1311 break;1324 break;
1312 case 459: /* "TypeswitchExpr" */1325 case 459: /* "TypeswitchExpr" */
13131326
1314/* Line 480 of lalr1.cc */1327/* Line 480 of lalr1.cc */
1315#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1328#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1316 { release_hack( (yyvaluep->expr) ); };1329 { release_hack( (yyvaluep->expr) ); };
13171330
1318/* Line 480 of lalr1.cc */1331/* Line 480 of lalr1.cc */
1319#line 1320 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1332#line 1333 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1320 break;1333 break;
1321 case 460: /* "TypeswitchStatement" */1334 case 460: /* "TypeswitchStatement" */
13221335
1323/* Line 480 of lalr1.cc */1336/* Line 480 of lalr1.cc */
1324#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1337#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1325 { release_hack( (yyvaluep->expr) ); };1338 { release_hack( (yyvaluep->expr) ); };
13261339
1327/* Line 480 of lalr1.cc */1340/* Line 480 of lalr1.cc */
1328#line 1329 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1341#line 1342 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1329 break;1342 break;
1330 case 461: /* "CaseClauseList" */1343 case 461: /* "CaseClauseList" */
13311344
1332/* Line 480 of lalr1.cc */1345/* Line 480 of lalr1.cc */
1333#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1346#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1334 { release_hack( (yyvaluep->node) ); };1347 { release_hack( (yyvaluep->node) ); };
13351348
1336/* Line 480 of lalr1.cc */1349/* Line 480 of lalr1.cc */
1337#line 1338 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1350#line 1351 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1338 break;1351 break;
1339 case 462: /* "CaseClause" */1352 case 462: /* "CaseClause" */
13401353
1341/* Line 480 of lalr1.cc */1354/* Line 480 of lalr1.cc */
1342#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1355#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1343 { release_hack( (yyvaluep->node) ); };1356 { release_hack( (yyvaluep->node) ); };
13441357
1345/* Line 480 of lalr1.cc */1358/* Line 480 of lalr1.cc */
1346#line 1347 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1359#line 1360 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1347 break;1360 break;
1348 case 465: /* "SequenceTypeList" */1361 case 465: /* "SequenceTypeList" */
13491362
1350/* Line 480 of lalr1.cc */1363/* Line 480 of lalr1.cc */
1351#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1364#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1352 { release_hack( (yyvaluep->node) ); };1365 { release_hack( (yyvaluep->node) ); };
13531366
1354/* Line 480 of lalr1.cc */1367/* Line 480 of lalr1.cc */
1355#line 1356 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1368#line 1369 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1356 break;1369 break;
1357 case 466: /* "IfExpr" */1370 case 466: /* "IfExpr" */
13581371
1359/* Line 480 of lalr1.cc */1372/* Line 480 of lalr1.cc */
1360#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1373#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1361 { release_hack( (yyvaluep->expr) ); };1374 { release_hack( (yyvaluep->expr) ); };
13621375
1363/* Line 480 of lalr1.cc */1376/* Line 480 of lalr1.cc */
1364#line 1365 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1377#line 1378 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1365 break;1378 break;
1366 case 467: /* "OrExpr" */1379 case 467: /* "OrExpr" */
13671380
1368/* Line 480 of lalr1.cc */1381/* Line 480 of lalr1.cc */
1369#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1382#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1370 { release_hack( (yyvaluep->expr) ); };1383 { release_hack( (yyvaluep->expr) ); };
13711384
1372/* Line 480 of lalr1.cc */1385/* Line 480 of lalr1.cc */
1373#line 1374 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1386#line 1387 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1374 break;1387 break;
1375 case 468: /* "AndExpr" */1388 case 468: /* "AndExpr" */
13761389
1377/* Line 480 of lalr1.cc */1390/* Line 480 of lalr1.cc */
1378#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1391#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1379 { release_hack( (yyvaluep->expr) ); };1392 { release_hack( (yyvaluep->expr) ); };
13801393
1381/* Line 480 of lalr1.cc */1394/* Line 480 of lalr1.cc */
1382#line 1383 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1395#line 1396 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1383 break;1396 break;
1384 case 469: /* "ComparisonExpr" */1397 case 469: /* "ComparisonExpr" */
13851398
1386/* Line 480 of lalr1.cc */1399/* Line 480 of lalr1.cc */
1387#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1400#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1388 { release_hack( (yyvaluep->expr) ); };1401 { release_hack( (yyvaluep->expr) ); };
13891402
1390/* Line 480 of lalr1.cc */1403/* Line 480 of lalr1.cc */
1391#line 1392 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1404#line 1405 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1392 break;1405 break;
1393 case 471: /* "FTContainsExpr" */1406 case 471: /* "FTContainsExpr" */
13941407
1395/* Line 480 of lalr1.cc */1408/* Line 480 of lalr1.cc */
1396#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1409#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1397 { release_hack( (yyvaluep->expr) ); };1410 { release_hack( (yyvaluep->expr) ); };
13981411
1399/* Line 480 of lalr1.cc */1412/* Line 480 of lalr1.cc */
1400#line 1401 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1413#line 1414 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1401 break;1414 break;
1402 case 472: /* "StringConcatExpr" */1415 case 472: /* "StringConcatExpr" */
14031416
1404/* Line 480 of lalr1.cc */1417/* Line 480 of lalr1.cc */
1405#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1418#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1406 { release_hack( (yyvaluep->expr) ); };1419 { release_hack( (yyvaluep->expr) ); };
14071420
1408/* Line 480 of lalr1.cc */1421/* Line 480 of lalr1.cc */
1409#line 1410 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1422#line 1423 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1410 break;1423 break;
1411 case 473: /* "opt_FTIgnoreOption" */1424 case 473: /* "opt_FTIgnoreOption" */
14121425
1413/* Line 480 of lalr1.cc */1426/* Line 480 of lalr1.cc */
1414#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1427#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1415 { release_hack( (yyvaluep->node) ); };1428 { release_hack( (yyvaluep->node) ); };
14161429
1417/* Line 480 of lalr1.cc */1430/* Line 480 of lalr1.cc */
1418#line 1419 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1431#line 1432 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1419 break;1432 break;
1420 case 474: /* "RangeExpr" */1433 case 474: /* "RangeExpr" */
14211434
1422/* Line 480 of lalr1.cc */1435/* Line 480 of lalr1.cc */
1423#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1436#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1424 { release_hack( (yyvaluep->expr) ); };1437 { release_hack( (yyvaluep->expr) ); };
14251438
1426/* Line 480 of lalr1.cc */1439/* Line 480 of lalr1.cc */
1427#line 1428 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1440#line 1441 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1428 break;1441 break;
1429 case 475: /* "AdditiveExpr" */1442 case 475: /* "AdditiveExpr" */
14301443
1431/* Line 480 of lalr1.cc */1444/* Line 480 of lalr1.cc */
1432#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1445#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1433 { release_hack( (yyvaluep->expr) ); };1446 { release_hack( (yyvaluep->expr) ); };
14341447
1435/* Line 480 of lalr1.cc */1448/* Line 480 of lalr1.cc */
1436#line 1437 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1449#line 1450 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1437 break;1450 break;
1438 case 476: /* "MultiplicativeExpr" */1451 case 476: /* "MultiplicativeExpr" */
14391452
1440/* Line 480 of lalr1.cc */1453/* Line 480 of lalr1.cc */
1441#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1454#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1442 { release_hack( (yyvaluep->expr) ); };1455 { release_hack( (yyvaluep->expr) ); };
14431456
1444/* Line 480 of lalr1.cc */1457/* Line 480 of lalr1.cc */
1445#line 1446 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1458#line 1459 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1446 break;1459 break;
1447 case 477: /* "UnionExpr" */1460 case 477: /* "UnionExpr" */
14481461
1449/* Line 480 of lalr1.cc */1462/* Line 480 of lalr1.cc */
1450#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1463#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1451 { release_hack( (yyvaluep->expr) ); };1464 { release_hack( (yyvaluep->expr) ); };
14521465
1453/* Line 480 of lalr1.cc */1466/* Line 480 of lalr1.cc */
1454#line 1455 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1467#line 1468 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1455 break;1468 break;
1456 case 478: /* "IntersectExceptExpr" */1469 case 478: /* "IntersectExceptExpr" */
14571470
1458/* Line 480 of lalr1.cc */1471/* Line 480 of lalr1.cc */
1459#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1472#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1460 { release_hack( (yyvaluep->expr) ); };1473 { release_hack( (yyvaluep->expr) ); };
14611474
1462/* Line 480 of lalr1.cc */1475/* Line 480 of lalr1.cc */
1463#line 1464 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1476#line 1477 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1464 break;1477 break;
1465 case 479: /* "InstanceofExpr" */1478 case 479: /* "InstanceofExpr" */
14661479
1467/* Line 480 of lalr1.cc */1480/* Line 480 of lalr1.cc */
1468#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1481#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1469 { release_hack( (yyvaluep->expr) ); };1482 { release_hack( (yyvaluep->expr) ); };
14701483
1471/* Line 480 of lalr1.cc */1484/* Line 480 of lalr1.cc */
1472#line 1473 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1485#line 1486 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1473 break;1486 break;
1474 case 480: /* "TreatExpr" */1487 case 480: /* "TreatExpr" */
14751488
1476/* Line 480 of lalr1.cc */1489/* Line 480 of lalr1.cc */
1477#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1490#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1478 { release_hack( (yyvaluep->expr) ); };1491 { release_hack( (yyvaluep->expr) ); };
14791492
1480/* Line 480 of lalr1.cc */1493/* Line 480 of lalr1.cc */
1481#line 1482 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1494#line 1495 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1482 break;1495 break;
1483 case 481: /* "CastableExpr" */1496 case 481: /* "CastableExpr" */
14841497
1485/* Line 480 of lalr1.cc */1498/* Line 480 of lalr1.cc */
1486#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1499#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1487 { release_hack( (yyvaluep->expr) ); };1500 { release_hack( (yyvaluep->expr) ); };
14881501
1489/* Line 480 of lalr1.cc */1502/* Line 480 of lalr1.cc */
1490#line 1491 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1503#line 1504 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1491 break;1504 break;
1492 case 482: /* "CastExpr" */1505 case 482: /* "CastExpr" */
14931506
1494/* Line 480 of lalr1.cc */1507/* Line 480 of lalr1.cc */
1495#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1508#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1496 { release_hack( (yyvaluep->expr) ); };1509 { release_hack( (yyvaluep->expr) ); };
14971510
1498/* Line 480 of lalr1.cc */1511/* Line 480 of lalr1.cc */
1499#line 1500 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1512#line 1513 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1500 break;1513 break;
1501 case 483: /* "SingleType" */1514 case 483: /* "SingleType" */
15021515
1503/* Line 480 of lalr1.cc */1516/* Line 480 of lalr1.cc */
1504#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1517#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1505 { release_hack( (yyvaluep->node) ); };1518 { release_hack( (yyvaluep->node) ); };
15061519
1507/* Line 480 of lalr1.cc */1520/* Line 480 of lalr1.cc */
1508#line 1509 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1521#line 1522 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1509 break;1522 break;
1510 case 484: /* "UnaryExpr" */1523 case 484: /* "UnaryExpr" */
15111524
1512/* Line 480 of lalr1.cc */1525/* Line 480 of lalr1.cc */
1513#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1526#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1514 { release_hack( (yyvaluep->expr) ); };1527 { release_hack( (yyvaluep->expr) ); };
15151528
1516/* Line 480 of lalr1.cc */1529/* Line 480 of lalr1.cc */
1517#line 1518 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1530#line 1531 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1518 break;1531 break;
1519 case 485: /* "SignList" */1532 case 485: /* "SignList" */
15201533
1521/* Line 480 of lalr1.cc */1534/* Line 480 of lalr1.cc */
1522#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1535#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1523 { release_hack( (yyvaluep->node) ); };1536 { release_hack( (yyvaluep->node) ); };
15241537
1525/* Line 480 of lalr1.cc */1538/* Line 480 of lalr1.cc */
1526#line 1527 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1539#line 1540 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1527 break;1540 break;
1528 case 486: /* "ValueExpr" */1541 case 486: /* "ValueExpr" */
15291542
1530/* Line 480 of lalr1.cc */1543/* Line 480 of lalr1.cc */
1531#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1544#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1532 { release_hack( (yyvaluep->expr) ); };1545 { release_hack( (yyvaluep->expr) ); };
15331546
1534/* Line 480 of lalr1.cc */1547/* Line 480 of lalr1.cc */
1535#line 1536 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1548#line 1549 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1536 break;1549 break;
1537 case 487: /* "SimpleMapExpr" */1550 case 487: /* "SimpleMapExpr" */
15381551
1539/* Line 480 of lalr1.cc */1552/* Line 480 of lalr1.cc */
1540#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1553#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1541 { release_hack( (yyvaluep->expr) ); };1554 { release_hack( (yyvaluep->expr) ); };
15421555
1543/* Line 480 of lalr1.cc */1556/* Line 480 of lalr1.cc */
1544#line 1545 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1557#line 1558 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1545 break;1558 break;
1546 case 488: /* "ValueComp" */1559 case 488: /* "ValueComp" */
15471560
1548/* Line 480 of lalr1.cc */1561/* Line 480 of lalr1.cc */
1549#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1562#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1550 { release_hack( (yyvaluep->node) ); };1563 { release_hack( (yyvaluep->node) ); };
15511564
1552/* Line 480 of lalr1.cc */1565/* Line 480 of lalr1.cc */
1553#line 1554 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1566#line 1567 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1554 break;1567 break;
1555 case 489: /* "NodeComp" */1568 case 489: /* "NodeComp" */
15561569
1557/* Line 480 of lalr1.cc */1570/* Line 480 of lalr1.cc */
1558#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1571#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1559 { release_hack( (yyvaluep->node) ); };1572 { release_hack( (yyvaluep->node) ); };
15601573
1561/* Line 480 of lalr1.cc */1574/* Line 480 of lalr1.cc */
1562#line 1563 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1575#line 1576 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1563 break;1576 break;
1564 case 490: /* "ValidateExpr" */1577 case 490: /* "ValidateExpr" */
15651578
1566/* Line 480 of lalr1.cc */1579/* Line 480 of lalr1.cc */
1567#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1580#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1568 { release_hack( (yyvaluep->expr) ); };1581 { release_hack( (yyvaluep->expr) ); };
15691582
1570/* Line 480 of lalr1.cc */1583/* Line 480 of lalr1.cc */
1571#line 1572 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1584#line 1585 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1572 break;1585 break;
1573 case 491: /* "ExtensionExpr" */1586 case 491: /* "ExtensionExpr" */
15741587
1575/* Line 480 of lalr1.cc */1588/* Line 480 of lalr1.cc */
1576#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1589#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1577 { release_hack( (yyvaluep->expr) ); };1590 { release_hack( (yyvaluep->expr) ); };
15781591
1579/* Line 480 of lalr1.cc */1592/* Line 480 of lalr1.cc */
1580#line 1581 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1593#line 1594 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1581 break;1594 break;
1582 case 492: /* "Pragma_list" */1595 case 492: /* "Pragma_list" */
15831596
1584/* Line 480 of lalr1.cc */1597/* Line 480 of lalr1.cc */
1585#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1598#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1586 { release_hack( (yyvaluep->node) ); };1599 { release_hack( (yyvaluep->node) ); };
15871600
1588/* Line 480 of lalr1.cc */1601/* Line 480 of lalr1.cc */
1589#line 1590 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1602#line 1603 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1590 break;1603 break;
1591 case 493: /* "Pragma" */1604 case 493: /* "Pragma" */
15921605
1593/* Line 480 of lalr1.cc */1606/* Line 480 of lalr1.cc */
1594#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1607#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1595 { release_hack( (yyvaluep->node) ); };1608 { release_hack( (yyvaluep->node) ); };
15961609
1597/* Line 480 of lalr1.cc */1610/* Line 480 of lalr1.cc */
1598#line 1599 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1611#line 1612 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1599 break;1612 break;
1600 case 494: /* "PathExpr" */1613 case 494: /* "PathExpr" */
16011614
1602/* Line 480 of lalr1.cc */1615/* Line 480 of lalr1.cc */
1603#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1616#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1604 { release_hack( (yyvaluep->expr) ); };1617 { release_hack( (yyvaluep->expr) ); };
16051618
1606/* Line 480 of lalr1.cc */1619/* Line 480 of lalr1.cc */
1607#line 1608 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1620#line 1621 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1608 break;1621 break;
1609 case 496: /* "RelativePathExpr" */1622 case 496: /* "RelativePathExpr" */
16101623
1611/* Line 480 of lalr1.cc */1624/* Line 480 of lalr1.cc */
1612#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1625#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1613 { release_hack( (yyvaluep->expr) ); };1626 { release_hack( (yyvaluep->expr) ); };
16141627
1615/* Line 480 of lalr1.cc */1628/* Line 480 of lalr1.cc */
1616#line 1617 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1629#line 1630 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1617 break;1630 break;
1618 case 497: /* "StepExpr" */1631 case 497: /* "StepExpr" */
16191632
1620/* Line 480 of lalr1.cc */1633/* Line 480 of lalr1.cc */
1621#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1634#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1622 { release_hack( (yyvaluep->expr) ); };1635 { release_hack( (yyvaluep->expr) ); };
16231636
1624/* Line 480 of lalr1.cc */1637/* Line 480 of lalr1.cc */
1625#line 1626 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1638#line 1639 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1626 break;1639 break;
1627 case 498: /* "AxisStep" */1640 case 498: /* "AxisStep" */
16281641
1629/* Line 480 of lalr1.cc */1642/* Line 480 of lalr1.cc */
1630#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1643#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1631 { release_hack( (yyvaluep->expr) ); };1644 { release_hack( (yyvaluep->expr) ); };
16321645
1633/* Line 480 of lalr1.cc */1646/* Line 480 of lalr1.cc */
1634#line 1635 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1647#line 1648 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1635 break;1648 break;
1636 case 499: /* "ForwardStep" */1649 case 499: /* "ForwardStep" */
16371650
1638/* Line 480 of lalr1.cc */1651/* Line 480 of lalr1.cc */
1639#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1652#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1640 { release_hack( (yyvaluep->node) ); };1653 { release_hack( (yyvaluep->node) ); };
16411654
1642/* Line 480 of lalr1.cc */1655/* Line 480 of lalr1.cc */
1643#line 1644 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1656#line 1657 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1644 break;1657 break;
1645 case 500: /* "ForwardAxis" */1658 case 500: /* "ForwardAxis" */
16461659
1647/* Line 480 of lalr1.cc */1660/* Line 480 of lalr1.cc */
1648#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1661#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1649 { release_hack( (yyvaluep->node) ); };1662 { release_hack( (yyvaluep->node) ); };
16501663
1651/* Line 480 of lalr1.cc */1664/* Line 480 of lalr1.cc */
1652#line 1653 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1665#line 1666 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1653 break;1666 break;
1654 case 501: /* "AbbrevForwardStep" */1667 case 501: /* "AbbrevForwardStep" */
16551668
1656/* Line 480 of lalr1.cc */1669/* Line 480 of lalr1.cc */
1657#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1670#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1658 { release_hack( (yyvaluep->node) ); };1671 { release_hack( (yyvaluep->node) ); };
16591672
1660/* Line 480 of lalr1.cc */1673/* Line 480 of lalr1.cc */
1661#line 1662 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1674#line 1675 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1662 break;1675 break;
1663 case 502: /* "ReverseStep" */1676 case 502: /* "ReverseStep" */
16641677
1665/* Line 480 of lalr1.cc */1678/* Line 480 of lalr1.cc */
1666#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1679#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1667 { release_hack( (yyvaluep->node) ); };1680 { release_hack( (yyvaluep->node) ); };
16681681
1669/* Line 480 of lalr1.cc */1682/* Line 480 of lalr1.cc */
1670#line 1671 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1683#line 1684 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1671 break;1684 break;
1672 case 503: /* "ReverseAxis" */1685 case 503: /* "ReverseAxis" */
16731686
1674/* Line 480 of lalr1.cc */1687/* Line 480 of lalr1.cc */
1675#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1688#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1676 { release_hack( (yyvaluep->node) ); };1689 { release_hack( (yyvaluep->node) ); };
16771690
1678/* Line 480 of lalr1.cc */1691/* Line 480 of lalr1.cc */
1679#line 1680 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1692#line 1693 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1680 break;1693 break;
1681 case 504: /* "NodeTest" */1694 case 504: /* "NodeTest" */
16821695
1683/* Line 480 of lalr1.cc */1696/* Line 480 of lalr1.cc */
1684#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1697#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1685 { release_hack( (yyvaluep->node) ); };1698 { release_hack( (yyvaluep->node) ); };
16861699
1687/* Line 480 of lalr1.cc */1700/* Line 480 of lalr1.cc */
1688#line 1689 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1701#line 1702 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1689 break;1702 break;
1690 case 505: /* "NameTest" */1703 case 505: /* "NameTest" */
16911704
1692/* Line 480 of lalr1.cc */1705/* Line 480 of lalr1.cc */
1693#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1706#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1694 { release_hack( (yyvaluep->node) ); };1707 { release_hack( (yyvaluep->node) ); };
16951708
1696/* Line 480 of lalr1.cc */1709/* Line 480 of lalr1.cc */
1697#line 1698 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1710#line 1711 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1698 break;1711 break;
1699 case 506: /* "Wildcard" */1712 case 506: /* "Wildcard" */
17001713
1701/* Line 480 of lalr1.cc */1714/* Line 480 of lalr1.cc */
1702#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1715#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1703 { release_hack( (yyvaluep->node) ); };1716 { release_hack( (yyvaluep->node) ); };
17041717
1705/* Line 480 of lalr1.cc */1718/* Line 480 of lalr1.cc */
1706#line 1707 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1719#line 1720 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1707 break;1720 break;
1708 case 507: /* "FilterExpr" */1721 case 507: /* "FilterExpr" */
17091722
1710/* Line 480 of lalr1.cc */1723/* Line 480 of lalr1.cc */
1711#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1724#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1712 { release_hack( (yyvaluep->expr) ); };1725 { release_hack( (yyvaluep->expr) ); };
17131726
1714/* Line 480 of lalr1.cc */1727/* Line 480 of lalr1.cc */
1715#line 1716 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1728#line 1729 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1716 break;1729 break;
1717 case 508: /* "PredicateList" */1730 case 508: /* "PredicateList" */
17181731
1719/* Line 480 of lalr1.cc */1732/* Line 480 of lalr1.cc */
1720#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1733#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1721 { release_hack( (yyvaluep->node) ); };1734 { release_hack( (yyvaluep->node) ); };
17221735
1723/* Line 480 of lalr1.cc */1736/* Line 480 of lalr1.cc */
1724#line 1725 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1737#line 1738 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1725 break;1738 break;
1726 case 509: /* "Predicate" */1739 case 509: /* "Predicate" */
17271740
1728/* Line 480 of lalr1.cc */1741/* Line 480 of lalr1.cc */
1729#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1742#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1730 { release_hack( (yyvaluep->expr) ); };1743 { release_hack( (yyvaluep->expr) ); };
17311744
1732/* Line 480 of lalr1.cc */1745/* Line 480 of lalr1.cc */
1733#line 1734 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1746#line 1747 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1734 break;1747 break;
1735 case 510: /* "PrimaryExpr" */1748 case 510: /* "PrimaryExpr" */
17361749
1737/* Line 480 of lalr1.cc */1750/* Line 480 of lalr1.cc */
1738#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1751#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1739 { release_hack( (yyvaluep->expr) ); };1752 { release_hack( (yyvaluep->expr) ); };
17401753
1741/* Line 480 of lalr1.cc */1754/* Line 480 of lalr1.cc */
1742#line 1743 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1755#line 1756 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1743 break;1756 break;
1744 case 511: /* "Literal" */1757 case 511: /* "Literal" */
17451758
1746/* Line 480 of lalr1.cc */1759/* Line 480 of lalr1.cc */
1747#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1760#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1748 { release_hack( (yyvaluep->expr) ); };1761 { release_hack( (yyvaluep->expr) ); };
17491762
1750/* Line 480 of lalr1.cc */1763/* Line 480 of lalr1.cc */
1751#line 1752 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1764#line 1765 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1752 break;1765 break;
1753 case 512: /* "NumericLiteral" */1766 case 512: /* "NumericLiteral" */
17541767
1755/* Line 480 of lalr1.cc */1768/* Line 480 of lalr1.cc */
1756#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1769#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1757 { release_hack( (yyvaluep->expr) ); };1770 { release_hack( (yyvaluep->expr) ); };
17581771
1759/* Line 480 of lalr1.cc */1772/* Line 480 of lalr1.cc */
1760#line 1761 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1773#line 1774 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1761 break;1774 break;
1762 case 513: /* "VarRef" */1775 case 513: /* "VarRef" */
17631776
1764/* Line 480 of lalr1.cc */1777/* Line 480 of lalr1.cc */
1765#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1778#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1766 { release_hack( (yyvaluep->expr) ); };1779 { release_hack( (yyvaluep->expr) ); };
17671780
1768/* Line 480 of lalr1.cc */1781/* Line 480 of lalr1.cc */
1769#line 1770 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1782#line 1783 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1770 break;1783 break;
1771 case 514: /* "ParenthesizedExpr" */1784 case 514: /* "ParenthesizedExpr" */
17721785
1773/* Line 480 of lalr1.cc */1786/* Line 480 of lalr1.cc */
1774#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1787#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1775 { release_hack( (yyvaluep->expr) ); };1788 { release_hack( (yyvaluep->expr) ); };
17761789
1777/* Line 480 of lalr1.cc */1790/* Line 480 of lalr1.cc */
1778#line 1779 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1791#line 1792 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1779 break;1792 break;
1780 case 515: /* "ContextItemExpr" */1793 case 515: /* "ContextItemExpr" */
17811794
1782/* Line 480 of lalr1.cc */1795/* Line 480 of lalr1.cc */
1783#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1796#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1784 { release_hack( (yyvaluep->expr) ); };1797 { release_hack( (yyvaluep->expr) ); };
17851798
1786/* Line 480 of lalr1.cc */1799/* Line 480 of lalr1.cc */
1787#line 1788 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1800#line 1801 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1788 break;1801 break;
1789 case 516: /* "OrderedExpr" */1802 case 516: /* "OrderedExpr" */
17901803
1791/* Line 480 of lalr1.cc */1804/* Line 480 of lalr1.cc */
1792#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1805#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1793 { release_hack( (yyvaluep->expr) ); };1806 { release_hack( (yyvaluep->expr) ); };
17941807
1795/* Line 480 of lalr1.cc */1808/* Line 480 of lalr1.cc */
1796#line 1797 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1809#line 1810 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1797 break;1810 break;
1798 case 517: /* "UnorderedExpr" */1811 case 517: /* "UnorderedExpr" */
17991812
1800/* Line 480 of lalr1.cc */1813/* Line 480 of lalr1.cc */
1801#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1814#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1802 { release_hack( (yyvaluep->expr) ); };1815 { release_hack( (yyvaluep->expr) ); };
18031816
1804/* Line 480 of lalr1.cc */1817/* Line 480 of lalr1.cc */
1805#line 1806 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1818#line 1819 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1806 break;1819 break;
1807 case 518: /* "FunctionCall" */1820 case 518: /* "FunctionCall" */
18081821
1809/* Line 480 of lalr1.cc */1822/* Line 480 of lalr1.cc */
1810#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1823#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1811 { release_hack( (yyvaluep->expr) ); };1824 { release_hack( (yyvaluep->expr) ); };
18121825
1813/* Line 480 of lalr1.cc */1826/* Line 480 of lalr1.cc */
1814#line 1815 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1827#line 1828 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1815 break;1828 break;
1816 case 519: /* "ArgList" */1829 case 519: /* "ArgList" */
18171830
1818/* Line 480 of lalr1.cc */1831/* Line 480 of lalr1.cc */
1819#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1832#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1820 { release_hack( (yyvaluep->node) ); };1833 { release_hack( (yyvaluep->node) ); };
18211834
1822/* Line 480 of lalr1.cc */1835/* Line 480 of lalr1.cc */
1823#line 1824 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1836#line 1837 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1824 break;1837 break;
1825 case 520: /* "Constructor" */1838 case 520: /* "Constructor" */
18261839
1827/* Line 480 of lalr1.cc */1840/* Line 480 of lalr1.cc */
1828#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1841#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1829 { release_hack( (yyvaluep->expr) ); };1842 { release_hack( (yyvaluep->expr) ); };
18301843
1831/* Line 480 of lalr1.cc */1844/* Line 480 of lalr1.cc */
1832#line 1833 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1845#line 1846 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1833 break;1846 break;
1834 case 521: /* "DirectConstructor" */1847 case 521: /* "DirectConstructor" */
18351848
1836/* Line 480 of lalr1.cc */1849/* Line 480 of lalr1.cc */
1837#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1850#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1838 { release_hack( (yyvaluep->expr) ); };1851 { release_hack( (yyvaluep->expr) ); };
18391852
1840/* Line 480 of lalr1.cc */1853/* Line 480 of lalr1.cc */
1841#line 1842 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1854#line 1855 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1842 break;1855 break;
1843 case 522: /* "DirElemConstructor" */1856 case 522: /* "DirElemConstructor" */
18441857
1845/* Line 480 of lalr1.cc */1858/* Line 480 of lalr1.cc */
1846#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1859#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1847 { release_hack( (yyvaluep->expr) ); };1860 { release_hack( (yyvaluep->expr) ); };
18481861
1849/* Line 480 of lalr1.cc */1862/* Line 480 of lalr1.cc */
1850#line 1851 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1863#line 1864 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1851 break;1864 break;
1852 case 523: /* "DirElemContentList" */1865 case 523: /* "DirElemContentList" */
18531866
1854/* Line 480 of lalr1.cc */1867/* Line 480 of lalr1.cc */
1855#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1868#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1856 { release_hack( (yyvaluep->node) ); };1869 { release_hack( (yyvaluep->node) ); };
18571870
1858/* Line 480 of lalr1.cc */1871/* Line 480 of lalr1.cc */
1859#line 1860 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1872#line 1873 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1860 break;1873 break;
1861 case 524: /* "DirAttributeList" */1874 case 524: /* "DirAttributeList" */
18621875
1863/* Line 480 of lalr1.cc */1876/* Line 480 of lalr1.cc */
1864#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1877#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1865 { release_hack( (yyvaluep->node) ); };1878 { release_hack( (yyvaluep->node) ); };
18661879
1867/* Line 480 of lalr1.cc */1880/* Line 480 of lalr1.cc */
1868#line 1869 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1881#line 1882 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1869 break;1882 break;
1870 case 525: /* "DirAttr" */1883 case 525: /* "DirAttr" */
18711884
1872/* Line 480 of lalr1.cc */1885/* Line 480 of lalr1.cc */
1873#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1886#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1874 { release_hack( (yyvaluep->node) ); };1887 { release_hack( (yyvaluep->node) ); };
18751888
1876/* Line 480 of lalr1.cc */1889/* Line 480 of lalr1.cc */
1877#line 1878 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1890#line 1891 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1878 break;1891 break;
1879 case 527: /* "DirAttributeValue" */1892 case 527: /* "DirAttributeValue" */
18801893
1881/* Line 480 of lalr1.cc */1894/* Line 480 of lalr1.cc */
1882#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1895#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1883 { release_hack( (yyvaluep->node) ); };1896 { release_hack( (yyvaluep->node) ); };
18841897
1885/* Line 480 of lalr1.cc */1898/* Line 480 of lalr1.cc */
1886#line 1887 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1899#line 1900 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1887 break;1900 break;
1888 case 528: /* "opt_QuoteAttrContentList" */1901 case 528: /* "opt_QuoteAttrContentList" */
18891902
1890/* Line 480 of lalr1.cc */1903/* Line 480 of lalr1.cc */
1891#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1904#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1892 { release_hack( (yyvaluep->node) ); };1905 { release_hack( (yyvaluep->node) ); };
18931906
1894/* Line 480 of lalr1.cc */1907/* Line 480 of lalr1.cc */
1895#line 1896 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1908#line 1909 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1896 break;1909 break;
1897 case 529: /* "QuoteAttrContentList" */1910 case 529: /* "QuoteAttrContentList" */
18981911
1899/* Line 480 of lalr1.cc */1912/* Line 480 of lalr1.cc */
1900#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1913#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1901 { release_hack( (yyvaluep->node) ); };1914 { release_hack( (yyvaluep->node) ); };
19021915
1903/* Line 480 of lalr1.cc */1916/* Line 480 of lalr1.cc */
1904#line 1905 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1917#line 1918 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1905 break;1918 break;
1906 case 530: /* "opt_AposAttrContentList" */1919 case 530: /* "opt_AposAttrContentList" */
19071920
1908/* Line 480 of lalr1.cc */1921/* Line 480 of lalr1.cc */
1909#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1922#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1910 { release_hack( (yyvaluep->node) ); };1923 { release_hack( (yyvaluep->node) ); };
19111924
1912/* Line 480 of lalr1.cc */1925/* Line 480 of lalr1.cc */
1913#line 1914 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1926#line 1927 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1914 break;1927 break;
1915 case 531: /* "AposAttrContentList" */1928 case 531: /* "AposAttrContentList" */
19161929
1917/* Line 480 of lalr1.cc */1930/* Line 480 of lalr1.cc */
1918#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1931#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1919 { release_hack( (yyvaluep->node) ); };1932 { release_hack( (yyvaluep->node) ); };
19201933
1921/* Line 480 of lalr1.cc */1934/* Line 480 of lalr1.cc */
1922#line 1923 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1935#line 1936 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1923 break;1936 break;
1924 case 532: /* "QuoteAttrValueContent" */1937 case 532: /* "QuoteAttrValueContent" */
19251938
1926/* Line 480 of lalr1.cc */1939/* Line 480 of lalr1.cc */
1927#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1940#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1928 { release_hack( (yyvaluep->node) ); };1941 { release_hack( (yyvaluep->node) ); };
19291942
1930/* Line 480 of lalr1.cc */1943/* Line 480 of lalr1.cc */
1931#line 1932 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1944#line 1945 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1932 break;1945 break;
1933 case 533: /* "AposAttrValueContent" */1946 case 533: /* "AposAttrValueContent" */
19341947
1935/* Line 480 of lalr1.cc */1948/* Line 480 of lalr1.cc */
1936#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1949#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1937 { release_hack( (yyvaluep->node) ); };1950 { release_hack( (yyvaluep->node) ); };
19381951
1939/* Line 480 of lalr1.cc */1952/* Line 480 of lalr1.cc */
1940#line 1941 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1953#line 1954 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1941 break;1954 break;
1942 case 534: /* "DirElemContent" */1955 case 534: /* "DirElemContent" */
19431956
1944/* Line 480 of lalr1.cc */1957/* Line 480 of lalr1.cc */
1945#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1958#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1946 { release_hack( (yyvaluep->expr) ); };1959 { release_hack( (yyvaluep->expr) ); };
19471960
1948/* Line 480 of lalr1.cc */1961/* Line 480 of lalr1.cc */
1949#line 1950 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1962#line 1963 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1950 break;1963 break;
1951 case 535: /* "CommonContent" */1964 case 535: /* "CommonContent" */
19521965
1953/* Line 480 of lalr1.cc */1966/* Line 480 of lalr1.cc */
1954#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1967#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1955 { release_hack( (yyvaluep->expr) ); };1968 { release_hack( (yyvaluep->expr) ); };
19561969
1957/* Line 480 of lalr1.cc */1970/* Line 480 of lalr1.cc */
1958#line 1959 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1971#line 1972 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1959 break;1972 break;
1960 case 536: /* "DirCommentConstructor" */1973 case 536: /* "DirCommentConstructor" */
19611974
1962/* Line 480 of lalr1.cc */1975/* Line 480 of lalr1.cc */
1963#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1976#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1964 { release_hack( (yyvaluep->expr) ); };1977 { release_hack( (yyvaluep->expr) ); };
19651978
1966/* Line 480 of lalr1.cc */1979/* Line 480 of lalr1.cc */
1967#line 1968 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1980#line 1981 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1968 break;1981 break;
1969 case 537: /* "DirPIConstructor" */1982 case 537: /* "DirPIConstructor" */
19701983
1971/* Line 480 of lalr1.cc */1984/* Line 480 of lalr1.cc */
1972#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1985#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1973 { release_hack( (yyvaluep->expr) ); };1986 { release_hack( (yyvaluep->expr) ); };
19741987
1975/* Line 480 of lalr1.cc */1988/* Line 480 of lalr1.cc */
1976#line 1977 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1989#line 1990 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1977 break;1990 break;
1978 case 538: /* "CDataSection" */1991 case 538: /* "CDataSection" */
19791992
1980/* Line 480 of lalr1.cc */1993/* Line 480 of lalr1.cc */
1981#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"1994#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1982 { release_hack( (yyvaluep->expr) ); };1995 { release_hack( (yyvaluep->expr) ); };
19831996
1984/* Line 480 of lalr1.cc */1997/* Line 480 of lalr1.cc */
1985#line 1986 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"1998#line 1999 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1986 break;1999 break;
1987 case 539: /* "ComputedConstructor" */2000 case 539: /* "ComputedConstructor" */
19882001
1989/* Line 480 of lalr1.cc */2002/* Line 480 of lalr1.cc */
1990#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2003#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
1991 { release_hack( (yyvaluep->expr) ); };2004 { release_hack( (yyvaluep->expr) ); };
19922005
1993/* Line 480 of lalr1.cc */2006/* Line 480 of lalr1.cc */
1994#line 1995 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2007#line 2008 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
1995 break;2008 break;
1996 case 540: /* "CompDocConstructor" */2009 case 540: /* "CompDocConstructor" */
19972010
1998/* Line 480 of lalr1.cc */2011/* Line 480 of lalr1.cc */
1999#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2012#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2000 { release_hack( (yyvaluep->expr) ); };2013 { release_hack( (yyvaluep->expr) ); };
20012014
2002/* Line 480 of lalr1.cc */2015/* Line 480 of lalr1.cc */
2003#line 2004 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2016#line 2017 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2004 break;2017 break;
2005 case 541: /* "CompElemConstructor" */2018 case 541: /* "CompElemConstructor" */
20062019
2007/* Line 480 of lalr1.cc */2020/* Line 480 of lalr1.cc */
2008#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2021#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2009 { release_hack( (yyvaluep->expr) ); };2022 { release_hack( (yyvaluep->expr) ); };
20102023
2011/* Line 480 of lalr1.cc */2024/* Line 480 of lalr1.cc */
2012#line 2013 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2025#line 2026 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2013 break;2026 break;
2014 case 542: /* "CompAttrConstructor" */2027 case 542: /* "CompAttrConstructor" */
20152028
2016/* Line 480 of lalr1.cc */2029/* Line 480 of lalr1.cc */
2017#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2030#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2018 { release_hack( (yyvaluep->expr) ); };2031 { release_hack( (yyvaluep->expr) ); };
20192032
2020/* Line 480 of lalr1.cc */2033/* Line 480 of lalr1.cc */
2021#line 2022 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2034#line 2035 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2022 break;2035 break;
2023 case 543: /* "CompTextConstructor" */2036 case 543: /* "CompTextConstructor" */
20242037
2025/* Line 480 of lalr1.cc */2038/* Line 480 of lalr1.cc */
2026#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2039#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2027 { release_hack( (yyvaluep->expr) ); };2040 { release_hack( (yyvaluep->expr) ); };
20282041
2029/* Line 480 of lalr1.cc */2042/* Line 480 of lalr1.cc */
2030#line 2031 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2043#line 2044 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2031 break;2044 break;
2032 case 544: /* "CompCommentConstructor" */2045 case 544: /* "CompCommentConstructor" */
20332046
2034/* Line 480 of lalr1.cc */2047/* Line 480 of lalr1.cc */
2035#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2048#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2036 { release_hack( (yyvaluep->expr) ); };2049 { release_hack( (yyvaluep->expr) ); };
20372050
2038/* Line 480 of lalr1.cc */2051/* Line 480 of lalr1.cc */
2039#line 2040 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2052#line 2053 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2040 break;2053 break;
2041 case 545: /* "CompPIConstructor" */2054 case 545: /* "CompPIConstructor" */
20422055
2043/* Line 480 of lalr1.cc */2056/* Line 480 of lalr1.cc */
2044#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2057#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2045 { release_hack( (yyvaluep->expr) ); };2058 { release_hack( (yyvaluep->expr) ); };
20462059
2047/* Line 480 of lalr1.cc */2060/* Line 480 of lalr1.cc */
2048#line 2049 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2061#line 2062 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2049 break;2062 break;
2050 case 546: /* "TypeDeclaration" */2063 case 546: /* "TypeDeclaration" */
20512064
2052/* Line 480 of lalr1.cc */2065/* Line 480 of lalr1.cc */
2053#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2066#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2054 { release_hack( (yyvaluep->node) ); };2067 { release_hack( (yyvaluep->node) ); };
20552068
2056/* Line 480 of lalr1.cc */2069/* Line 480 of lalr1.cc */
2057#line 2058 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2070#line 2071 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2058 break;2071 break;
2059 case 547: /* "SequenceType" */2072 case 547: /* "SequenceType" */
20602073
2061/* Line 480 of lalr1.cc */2074/* Line 480 of lalr1.cc */
2062#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2075#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2063 { release_hack( (yyvaluep->node) ); };2076 { release_hack( (yyvaluep->node) ); };
20642077
2065/* Line 480 of lalr1.cc */2078/* Line 480 of lalr1.cc */
2066#line 2067 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2079#line 2080 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2067 break;2080 break;
2068 case 548: /* "OccurrenceIndicator" */2081 case 548: /* "OccurrenceIndicator" */
20692082
2070/* Line 480 of lalr1.cc */2083/* Line 480 of lalr1.cc */
2071#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2084#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2072 { release_hack( (yyvaluep->node) ); };2085 { release_hack( (yyvaluep->node) ); };
20732086
2074/* Line 480 of lalr1.cc */2087/* Line 480 of lalr1.cc */
2075#line 2076 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2088#line 2089 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2076 break;2089 break;
2077 case 549: /* "ItemType" */2090 case 549: /* "ItemType" */
20782091
2079/* Line 480 of lalr1.cc */2092/* Line 480 of lalr1.cc */
2080#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2093#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2081 { release_hack( (yyvaluep->node) ); };2094 { release_hack( (yyvaluep->node) ); };
20822095
2083/* Line 480 of lalr1.cc */2096/* Line 480 of lalr1.cc */
2084#line 2085 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2097#line 2098 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2085 break;2098 break;
2086 case 550: /* "TypeList" */2099 case 550: /* "TypeList" */
20872100
2088/* Line 480 of lalr1.cc */2101/* Line 480 of lalr1.cc */
2089#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2102#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2090 { release_hack( (yyvaluep->node) ); };2103 { release_hack( (yyvaluep->node) ); };
20912104
2092/* Line 480 of lalr1.cc */2105/* Line 480 of lalr1.cc */
2093#line 2094 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2106#line 2107 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2094 break;2107 break;
2095 case 551: /* "GeneralizedAtomicType" */2108 case 551: /* "GeneralizedAtomicType" */
20962109
2097/* Line 480 of lalr1.cc */2110/* Line 480 of lalr1.cc */
2098#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2111#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2099 { release_hack( (yyvaluep->node) ); };2112 { release_hack( (yyvaluep->node) ); };
21002113
2101/* Line 480 of lalr1.cc */2114/* Line 480 of lalr1.cc */
2102#line 2103 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2115#line 2116 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2103 break;2116 break;
2104 case 552: /* "SimpleType" */2117 case 552: /* "SimpleType" */
21052118
2106/* Line 480 of lalr1.cc */2119/* Line 480 of lalr1.cc */
2107#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2120#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2108 { release_hack( (yyvaluep->node) ); };2121 { release_hack( (yyvaluep->node) ); };
21092122
2110/* Line 480 of lalr1.cc */2123/* Line 480 of lalr1.cc */
2111#line 2112 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2124#line 2125 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2112 break;2125 break;
2113 case 553: /* "KindTest" */2126 case 553: /* "KindTest" */
21142127
2115/* Line 480 of lalr1.cc */2128/* Line 480 of lalr1.cc */
2116#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2129#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2117 { release_hack( (yyvaluep->node) ); };2130 { release_hack( (yyvaluep->node) ); };
21182131
2119/* Line 480 of lalr1.cc */2132/* Line 480 of lalr1.cc */
2120#line 2121 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2133#line 2134 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2121 break;2134 break;
2122 case 554: /* "AnyKindTest" */2135 case 554: /* "AnyKindTest" */
21232136
2124/* Line 480 of lalr1.cc */2137/* Line 480 of lalr1.cc */
2125#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2138#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2126 { release_hack( (yyvaluep->node) ); };2139 { release_hack( (yyvaluep->node) ); };
21272140
2128/* Line 480 of lalr1.cc */2141/* Line 480 of lalr1.cc */
2129#line 2130 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2142#line 2143 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2130 break;2143 break;
2131 case 555: /* "DocumentTest" */2144 case 555: /* "DocumentTest" */
21322145
2133/* Line 480 of lalr1.cc */2146/* Line 480 of lalr1.cc */
2134#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2147#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2135 { release_hack( (yyvaluep->node) ); };2148 { release_hack( (yyvaluep->node) ); };
21362149
2137/* Line 480 of lalr1.cc */2150/* Line 480 of lalr1.cc */
2138#line 2139 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2151#line 2152 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2139 break;2152 break;
2140 case 556: /* "TextTest" */2153 case 556: /* "TextTest" */
21412154
2142/* Line 480 of lalr1.cc */2155/* Line 480 of lalr1.cc */
2143#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2156#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2144 { release_hack( (yyvaluep->node) ); };2157 { release_hack( (yyvaluep->node) ); };
21452158
2146/* Line 480 of lalr1.cc */2159/* Line 480 of lalr1.cc */
2147#line 2148 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2160#line 2161 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2148 break;2161 break;
2149 case 557: /* "CommentTest" */2162 case 557: /* "CommentTest" */
21502163
2151/* Line 480 of lalr1.cc */2164/* Line 480 of lalr1.cc */
2152#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2165#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2153 { release_hack( (yyvaluep->node) ); };2166 { release_hack( (yyvaluep->node) ); };
21542167
2155/* Line 480 of lalr1.cc */2168/* Line 480 of lalr1.cc */
2156#line 2157 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2169#line 2170 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2157 break;2170 break;
2158 case 558: /* "PITest" */2171 case 558: /* "PITest" */
21592172
2160/* Line 480 of lalr1.cc */2173/* Line 480 of lalr1.cc */
2161#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2174#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2162 { release_hack( (yyvaluep->node) ); };2175 { release_hack( (yyvaluep->node) ); };
21632176
2164/* Line 480 of lalr1.cc */2177/* Line 480 of lalr1.cc */
2165#line 2166 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2178#line 2179 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2166 break;2179 break;
2167 case 559: /* "AttributeTest" */2180 case 559: /* "AttributeTest" */
21682181
2169/* Line 480 of lalr1.cc */2182/* Line 480 of lalr1.cc */
2170#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2183#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2171 { release_hack( (yyvaluep->node) ); };2184 { release_hack( (yyvaluep->node) ); };
21722185
2173/* Line 480 of lalr1.cc */2186/* Line 480 of lalr1.cc */
2174#line 2175 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2187#line 2188 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2175 break;2188 break;
2176 case 560: /* "SchemaAttributeTest" */2189 case 560: /* "SchemaAttributeTest" */
21772190
2178/* Line 480 of lalr1.cc */2191/* Line 480 of lalr1.cc */
2179#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2192#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2180 { release_hack( (yyvaluep->node) ); };2193 { release_hack( (yyvaluep->node) ); };
21812194
2182/* Line 480 of lalr1.cc */2195/* Line 480 of lalr1.cc */
2183#line 2184 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2196#line 2197 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2184 break;2197 break;
2185 case 561: /* "ElementTest" */2198 case 561: /* "ElementTest" */
21862199
2187/* Line 480 of lalr1.cc */2200/* Line 480 of lalr1.cc */
2188#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2201#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2189 { release_hack( (yyvaluep->node) ); };2202 { release_hack( (yyvaluep->node) ); };
21902203
2191/* Line 480 of lalr1.cc */2204/* Line 480 of lalr1.cc */
2192#line 2193 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2205#line 2206 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2193 break;2206 break;
2194 case 562: /* "SchemaElementTest" */2207 case 562: /* "SchemaElementTest" */
21952208
2196/* Line 480 of lalr1.cc */2209/* Line 480 of lalr1.cc */
2197#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2210#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2198 { release_hack( (yyvaluep->node) ); };2211 { release_hack( (yyvaluep->node) ); };
21992212
2200/* Line 480 of lalr1.cc */2213/* Line 480 of lalr1.cc */
2201#line 2202 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2214#line 2215 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2202 break;2215 break;
2203 case 563: /* "TypeName" */2216 case 563: /* "TypeName" */
22042217
2205/* Line 480 of lalr1.cc */2218/* Line 480 of lalr1.cc */
2206#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2219#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2207 { release_hack( (yyvaluep->node) ); };2220 { release_hack( (yyvaluep->node) ); };
22082221
2209/* Line 480 of lalr1.cc */2222/* Line 480 of lalr1.cc */
2210#line 2211 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2223#line 2224 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2211 break;2224 break;
2212 case 564: /* "TypeName_WITH_HOOK" */2225 case 564: /* "TypeName_WITH_HOOK" */
22132226
2214/* Line 480 of lalr1.cc */2227/* Line 480 of lalr1.cc */
2215#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2228#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2216 { release_hack( (yyvaluep->node) ); };2229 { release_hack( (yyvaluep->node) ); };
22172230
2218/* Line 480 of lalr1.cc */2231/* Line 480 of lalr1.cc */
2219#line 2220 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2232#line 2233 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2220 break;2233 break;
2221 case 565: /* "StringLiteral" */2234 case 565: /* "StringLiteral" */
22222235
2223/* Line 480 of lalr1.cc */2236/* Line 480 of lalr1.cc */
2224#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2237#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2225 { release_hack( (yyvaluep->expr) ); };2238 { release_hack( (yyvaluep->expr) ); };
22262239
2227/* Line 480 of lalr1.cc */2240/* Line 480 of lalr1.cc */
2228#line 2229 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2241#line 2242 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2229 break;2242 break;
2230 case 570: /* "AnyFunctionTest" */2243 case 570: /* "AnyFunctionTest" */
22312244
2232/* Line 480 of lalr1.cc */2245/* Line 480 of lalr1.cc */
2233#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2246#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2234 { release_hack( (yyvaluep->node) ); };2247 { release_hack( (yyvaluep->node) ); };
22352248
2236/* Line 480 of lalr1.cc */2249/* Line 480 of lalr1.cc */
2237#line 2238 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2250#line 2251 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2238 break;2251 break;
2239 case 571: /* "TypedFunctionTest" */2252 case 571: /* "TypedFunctionTest" */
22402253
2241/* Line 480 of lalr1.cc */2254/* Line 480 of lalr1.cc */
2242#line 923 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2255#line 923 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2243 { release_hack( (yyvaluep->node) ); };2256 { release_hack( (yyvaluep->node) ); };
22442257
2245/* Line 480 of lalr1.cc */2258/* Line 480 of lalr1.cc */
2246#line 2247 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2259#line 2260 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2247 break;2260 break;
2248 case 574: /* "InsertExpr" */2261 case 574: /* "InsertExpr" */
22492262
2250/* Line 480 of lalr1.cc */2263/* Line 480 of lalr1.cc */
2251#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2264#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2252 { release_hack( (yyvaluep->expr) ); };2265 { release_hack( (yyvaluep->expr) ); };
22532266
2254/* Line 480 of lalr1.cc */2267/* Line 480 of lalr1.cc */
2255#line 2256 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2268#line 2269 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2256 break;2269 break;
2257 case 575: /* "DeleteExpr" */2270 case 575: /* "DeleteExpr" */
22582271
2259/* Line 480 of lalr1.cc */2272/* Line 480 of lalr1.cc */
2260#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2273#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2261 { release_hack( (yyvaluep->expr) ); };2274 { release_hack( (yyvaluep->expr) ); };
22622275
2263/* Line 480 of lalr1.cc */2276/* Line 480 of lalr1.cc */
2264#line 2265 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2277#line 2278 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2265 break;2278 break;
2266 case 576: /* "ReplaceExpr" */2279 case 576: /* "ReplaceExpr" */
22672280
2268/* Line 480 of lalr1.cc */2281/* Line 480 of lalr1.cc */
2269#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2282#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2270 { release_hack( (yyvaluep->expr) ); };2283 { release_hack( (yyvaluep->expr) ); };
22712284
2272/* Line 480 of lalr1.cc */2285/* Line 480 of lalr1.cc */
2273#line 2274 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2286#line 2287 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2274 break;2287 break;
2275 case 577: /* "RenameExpr" */2288 case 577: /* "RenameExpr" */
22762289
2277/* Line 480 of lalr1.cc */2290/* Line 480 of lalr1.cc */
2278#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2291#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2279 { release_hack( (yyvaluep->expr) ); };2292 { release_hack( (yyvaluep->expr) ); };
22802293
2281/* Line 480 of lalr1.cc */2294/* Line 480 of lalr1.cc */
2282#line 2283 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2295#line 2296 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2283 break;2296 break;
2284 case 578: /* "TransformExpr" */2297 case 578: /* "TransformExpr" */
22852298
2286/* Line 480 of lalr1.cc */2299/* Line 480 of lalr1.cc */
2287#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2300#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2288 { release_hack( (yyvaluep->expr) ); };2301 { release_hack( (yyvaluep->expr) ); };
22892302
2290/* Line 480 of lalr1.cc */2303/* Line 480 of lalr1.cc */
2291#line 2292 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2304#line 2305 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2292 break;2305 break;
2293 case 579: /* "VarNameList" */2306 case 579: /* "VarNameList" */
22942307
2295/* Line 480 of lalr1.cc */2308/* Line 480 of lalr1.cc */
2296#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2309#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2297 { release_hack( (yyvaluep->expr) ); };2310 { release_hack( (yyvaluep->expr) ); };
22982311
2299/* Line 480 of lalr1.cc */2312/* Line 480 of lalr1.cc */
2300#line 2301 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2313#line 2314 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2301 break;2314 break;
2302 case 580: /* "VarNameDecl" */2315 case 580: /* "VarNameDecl" */
23032316
2304/* Line 480 of lalr1.cc */2317/* Line 480 of lalr1.cc */
2305#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2318#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2306 { release_hack( (yyvaluep->expr) ); };2319 { release_hack( (yyvaluep->expr) ); };
23072320
2308/* Line 480 of lalr1.cc */2321/* Line 480 of lalr1.cc */
2309#line 2310 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2322#line 2323 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2310 break;2323 break;
2311 case 581: /* "TryExpr" */2324 case 581: /* "TryExpr" */
23122325
2313/* Line 480 of lalr1.cc */2326/* Line 480 of lalr1.cc */
2314#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2327#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2315 { release_hack( (yyvaluep->expr) ); };2328 { release_hack( (yyvaluep->expr) ); };
23162329
2317/* Line 480 of lalr1.cc */2330/* Line 480 of lalr1.cc */
2318#line 2319 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2331#line 2332 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2319 break;2332 break;
2320 case 582: /* "CatchListExpr" */2333 case 582: /* "CatchListExpr" */
23212334
2322/* Line 480 of lalr1.cc */2335/* Line 480 of lalr1.cc */
2323#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2336#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2324 { release_hack( (yyvaluep->expr) ); };2337 { release_hack( (yyvaluep->expr) ); };
23252338
2326/* Line 480 of lalr1.cc */2339/* Line 480 of lalr1.cc */
2327#line 2328 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2340#line 2341 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2328 break;2341 break;
2329 case 583: /* "CatchExpr" */2342 case 583: /* "CatchExpr" */
23302343
2331/* Line 480 of lalr1.cc */2344/* Line 480 of lalr1.cc */
2332#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2345#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2333 { release_hack( (yyvaluep->expr) ); };2346 { release_hack( (yyvaluep->expr) ); };
23342347
2335/* Line 480 of lalr1.cc */2348/* Line 480 of lalr1.cc */
2336#line 2337 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2349#line 2350 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2337 break;2350 break;
2338 case 584: /* "BracedExpr" */2351 case 584: /* "BracedExpr" */
23392352
2340/* Line 480 of lalr1.cc */2353/* Line 480 of lalr1.cc */
2341#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2354#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2342 { release_hack( (yyvaluep->expr) ); };2355 { release_hack( (yyvaluep->expr) ); };
23432356
2344/* Line 480 of lalr1.cc */2357/* Line 480 of lalr1.cc */
2345#line 2346 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2358#line 2359 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2346 break;2359 break;
2347 case 585: /* "NameTestList" */2360 case 585: /* "NameTestList" */
23482361
2349/* Line 480 of lalr1.cc */2362/* Line 480 of lalr1.cc */
2350#line 935 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2363#line 935 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2351 { delete (yyvaluep->name_test_list); };2364 { delete (yyvaluep->name_test_list); };
23522365
2353/* Line 480 of lalr1.cc */2366/* Line 480 of lalr1.cc */
2354#line 2355 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2367#line 2368 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2355 break;2368 break;
2356 case 586: /* "FTSelection" */2369 case 586: /* "FTSelection" */
23572370
2358/* Line 480 of lalr1.cc */2371/* Line 480 of lalr1.cc */
2359#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2372#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2360 { release_hack( (yyvaluep->node) ); };2373 { release_hack( (yyvaluep->node) ); };
23612374
2362/* Line 480 of lalr1.cc */2375/* Line 480 of lalr1.cc */
2363#line 2364 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2376#line 2377 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2364 break;2377 break;
2365 case 589: /* "FTOr" */2378 case 589: /* "FTOr" */
23662379
2367/* Line 480 of lalr1.cc */2380/* Line 480 of lalr1.cc */
2368#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2381#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2369 { release_hack( (yyvaluep->node) ); };2382 { release_hack( (yyvaluep->node) ); };
23702383
2371/* Line 480 of lalr1.cc */2384/* Line 480 of lalr1.cc */
2372#line 2373 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2385#line 2386 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2373 break;2386 break;
2374 case 590: /* "FTAnd" */2387 case 590: /* "FTAnd" */
23752388
2376/* Line 480 of lalr1.cc */2389/* Line 480 of lalr1.cc */
2377#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2390#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2378 { release_hack( (yyvaluep->node) ); };2391 { release_hack( (yyvaluep->node) ); };
23792392
2380/* Line 480 of lalr1.cc */2393/* Line 480 of lalr1.cc */
2381#line 2382 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2394#line 2395 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2382 break;2395 break;
2383 case 591: /* "FTMildNot" */2396 case 591: /* "FTMildNot" */
23842397
2385/* Line 480 of lalr1.cc */2398/* Line 480 of lalr1.cc */
2386#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2399#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2387 { release_hack( (yyvaluep->node) ); };2400 { release_hack( (yyvaluep->node) ); };
23882401
2389/* Line 480 of lalr1.cc */2402/* Line 480 of lalr1.cc */
2390#line 2391 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2403#line 2404 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2391 break;2404 break;
2392 case 592: /* "FTUnaryNot" */2405 case 592: /* "FTUnaryNot" */
23932406
2394/* Line 480 of lalr1.cc */2407/* Line 480 of lalr1.cc */
2395#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2408#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2396 { release_hack( (yyvaluep->node) ); };2409 { release_hack( (yyvaluep->node) ); };
23972410
2398/* Line 480 of lalr1.cc */2411/* Line 480 of lalr1.cc */
2399#line 2400 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2412#line 2413 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2400 break;2413 break;
2401 case 593: /* "FTPrimaryWithOptions" */2414 case 593: /* "FTPrimaryWithOptions" */
24022415
2403/* Line 480 of lalr1.cc */2416/* Line 480 of lalr1.cc */
2404#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2417#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2405 { release_hack( (yyvaluep->node) ); };2418 { release_hack( (yyvaluep->node) ); };
24062419
2407/* Line 480 of lalr1.cc */2420/* Line 480 of lalr1.cc */
2408#line 2409 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2421#line 2422 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2409 break;2422 break;
2410 case 594: /* "opt_FTMatchOptions" */2423 case 594: /* "opt_FTMatchOptions" */
24112424
2412/* Line 480 of lalr1.cc */2425/* Line 480 of lalr1.cc */
2413#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2426#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2414 { release_hack( (yyvaluep->node) ); };2427 { release_hack( (yyvaluep->node) ); };
24152428
2416/* Line 480 of lalr1.cc */2429/* Line 480 of lalr1.cc */
2417#line 2418 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2430#line 2431 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2418 break;2431 break;
2419 case 596: /* "FTWeight" */2432 case 596: /* "FTWeight" */
24202433
2421/* Line 480 of lalr1.cc */2434/* Line 480 of lalr1.cc */
2422#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2435#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2423 { release_hack( (yyvaluep->node) ); };2436 { release_hack( (yyvaluep->node) ); };
24242437
2425/* Line 480 of lalr1.cc */2438/* Line 480 of lalr1.cc */
2426#line 2427 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2439#line 2440 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2427 break;2440 break;
2428 case 597: /* "FTPrimary" */2441 case 597: /* "FTPrimary" */
24292442
2430/* Line 480 of lalr1.cc */2443/* Line 480 of lalr1.cc */
2431#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2444#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2432 { release_hack( (yyvaluep->node) ); };2445 { release_hack( (yyvaluep->node) ); };
24332446
2434/* Line 480 of lalr1.cc */2447/* Line 480 of lalr1.cc */
2435#line 2436 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2448#line 2449 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2436 break;2449 break;
2437 case 598: /* "opt_FTTimes" */2450 case 598: /* "opt_FTTimes" */
24382451
2439/* Line 480 of lalr1.cc */2452/* Line 480 of lalr1.cc */
2440#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2453#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2441 { release_hack( (yyvaluep->node) ); };2454 { release_hack( (yyvaluep->node) ); };
24422455
2443/* Line 480 of lalr1.cc */2456/* Line 480 of lalr1.cc */
2444#line 2445 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2457#line 2458 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2445 break;2458 break;
2446 case 599: /* "FTExtensionSelection" */2459 case 599: /* "FTExtensionSelection" */
24472460
2448/* Line 480 of lalr1.cc */2461/* Line 480 of lalr1.cc */
2449#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2462#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2450 { release_hack( (yyvaluep->node) ); };2463 { release_hack( (yyvaluep->node) ); };
24512464
2452/* Line 480 of lalr1.cc */2465/* Line 480 of lalr1.cc */
2453#line 2454 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2466#line 2467 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2454 break;2467 break;
2455 case 601: /* "FTWords" */2468 case 601: /* "FTWords" */
24562469
2457/* Line 480 of lalr1.cc */2470/* Line 480 of lalr1.cc */
2458#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2471#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2459 { release_hack( (yyvaluep->node) ); };2472 { release_hack( (yyvaluep->node) ); };
24602473
2461/* Line 480 of lalr1.cc */2474/* Line 480 of lalr1.cc */
2462#line 2463 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2475#line 2476 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2463 break;2476 break;
2464 case 602: /* "FTWordsValue" */2477 case 602: /* "FTWordsValue" */
24652478
2466/* Line 480 of lalr1.cc */2479/* Line 480 of lalr1.cc */
2467#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2480#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2468 { release_hack( (yyvaluep->node) ); };2481 { release_hack( (yyvaluep->node) ); };
24692482
2470/* Line 480 of lalr1.cc */2483/* Line 480 of lalr1.cc */
2471#line 2472 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2484#line 2485 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2472 break;2485 break;
2473 case 604: /* "FTAnyallOption" */2486 case 604: /* "FTAnyallOption" */
24742487
2475/* Line 480 of lalr1.cc */2488/* Line 480 of lalr1.cc */
2476#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2489#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2477 { release_hack( (yyvaluep->node) ); };2490 { release_hack( (yyvaluep->node) ); };
24782491
2479/* Line 480 of lalr1.cc */2492/* Line 480 of lalr1.cc */
2480#line 2481 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2493#line 2494 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2481 break;2494 break;
2482 case 607: /* "FTPosFilter" */2495 case 607: /* "FTPosFilter" */
24832496
2484/* Line 480 of lalr1.cc */2497/* Line 480 of lalr1.cc */
2485#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2498#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2486 { release_hack( (yyvaluep->node) ); };2499 { release_hack( (yyvaluep->node) ); };
24872500
2488/* Line 480 of lalr1.cc */2501/* Line 480 of lalr1.cc */
2489#line 2490 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2502#line 2503 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2490 break;2503 break;
2491 case 608: /* "FTOrder" */2504 case 608: /* "FTOrder" */
24922505
2493/* Line 480 of lalr1.cc */2506/* Line 480 of lalr1.cc */
2494#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2507#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2495 { release_hack( (yyvaluep->node) ); };2508 { release_hack( (yyvaluep->node) ); };
24962509
2497/* Line 480 of lalr1.cc */2510/* Line 480 of lalr1.cc */
2498#line 2499 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2511#line 2512 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2499 break;2512 break;
2500 case 609: /* "FTWindow" */2513 case 609: /* "FTWindow" */
25012514
2502/* Line 480 of lalr1.cc */2515/* Line 480 of lalr1.cc */
2503#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2516#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2504 { release_hack( (yyvaluep->node) ); };2517 { release_hack( (yyvaluep->node) ); };
25052518
2506/* Line 480 of lalr1.cc */2519/* Line 480 of lalr1.cc */
2507#line 2508 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2520#line 2521 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2508 break;2521 break;
2509 case 610: /* "FTDistance" */2522 case 610: /* "FTDistance" */
25102523
2511/* Line 480 of lalr1.cc */2524/* Line 480 of lalr1.cc */
2512#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2525#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2513 { release_hack( (yyvaluep->node) ); };2526 { release_hack( (yyvaluep->node) ); };
25142527
2515/* Line 480 of lalr1.cc */2528/* Line 480 of lalr1.cc */
2516#line 2517 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2529#line 2530 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2517 break;2530 break;
2518 case 611: /* "FTUnit" */2531 case 611: /* "FTUnit" */
25192532
2520/* Line 480 of lalr1.cc */2533/* Line 480 of lalr1.cc */
2521#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2534#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2522 { release_hack( (yyvaluep->node) ); };2535 { release_hack( (yyvaluep->node) ); };
25232536
2524/* Line 480 of lalr1.cc */2537/* Line 480 of lalr1.cc */
2525#line 2526 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2538#line 2539 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2526 break;2539 break;
2527 case 612: /* "FTMatchOptions" */2540 case 612: /* "FTMatchOptions" */
25282541
2529/* Line 480 of lalr1.cc */2542/* Line 480 of lalr1.cc */
2530#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2543#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2531 { release_hack( (yyvaluep->node) ); };2544 { release_hack( (yyvaluep->node) ); };
25322545
2533/* Line 480 of lalr1.cc */2546/* Line 480 of lalr1.cc */
2534#line 2535 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2547#line 2548 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2535 break;2548 break;
2536 case 613: /* "FTMatchOption" */2549 case 613: /* "FTMatchOption" */
25372550
2538/* Line 480 of lalr1.cc */2551/* Line 480 of lalr1.cc */
2539#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2552#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2540 { release_hack( (yyvaluep->node) ); };2553 { release_hack( (yyvaluep->node) ); };
25412554
2542/* Line 480 of lalr1.cc */2555/* Line 480 of lalr1.cc */
2543#line 2544 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2556#line 2557 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2544 break;2557 break;
2545 case 614: /* "FTCaseOption" */2558 case 614: /* "FTCaseOption" */
25462559
2547/* Line 480 of lalr1.cc */2560/* Line 480 of lalr1.cc */
2548#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2561#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2549 { release_hack( (yyvaluep->node) ); };2562 { release_hack( (yyvaluep->node) ); };
25502563
2551/* Line 480 of lalr1.cc */2564/* Line 480 of lalr1.cc */
2552#line 2553 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2565#line 2566 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2553 break;2566 break;
2554 case 615: /* "FTDiacriticsOption" */2567 case 615: /* "FTDiacriticsOption" */
25552568
2556/* Line 480 of lalr1.cc */2569/* Line 480 of lalr1.cc */
2557#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2570#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2558 { release_hack( (yyvaluep->node) ); };2571 { release_hack( (yyvaluep->node) ); };
25592572
2560/* Line 480 of lalr1.cc */2573/* Line 480 of lalr1.cc */
2561#line 2562 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2574#line 2575 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2562 break;2575 break;
2563 case 616: /* "FTExtensionOption" */2576 case 616: /* "FTExtensionOption" */
25642577
2565/* Line 480 of lalr1.cc */2578/* Line 480 of lalr1.cc */
2566#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2579#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2567 { release_hack( (yyvaluep->node) ); };2580 { release_hack( (yyvaluep->node) ); };
25682581
2569/* Line 480 of lalr1.cc */2582/* Line 480 of lalr1.cc */
2570#line 2571 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2583#line 2584 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2571 break;2584 break;
2572 case 617: /* "FTStemOption" */2585 case 617: /* "FTStemOption" */
25732586
2574/* Line 480 of lalr1.cc */2587/* Line 480 of lalr1.cc */
2575#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2588#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2576 { release_hack( (yyvaluep->node) ); };2589 { release_hack( (yyvaluep->node) ); };
25772590
2578/* Line 480 of lalr1.cc */2591/* Line 480 of lalr1.cc */
2579#line 2580 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2592#line 2593 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2580 break;2593 break;
2581 case 618: /* "FTThesaurusOption" */2594 case 618: /* "FTThesaurusOption" */
25822595
2583/* Line 480 of lalr1.cc */2596/* Line 480 of lalr1.cc */
2584#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2597#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2585 { release_hack( (yyvaluep->node) ); };2598 { release_hack( (yyvaluep->node) ); };
25862599
2587/* Line 480 of lalr1.cc */2600/* Line 480 of lalr1.cc */
2588#line 2589 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2601#line 2602 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2589 break;2602 break;
2590 case 622: /* "FTThesaurusID" */2603 case 622: /* "FTThesaurusID" */
25912604
2592/* Line 480 of lalr1.cc */2605/* Line 480 of lalr1.cc */
2593#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2606#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2594 { release_hack( (yyvaluep->node) ); };2607 { release_hack( (yyvaluep->node) ); };
25952608
2596/* Line 480 of lalr1.cc */2609/* Line 480 of lalr1.cc */
2597#line 2598 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2610#line 2611 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2598 break;2611 break;
2599 case 625: /* "FTStopWordOption" */2612 case 625: /* "FTStopWordOption" */
26002613
2601/* Line 480 of lalr1.cc */2614/* Line 480 of lalr1.cc */
2602#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2615#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2603 { release_hack( (yyvaluep->node) ); };2616 { release_hack( (yyvaluep->node) ); };
26042617
2605/* Line 480 of lalr1.cc */2618/* Line 480 of lalr1.cc */
2606#line 2607 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2619#line 2620 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2607 break;2620 break;
2608 case 626: /* "FTStopWords" */2621 case 626: /* "FTStopWords" */
26092622
2610/* Line 480 of lalr1.cc */2623/* Line 480 of lalr1.cc */
2611#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2624#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2612 { release_hack( (yyvaluep->node) ); };2625 { release_hack( (yyvaluep->node) ); };
26132626
2614/* Line 480 of lalr1.cc */2627/* Line 480 of lalr1.cc */
2615#line 2616 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2628#line 2629 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2616 break;2629 break;
2617 case 630: /* "FTStopWordsInclExcl" */2630 case 630: /* "FTStopWordsInclExcl" */
26182631
2619/* Line 480 of lalr1.cc */2632/* Line 480 of lalr1.cc */
2620#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2633#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2621 { release_hack( (yyvaluep->node) ); };2634 { release_hack( (yyvaluep->node) ); };
26222635
2623/* Line 480 of lalr1.cc */2636/* Line 480 of lalr1.cc */
2624#line 2625 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2637#line 2638 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2625 break;2638 break;
2626 case 631: /* "FTLanguageOption" */2639 case 631: /* "FTLanguageOption" */
26272640
2628/* Line 480 of lalr1.cc */2641/* Line 480 of lalr1.cc */
2629#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2642#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2630 { release_hack( (yyvaluep->node) ); };2643 { release_hack( (yyvaluep->node) ); };
26312644
2632/* Line 480 of lalr1.cc */2645/* Line 480 of lalr1.cc */
2633#line 2634 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2646#line 2647 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2634 break;2647 break;
2635 case 632: /* "FTWildCardOption" */2648 case 632: /* "FTWildCardOption" */
26362649
2637/* Line 480 of lalr1.cc */2650/* Line 480 of lalr1.cc */
2638#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2651#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2639 { release_hack( (yyvaluep->node) ); };2652 { release_hack( (yyvaluep->node) ); };
26402653
2641/* Line 480 of lalr1.cc */2654/* Line 480 of lalr1.cc */
2642#line 2643 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2655#line 2656 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2643 break;2656 break;
2644 case 633: /* "FTContent" */2657 case 633: /* "FTContent" */
26452658
2646/* Line 480 of lalr1.cc */2659/* Line 480 of lalr1.cc */
2647#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2660#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2648 { release_hack( (yyvaluep->node) ); };2661 { release_hack( (yyvaluep->node) ); };
26492662
2650/* Line 480 of lalr1.cc */2663/* Line 480 of lalr1.cc */
2651#line 2652 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2664#line 2665 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2652 break;2665 break;
2653 case 634: /* "FTTimes" */2666 case 634: /* "FTTimes" */
26542667
2655/* Line 480 of lalr1.cc */2668/* Line 480 of lalr1.cc */
2656#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2669#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2657 { release_hack( (yyvaluep->node) ); };2670 { release_hack( (yyvaluep->node) ); };
26582671
2659/* Line 480 of lalr1.cc */2672/* Line 480 of lalr1.cc */
2660#line 2661 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2673#line 2674 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2661 break;2674 break;
2662 case 635: /* "FTRange" */2675 case 635: /* "FTRange" */
26632676
2664/* Line 480 of lalr1.cc */2677/* Line 480 of lalr1.cc */
2665#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2678#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2666 { release_hack( (yyvaluep->node) ); };2679 { release_hack( (yyvaluep->node) ); };
26672680
2668/* Line 480 of lalr1.cc */2681/* Line 480 of lalr1.cc */
2669#line 2670 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2682#line 2683 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2670 break;2683 break;
2671 case 636: /* "FTScope" */2684 case 636: /* "FTScope" */
26722685
2673/* Line 480 of lalr1.cc */2686/* Line 480 of lalr1.cc */
2674#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2687#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2675 { release_hack( (yyvaluep->node) ); };2688 { release_hack( (yyvaluep->node) ); };
26762689
2677/* Line 480 of lalr1.cc */2690/* Line 480 of lalr1.cc */
2678#line 2679 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2691#line 2692 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2679 break;2692 break;
2680 case 637: /* "FTBigUnit" */2693 case 637: /* "FTBigUnit" */
26812694
2682/* Line 480 of lalr1.cc */2695/* Line 480 of lalr1.cc */
2683#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2696#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2684 { release_hack( (yyvaluep->node) ); };2697 { release_hack( (yyvaluep->node) ); };
26852698
2686/* Line 480 of lalr1.cc */2699/* Line 480 of lalr1.cc */
2687#line 2688 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2700#line 2701 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2688 break;2701 break;
2689 case 638: /* "FTIgnoreOption" */2702 case 638: /* "FTIgnoreOption" */
26902703
2691/* Line 480 of lalr1.cc */2704/* Line 480 of lalr1.cc */
2692#line 926 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2705#line 926 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2693 { release_hack( (yyvaluep->node) ); };2706 { release_hack( (yyvaluep->node) ); };
26942707
2695/* Line 480 of lalr1.cc */2708/* Line 480 of lalr1.cc */
2696#line 2697 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2709#line 2710 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2697 break;2710 break;
2698 case 639: /* "JSONArrayConstructor" */2711 case 639: /* "JSONArrayConstructor" */
26992712
2700/* Line 480 of lalr1.cc */2713/* Line 480 of lalr1.cc */
2701#line 929 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2714#line 929 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2702 { release_hack( (yyvaluep->expr) ); };2715 { release_hack( (yyvaluep->expr) ); };
27032716
2704/* Line 480 of lalr1.cc */2717/* Line 480 of lalr1.cc */
2705#line 2706 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2718#line 2719 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2706 break;2719 break;
2707 case 640: /* "JSONSimpleObjectUnion" */2720 case 640: /* "JSONSimpleObjectUnion" */
27082721
2709/* Line 480 of lalr1.cc */2722/* Line 480 of lalr1.cc */
2710#line 929 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2723#line 929 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2711 { release_hack( (yyvaluep->expr) ); };2724 { release_hack( (yyvaluep->expr) ); };
27122725
2713/* Line 480 of lalr1.cc */2726/* Line 480 of lalr1.cc */
2714#line 2715 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2727#line 2728 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2715 break;2728 break;
2716 case 641: /* "JSONAccumulatorObjectUnion" */2729 case 641: /* "JSONAccumulatorObjectUnion" */
27172730
2718/* Line 480 of lalr1.cc */2731/* Line 480 of lalr1.cc */
2719#line 929 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2732#line 929 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2720 { release_hack( (yyvaluep->expr) ); };2733 { release_hack( (yyvaluep->expr) ); };
27212734
2722/* Line 480 of lalr1.cc */2735/* Line 480 of lalr1.cc */
2723#line 2724 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2736#line 2737 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2724 break;2737 break;
2725 case 642: /* "JSONObjectConstructor" */2738 case 642: /* "JSONObjectConstructor" */
27262739
2727/* Line 480 of lalr1.cc */2740/* Line 480 of lalr1.cc */
2728#line 929 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2741#line 929 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2729 { release_hack( (yyvaluep->expr) ); };2742 { release_hack( (yyvaluep->expr) ); };
27302743
2731/* Line 480 of lalr1.cc */2744/* Line 480 of lalr1.cc */
2732#line 2733 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2745#line 2746 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2733 break;2746 break;
2734 case 643: /* "JSONPairList" */2747 case 643: /* "JSONPairList" */
27352748
2736/* Line 480 of lalr1.cc */2749/* Line 480 of lalr1.cc */
2737#line 929 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2750#line 929 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2738 { release_hack( (yyvaluep->node) ); };2751 { release_hack( (yyvaluep->node) ); };
27392752
2740/* Line 480 of lalr1.cc */2753/* Line 480 of lalr1.cc */
2741#line 2742 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2754#line 2755 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2742 break;2755 break;
2743 case 644: /* "JSONInsertExpr" */2756 case 644: /* "JSONInsertExpr" */
27442757
2745/* Line 480 of lalr1.cc */2758/* Line 480 of lalr1.cc */
2746#line 929 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2759#line 929 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2747 { release_hack( (yyvaluep->expr) ); };2760 { release_hack( (yyvaluep->expr) ); };
27482761
2749/* Line 480 of lalr1.cc */2762/* Line 480 of lalr1.cc */
2750#line 2751 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2763#line 2764 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2751 break;2764 break;
2752 case 645: /* "JSONAppendExpr" */2765 case 645: /* "JSONAppendExpr" */
27532766
2754/* Line 480 of lalr1.cc */2767/* Line 480 of lalr1.cc */
2755#line 929 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2768#line 929 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2756 { release_hack( (yyvaluep->expr) ); };2769 { release_hack( (yyvaluep->expr) ); };
27572770
2758/* Line 480 of lalr1.cc */2771/* Line 480 of lalr1.cc */
2759#line 2760 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2772#line 2773 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2760 break;2773 break;
2761 case 646: /* "JSONDeleteExpr" */2774 case 646: /* "JSONDeleteExpr" */
27622775
2763/* Line 480 of lalr1.cc */2776/* Line 480 of lalr1.cc */
2764#line 929 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2777#line 929 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2765 { release_hack( (yyvaluep->expr) ); };2778 { release_hack( (yyvaluep->expr) ); };
27662779
2767/* Line 480 of lalr1.cc */2780/* Line 480 of lalr1.cc */
2768#line 2769 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2781#line 2782 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2769 break;2782 break;
2770 case 647: /* "JSONRenameExpr" */2783 case 647: /* "JSONRenameExpr" */
27712784
2772/* Line 480 of lalr1.cc */2785/* Line 480 of lalr1.cc */
2773#line 929 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2786#line 929 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2774 { release_hack( (yyvaluep->expr) ); };2787 { release_hack( (yyvaluep->expr) ); };
27752788
2776/* Line 480 of lalr1.cc */2789/* Line 480 of lalr1.cc */
2777#line 2778 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2790#line 2791 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2778 break;2791 break;
2779 case 648: /* "JSONReplaceExpr" */2792 case 648: /* "JSONReplaceExpr" */
27802793
2781/* Line 480 of lalr1.cc */2794/* Line 480 of lalr1.cc */
2782#line 929 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2795#line 929 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2783 { release_hack( (yyvaluep->expr) ); };2796 { release_hack( (yyvaluep->expr) ); };
27842797
2785/* Line 480 of lalr1.cc */2798/* Line 480 of lalr1.cc */
2786#line 2787 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2799#line 2800 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2787 break;2800 break;
2788 case 655: /* "QNAME" */2801 case 655: /* "QNAME" */
27892802
2790/* Line 480 of lalr1.cc */2803/* Line 480 of lalr1.cc */
2791#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2804#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2792 { release_hack( (yyvaluep->expr) ); };2805 { release_hack( (yyvaluep->expr) ); };
27932806
2794/* Line 480 of lalr1.cc */2807/* Line 480 of lalr1.cc */
2795#line 2796 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2808#line 2809 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2796 break;2809 break;
2797 case 656: /* "FUNCTION_NAME" */2810 case 656: /* "FUNCTION_NAME" */
27982811
2799/* Line 480 of lalr1.cc */2812/* Line 480 of lalr1.cc */
2800#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2813#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2801 { release_hack( (yyvaluep->expr) ); };2814 { release_hack( (yyvaluep->expr) ); };
28022815
2803/* Line 480 of lalr1.cc */2816/* Line 480 of lalr1.cc */
2804#line 2805 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2817#line 2818 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2805 break;2818 break;
2806 case 657: /* "EQNAME" */2819 case 657: /* "EQNAME" */
28072820
2808/* Line 480 of lalr1.cc */2821/* Line 480 of lalr1.cc */
2809#line 932 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2822#line 932 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2810 { release_hack( (yyvaluep->expr) ); };2823 { release_hack( (yyvaluep->expr) ); };
28112824
2812/* Line 480 of lalr1.cc */2825/* Line 480 of lalr1.cc */
2813#line 2814 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2826#line 2827 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
2814 break;2827 break;
28152828
2816 default:2829 default:
@@ -2853,6 +2866,18 @@
2853 }2866 }
2854#endif2867#endif
28552868
2869 inline bool
2870 xquery_parser::yy_pact_value_is_default_ (int yyvalue)
2871 {
2872 return yyvalue == yypact_ninf_;
2873 }
2874
2875 inline bool
2876 xquery_parser::yy_table_value_is_error_ (int yyvalue)
2877 {
2878 return yyvalue == yytable_ninf_;
2879 }
2880
2856 int2881 int
2857 xquery_parser::parse ()2882 xquery_parser::parse ()
2858 {2883 {
@@ -2874,7 +2899,7 @@
2874 /// Location of the lookahead.2899 /// Location of the lookahead.
2875 location_type yylloc;2900 location_type yylloc;
2876 /// The locations where the error started and ended.2901 /// The locations where the error started and ended.
2877 location_type yyerror_range[2];2902 location_type yyerror_range[3];
28782903
2879 /// $$.2904 /// $$.
2880 semantic_type yyval;2905 semantic_type yyval;
@@ -2888,14 +2913,14 @@
28882913
2889 /* User initialization code. */2914 /* User initialization code. */
2890 2915
2891/* Line 553 of lalr1.cc */2916/* Line 565 of lalr1.cc */
2892#line 140 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"2917#line 140 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
2893{2918{
2894 yylloc.begin.filename = yylloc.end.filename = &(driver.theFilename2);2919 yylloc.begin.filename = yylloc.end.filename = &(driver.theFilename2);
2895}2920}
28962921
2897/* Line 553 of lalr1.cc */2922/* Line 565 of lalr1.cc */
2898#line 2899 "/home/markos/zorba/repo/union-sequence-types/build-opt/src/compiler/parser/xquery_parser.cpp"2923#line 2924 "/home/colea/xquery_bzr/hof/build/src/compiler/parser/xquery_parser.cpp"
28992924
2900 /* Initialize the stacks. The initial state will be pushed in2925 /* Initialize the stacks. The initial state will be pushed in
2901 yynewstate, since the latter expects the semantical and the2926 yynewstate, since the latter expects the semantical and the
@@ -2923,7 +2948,7 @@
29232948
2924 /* Try to take a decision without lookahead. */2949 /* Try to take a decision without lookahead. */
2925 yyn = yypact_[yystate];2950 yyn = yypact_[yystate];
2926 if (yyn == yypact_ninf_)2951 if (yy_pact_value_is_default_ (yyn))
2927 goto yydefault;2952 goto yydefault;
29282953
2929 /* Read a lookahead token. */2954 /* Read a lookahead token. */
@@ -2956,8 +2981,8 @@
2956 yyn = yytable_[yyn];2981 yyn = yytable_[yyn];
2957 if (yyn <= 0)2982 if (yyn <= 0)
2958 {2983 {
2959 if (yyn == 0 || yyn == yytable_ninf_)2984 if (yy_table_value_is_error_ (yyn))
2960 goto yyerrlab;2985 goto yyerrlab;
2961 yyn = -yyn;2986 yyn = -yyn;
2962 goto yyreduce;2987 goto yyreduce;
2963 }2988 }
@@ -3013,8 +3038,8 @@
3013 {3038 {
3014 case 3:3039 case 3:
30153040
3016/* Line 678 of lalr1.cc */3041/* Line 690 of lalr1.cc */
3017#line 1054 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3042#line 1054 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3018 {3043 {
3019 (yyval.node) = (yysemantic_stack_[(2) - (2)].node);3044 (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
3020 }3045 }
@@ -3022,8 +3047,8 @@
30223047
3023 case 4:3048 case 4:
30243049
3025/* Line 678 of lalr1.cc */3050/* Line 690 of lalr1.cc */
3026#line 1058 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3051#line 1058 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3027 {3052 {
3028 (yyval.node) = (yysemantic_stack_[(2) - (2)].node);3053 (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
3029 }3054 }
@@ -3031,8 +3056,8 @@
30313056
3032 case 5:3057 case 5:
30333058
3034/* Line 678 of lalr1.cc */3059/* Line 690 of lalr1.cc */
3035#line 1062 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3060#line 1062 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3036 {3061 {
3037 (yyval.node) = (yysemantic_stack_[(3) - (3)].node);3062 (yyval.node) = (yysemantic_stack_[(3) - (3)].node);
3038 }3063 }
@@ -3040,8 +3065,8 @@
30403065
3041 case 6:3066 case 6:
30423067
3043/* Line 678 of lalr1.cc */3068/* Line 690 of lalr1.cc */
3044#line 1070 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3069#line 1070 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3045 {3070 {
3046 (yyval.node) = NULL;3071 (yyval.node) = NULL;
3047 }3072 }
@@ -3049,8 +3074,8 @@
30493074
3050 case 7:3075 case 7:
30513076
3052/* Line 678 of lalr1.cc */3077/* Line 690 of lalr1.cc */
3053#line 1076 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3078#line 1076 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3054 {3079 {
3055 (yyval.node) = NULL; YYABORT;3080 (yyval.node) = NULL; YYABORT;
3056 }3081 }
@@ -3058,8 +3083,8 @@
30583083
3059 case 8:3084 case 8:
30603085
3061/* Line 678 of lalr1.cc */3086/* Line 690 of lalr1.cc */
3062#line 1080 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3087#line 1080 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3063 {3088 {
3064 (yyval.node) = NULL; YYABORT;3089 (yyval.node) = NULL; YYABORT;
3065 }3090 }
@@ -3067,8 +3092,8 @@
30673092
3068 case 9:3093 case 9:
30693094
3070/* Line 678 of lalr1.cc */3095/* Line 690 of lalr1.cc */
3071#line 1089 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3096#line 1089 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3072 {3097 {
3073 (yyval.node) = (yysemantic_stack_[(1) - (1)].node);3098 (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
3074 driver.set_expr( (yyval.node) );3099 driver.set_expr( (yyval.node) );
@@ -3077,8 +3102,8 @@
30773102
3078 case 10:3103 case 10:
30793104
3080/* Line 678 of lalr1.cc */3105/* Line 690 of lalr1.cc */
3081#line 1095 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3106#line 1095 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3082 {3107 {
3083 MainModule* mm = dynamic_cast<MainModule*>((yysemantic_stack_[(2) - (2)].node));3108 MainModule* mm = dynamic_cast<MainModule*>((yysemantic_stack_[(2) - (2)].node));
3084 mm->set_version_decl( static_cast<VersionDecl*>((yysemantic_stack_[(2) - (1)].node)) );3109 mm->set_version_decl( static_cast<VersionDecl*>((yysemantic_stack_[(2) - (1)].node)) );
@@ -3089,8 +3114,8 @@
30893114
3090 case 11:3115 case 11:
30913116
3092/* Line 678 of lalr1.cc */3117/* Line 690 of lalr1.cc */
3093#line 1103 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3118#line 1103 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3094 {3119 {
3095 (yyval.node) = (yysemantic_stack_[(1) - (1)].node);3120 (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
3096 driver.set_expr( (yyval.node) );3121 driver.set_expr( (yyval.node) );
@@ -3099,8 +3124,8 @@
30993124
3100 case 12:3125 case 12:
31013126
3102/* Line 678 of lalr1.cc */3127/* Line 690 of lalr1.cc */
3103#line 1109 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3128#line 1109 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3104 {3129 {
3105 LibraryModule* lm = dynamic_cast<LibraryModule*>((yysemantic_stack_[(2) - (2)].node));3130 LibraryModule* lm = dynamic_cast<LibraryModule*>((yysemantic_stack_[(2) - (2)].node));
3106 lm->set_version_decl( static_cast<VersionDecl*>((yysemantic_stack_[(2) - (1)].node)) );3131 lm->set_version_decl( static_cast<VersionDecl*>((yysemantic_stack_[(2) - (1)].node)) );
@@ -3111,8 +3136,8 @@
31113136
3112 case 13:3137 case 13:
31133138
3114/* Line 678 of lalr1.cc */3139/* Line 690 of lalr1.cc */
3115#line 1120 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3140#line 1120 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3116 {3141 {
3117 (yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)), "utf-8" );3142 (yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)), "utf-8" );
3118 }3143 }
@@ -3120,8 +3145,8 @@
31203145
3121 case 14:3146 case 14:
31223147
3123/* Line 678 of lalr1.cc */3148/* Line 690 of lalr1.cc */
3124#line 1125 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3149#line 1125 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3125 {3150 {
3126 (yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (3)].sval)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)) );3151 (yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (3)].sval)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)) );
3127 }3152 }
@@ -3129,8 +3154,8 @@
31293154
3130 case 15:3155 case 15:
31313156
3132/* Line 678 of lalr1.cc */3157/* Line 690 of lalr1.cc */
3133#line 1133 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3158#line 1133 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3134 {3159 {
3135 Prolog* prolog = new Prolog(LOC((yyloc)), static_cast<SIND_DeclList*>((yysemantic_stack_[(3) - (1)].node)), NULL);3160 Prolog* prolog = new Prolog(LOC((yyloc)), static_cast<SIND_DeclList*>((yysemantic_stack_[(3) - (1)].node)), NULL);
31363161
@@ -3140,8 +3165,8 @@
31403165
3141 case 16:3166 case 16:
31423167
3143/* Line 678 of lalr1.cc */3168/* Line 690 of lalr1.cc */
3144#line 1140 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3169#line 1140 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3145 {3170 {
3146 Prolog* prolog = new Prolog(LOC((yyloc)), NULL, static_cast<VFO_DeclList*>((yysemantic_stack_[(3) - (1)].node)));3171 Prolog* prolog = new Prolog(LOC((yyloc)), NULL, static_cast<VFO_DeclList*>((yysemantic_stack_[(3) - (1)].node)));
31473172
@@ -3151,8 +3176,8 @@
31513176
3152 case 17:3177 case 17:
31533178
3154/* Line 678 of lalr1.cc */3179/* Line 690 of lalr1.cc */
3155#line 1147 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3180#line 1147 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3156 {3181 {
3157 Prolog* prolog = new Prolog(LOC((yyloc)),3182 Prolog* prolog = new Prolog(LOC((yyloc)),
3158 static_cast<SIND_DeclList*>((yysemantic_stack_[(5) - (1)].node)),3183 static_cast<SIND_DeclList*>((yysemantic_stack_[(5) - (1)].node)),
@@ -3164,8 +3189,8 @@
31643189
3165 case 18:3190 case 18:
31663191
3167/* Line 678 of lalr1.cc */3192/* Line 690 of lalr1.cc */
3168#line 1156 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3193#line 1156 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3169 {3194 {
3170 (yyval.node) = new MainModule( LOC((yyloc)), static_cast<QueryBody*>((yysemantic_stack_[(1) - (1)].expr)), NULL );3195 (yyval.node) = new MainModule( LOC((yyloc)), static_cast<QueryBody*>((yysemantic_stack_[(1) - (1)].expr)), NULL );
3171 }3196 }
@@ -3173,8 +3198,8 @@
31733198
3174 case 19:3199 case 19:
31753200
3176/* Line 678 of lalr1.cc */3201/* Line 690 of lalr1.cc */
3177#line 1163 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3202#line 1163 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3178 {3203 {
3179 (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr); // to prevent the Bison warning3204 (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr); // to prevent the Bison warning
3180 (yylocation_stack_[(3) - (1)]).step();3205 (yylocation_stack_[(3) - (1)]).step();
@@ -3185,8 +3210,8 @@
31853210
3186 case 20:3211 case 20:
31873212
3188/* Line 678 of lalr1.cc */3213/* Line 690 of lalr1.cc */
3189#line 1171 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"3214#line 1171 "/home/colea/xquery_bzr/hof/src/compiler/parser/xquery_parser.y"
3190 {3215 {
3191 (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr); // to prevent the Bison warning3216 (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr); // to prevent the Bison warning
3192 (yylocation_stack_[(3) - (1)]).step();3217 (yylocation_stack_[(3) - (1)]).step();
@@ -3197,8 +3222,8 @@
31973222
3198 case 21:3223 case 21:
31993224
3200/* Line 678 of lalr1.cc */
3201#line 1179 "/home/markos/zorba/repo/union-sequence-types/src/compiler/parser/xquery_parser.y"
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches