FOTS: generate-id tests results in Seg Fault
Bug #947130 reported by
Sorin Marian Nasoi
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Zorba |
Fix Released
|
Critical
|
Nicolae Brinza |
Bug Description
The following test from the
fn/generate-id.xml
results in a Segmentation Fault :
- "generate-id-901"
xquery version '3.0';
declare namespace o = 'http://
declare option o:enable 'hof';
let $f := function() {generate-id()} return $f()
Expected result is XPDY0002.
- "generate-id-902"
xquery version '3.0';
declare namespace o = 'http://
declare option o:enable 'hof';
let $f := function($x as item()) {generate-id($x)} return $f(3)
Expected result is XPTY0004.
Related branches
lp:~nbrinza/zorba/hof
- Nicolae Brinza: Pending requested
-
Diff: 36770 lines (+12044/-8560)217 files modifiedinclude/zorba/pregenerated/diagnostic_list.h (+4/-0)
modules/w3c/pregenerated/xqt-errors.xq (+16/-0)
modules/xqxq/xqxq.xq (+0/-1)
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 (+257/-30)
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 (+36/-15)
src/compiler/expression/expr_iter.cpp (+17/-6)
src/compiler/expression/expr_manager.cpp (+29/-12)
src/compiler/expression/expr_manager.h (+20/-7)
src/compiler/expression/expr_put.cpp (+60/-11)
src/compiler/expression/expr_type.cpp (+31/-1)
src/compiler/expression/expr_visitor.h (+6/-5)
src/compiler/expression/function_item_expr.cpp (+87/-46)
src/compiler/expression/function_item_expr.h (+110/-39)
src/compiler/expression/var_expr.cpp (+2/-1)
src/compiler/expression/var_expr.h (+2/-0)
src/compiler/parser/xquery_parser.cpp (+5822/-5705)
src/compiler/parser/xquery_parser.hpp (+6/-6)
src/compiler/parser/xquery_parser.y (+64/-48)
src/compiler/parser/xquery_scanner.cpp (+361/-361)
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 (+234/-160)
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 (+1320/-840)
src/compiler/translator/translator.h (+15/-0)
src/context/dynamic_context.cpp (+35/-0)
src/context/dynamic_context.h (+8/-0)
src/context/features.cpp (+0/-5)
src/context/features.h (+3/-4)
src/context/root_static_context.cpp (+0/-1)
src/context/static_context.cpp (+47/-0)
src/context/static_context.h (+10/-1)
src/diagnostics/diagnostic_en.xml (+18/-1)
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 (+230/-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 (+18/-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 (+64/-6)
src/runtime/api/plan_wrapper.cpp (+33/-12)
src/runtime/api/plan_wrapper.h (+3/-0)
src/runtime/base/plan_iterator.cpp (+53/-1)
src/runtime/base/plan_iterator.h (+39/-14)
src/runtime/core/constructors.cpp (+14/-2)
src/runtime/core/flwor_iterator.h (+50/-50)
src/runtime/core/fncall_iterator.cpp (+38/-4)
src/runtime/core/fncall_iterator.h (+8/-3)
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 (+125/-66)
src/runtime/function_item/dynamic_fncall_iterator.h (+53/-14)
src/runtime/function_item/function_item.cpp (+590/-86)
src/runtime/function_item/function_item.h (+137/-29)
src/runtime/function_item/function_item_iter_impl.cpp (+358/-29)
src/runtime/function_item/pregenerated/function_item_iter.cpp (+91/-26)
src/runtime/function_item/pregenerated/function_item_iter.h (+128/-15)
src/runtime/misc/materialize.h (+1/-1)
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 (+106/-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 (+4/-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 (+5/-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 (+5/-0)
src/store/naive/simple_temp_seq.cpp (+48/-0)
src/store/naive/simple_temp_seq.h (+12/-1)
src/system/zorba_properties.h (+8/-1)
src/system/zorba_properties.txt (+1/-0)
src/types/typeimpl.cpp (+29/-5)
src/types/typeimpl.h (+15/-7)
src/types/typemanagerimpl.cpp (+21/-10)
src/types/typeops.cpp (+6/-7)
src/zorbaserialization/archiver_consts.h (+18/-15)
src/zorbaserialization/class_serializer.h (+64/-31)
src/zorbaserialization/serialize_template_types.h (+4/-0)
test/apitest.cpp (+59/-4)
test/fots/CMakeLists.txt (+12/-5)
test/fots_driver/FOTSZorbaManifest.xml (+1/-1)
test/fots_driver/cli.xq (+3/-0)
test/fots_driver/environment.xq (+3/-1)
test/fots_driver/evaluate.xq (+0/-4)
test/fots_driver/fots-driver.xq (+1/-2)
test/rbkt/ExpCompilerResults/IterPlan/zorba/collections/count_w3c_collection.iter (+1/-1)
test/rbkt/ExpCompilerResults/IterPlan/zorba/hashjoins/gflwor_04.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-020.xq (+0/-3)
test/rbkt/Queries/zorba/HigherOrder/hof-022.xq (+0/-1)
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-033.xq (+0/-3)
test/rbkt/Queries/zorba/HigherOrder/hof-034.xq (+0/-3)
test/rbkt/Queries/zorba/HigherOrder/hof-035.xq (+0/-3)
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-102.xq (+0/-1)
test/rbkt/Queries/zorba/HigherOrder/hof-103.xq (+0/-1)
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)
test/rbkt/Queries/zorba/casting/notation.xq (+0/-3)
test/rbkt/Queries/zorba/jsoniq/coll_dyn_01.xq (+1/-1)
test/rbkt/Queries/zorba/jsoniq/coll_dyn_03.xq (+1/-1)
test/rbkt/Queries/zorba/xqxq/error-in-query.xq (+0/-1)
test/rbkt/Queries/zorba/xqxq/uri-mapper.xq (+0/-1)
test/rbkt/Queries/zorba/xqxq/uri-mapper2.xq (+0/-1)
test/rbkt/Queries/zorba/xqxq/url-module-resolver.xq (+0/-1)
test/rbkt/Queries/zorba/xqxq/url-schema-resolver.xq (+0/-1)
test/rbkt/Queries/zorba/xqxq/url-schema-resolver2.xq (+0/-1)
test/rbkt/Queries/zorba/xqxq/url-schema-resolver3.xq (+0/-1)
test/rbkt/testdriver.cpp (+0/-1)
test/rbkt/testdriver_mt.cpp (+0/-1)
test/update/updtestdriver.cpp (+0/-1)
Changed in zorba: | |
milestone: | none → 2.8 |
importance: | High → Critical |
tags: |
added: fots-seg-fault removed: fots |
Changed in zorba: | |
milestone: | 2.8 → 2.9 |
tags: | removed: fots-seg-fault |
Changed in zorba: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
Assigned to Nicolai because AFAIK he's working on the HOF.