Changeset: 98ab09832bdd for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=98ab09832bdd
Added Files:
        ChangeLog.Jun2020
        buildtools/ChangeLog.Jun2020
        clients/ChangeLog.Jun2020
        clients/mapilib/ChangeLog.Jun2020
        common/stream/ChangeLog.Jun2020
        documentation/source/json.rst
        gdk/ChangeLog.Jun2020
        gdk/gdk_time.c
        gdk/gdk_time.h
        geom/ChangeLog.Jun2020
        monetdb5/ChangeLog.Jun2020
        sql/ChangeLog.Jun2020
        sql/test/BugTracker-2015/Tests/trigger-old-row.Bug-3741.sql
        sql/test/BugTracker-2015/Tests/trigger-old-row.Bug-3741.stable.err
        sql/test/BugTracker-2015/Tests/trigger-old-row.Bug-3741.stable.out
        sql/test/BugTracker-2017/Tests/date-arithmetic.Bug-6415.sql
        sql/test/Tests/mediumint.sql
        sql/test/Tests/mediumint.stable.err
        sql/test/Tests/mediumint.stable.out
        sql/test/sys-schema/Tests/utilities.sql
        sql/test/sys-schema/Tests/utilities.stable.err
        sql/test/sys-schema/Tests/utilities.stable.out
        testing/ChangeLog.Jun2020
        tools/merovingian/ChangeLog.Jun2020
Removed Files:
        monetdb5/modules/kernel/batmmath.h
        sql/test/rdf/Tests/q8_v_small.reqtests
        sql/test/rdf/Tests/q8_v_small.sql
        sql/test/rdf/Tests/q8_v_small.stable.err
        sql/test/rdf/Tests/q8_v_small.stable.out
Modified Files:
        .hgtags
        ChangeLog
        MonetDB.spec
        NT/monetdb_config.h.in
        NT/rules.msc
        clients/ChangeLog
        clients/R/Tests/dbi.R
        clients/Tests/MAL-signatures.stable.out
        clients/Tests/MAL-signatures.stable.out.int128
        clients/Tests/exports.stable.out
        clients/mapilib/mapi.rc
        clients/mapilib/monetdb-mapi.pc.in
        clients/odbc/driver/ODBCConvert.c
        clients/odbc/driver/ODBCDbc.h
        clients/odbc/driver/ODBCStmt.h
        clients/odbc/driver/ODBCUtil.c
        clients/odbc/driver/SQLBindParameter.c
        clients/odbc/driver/SQLBrowseConnect.c
        clients/odbc/driver/SQLColumnPrivileges.c
        clients/odbc/driver/SQLColumns.c
        clients/odbc/driver/SQLConnect.c
        clients/odbc/driver/SQLDriverConnect.c
        clients/odbc/driver/SQLExecDirect.c
        clients/odbc/driver/SQLExecute.c
        clients/odbc/driver/SQLForeignKeys.c
        clients/odbc/driver/SQLGetTypeInfo.c
        clients/odbc/driver/SQLNativeSql.c
        clients/odbc/driver/SQLPrepare.c
        clients/odbc/driver/SQLPrimaryKeys.c
        clients/odbc/driver/SQLProcedureColumns.c
        clients/odbc/driver/SQLProcedures.c
        clients/odbc/driver/SQLSetCursorName.c
        clients/odbc/driver/SQLSpecialColumns.c
        clients/odbc/driver/SQLStatistics.c
        clients/odbc/driver/SQLTablePrivileges.c
        clients/odbc/driver/SQLTables.c
        clients/odbc/driver/driver.rc
        clients/odbc/winsetup/setup.rc
        common/utils/muuid.c
        configure.ag
        documentation/source/index.rst
        gdk/ChangeLog
        gdk/Makefile.ag
        gdk/gdk.h
        gdk/gdk_aggr.c
        gdk/gdk_atoms.c
        gdk/gdk_bat.c
        gdk/gdk_bbp.c
        gdk/gdk_calc.c
        gdk/gdk_calc.h
        gdk/gdk_calc_compare.h
        gdk/gdk_cand.c
        gdk/gdk_cand.h
        gdk/gdk_heap.c
        gdk/gdk_join.c
        gdk/gdk_logger.c
        gdk/gdk_posix.c
        gdk/gdk_posix.h
        gdk/gdk_storage.c
        gdk/gdk_string.c
        gdk/gdk_system.c
        gdk/gdk_tracer.c
        gdk/gdk_tracer.h
        gdk/gdk_utils.c
        gdk/libbat.rc
        geom/lib/libgeom.h
        geom/monetdb5/geom.c
        monetdb5/ChangeLog
        monetdb5/mal/mal_authorize.h
        monetdb5/mal/mal_import.c
        monetdb5/mal/mal_listing.c
        monetdb5/mal/mal_session.c
        monetdb5/mal/mal_type.c
        monetdb5/modules/atoms/Tests/json15.malC
        monetdb5/modules/atoms/Tests/json15.stable.out
        monetdb5/modules/atoms/json.c
        monetdb5/modules/atoms/json.h
        monetdb5/modules/atoms/mtime.c
        monetdb5/modules/atoms/mtime.h
        monetdb5/modules/atoms/mtime.mal
        monetdb5/modules/atoms/mtime_analytic.c
        monetdb5/modules/atoms/streams.c
        monetdb5/modules/atoms/uuid.c
        monetdb5/modules/kernel/Makefile.ag
        monetdb5/modules/kernel/batmmath.c
        monetdb5/modules/kernel/batmmath.mal
        monetdb5/modules/kernel/mmath.c
        monetdb5/modules/mal/00_batcalc_hge.mal
        monetdb5/modules/mal/00_batcalc_hge.mal.sh
        monetdb5/modules/mal/01_batcalc.mal
        monetdb5/modules/mal/01_batcalc.mal.sh
        monetdb5/modules/mal/batcalc.c
        monetdb5/modules/mal/batmtime.mal
        monetdb5/modules/mal/clients.c
        monetdb5/modules/mal/mal_mapi.c
        monetdb5/modules/mal/mkey.c
        monetdb5/modules/mal/oltp.c
        monetdb5/modules/mal/pcre.c
        monetdb5/modules/mal/querylog.c
        monetdb5/modules/mal/remote.c
        monetdb5/modules/mal/sysmon.c
        monetdb5/modules/mal/txtsim.c
        monetdb5/modules/mal/wlc.c
        monetdb5/modules/mal/wlc.mal
        monetdb5/optimizer/opt_mergetable.c
        monetdb5/optimizer/opt_postfix.c
        monetdb5/optimizer/opt_prelude.c
        monetdb5/optimizer/opt_prelude.h
        monetdb5/optimizer/opt_querylog.c
        monetdb5/optimizer/opt_support.c
        monetdb5/optimizer/opt_support.h
        monetdb5/tools/libmonetdb5.rc
        sql/ChangeLog
        sql/backends/monet5/UDF/capi/capi.c
        sql/backends/monet5/UDF/pyapi3/emit3.c
        sql/backends/monet5/UDF/pyapi3/pyapi3.c
        sql/backends/monet5/UDF/udf/Tests/udf-fuse.stable.out
        sql/backends/monet5/UDF/udf/Tests/udf-reverse.stable.out
        sql/backends/monet5/generator/generator.c
        sql/backends/monet5/rel_bin.c
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql.h
        sql/backends/monet5/sql.mal
        sql/backends/monet5/sql_assert.c
        sql/backends/monet5/sql_cat.c
        sql/backends/monet5/sql_execute.c
        sql/backends/monet5/sql_gencode.c
        sql/backends/monet5/sql_result.c
        sql/backends/monet5/sql_scenario.c
        sql/backends/monet5/sql_statement.c
        sql/backends/monet5/sql_statement.h
        sql/backends/monet5/sql_subquery.c
        sql/backends/monet5/sql_upgrades.c
        sql/backends/monet5/sqlcatalog.mal
        sql/backends/monet5/vaults/shp/shp.c
        sql/backends/monet5/wlr.mal
        sql/benchmarks/tpch/Tests/lowcardinality.stable.out
        sql/common/sql_types.c
        sql/include/sql_catalog.h
        sql/include/sql_relation.h
        sql/jdbc/tests/Tests/Test_PSsomeamount.timeout
        sql/rel.txt
        sql/scripts/13_date.sql
        sql/scripts/17_temporal.sql
        sql/scripts/22_clients.sql
        sql/server/rel_dump.c
        sql/server/rel_exp.c
        sql/server/rel_optimizer.c
        sql/server/rel_planner.c
        sql/server/rel_propagate.c
        sql/server/rel_psm.c
        sql/server/rel_rel.c
        sql/server/rel_rel.h
        sql/server/rel_schema.c
        sql/server/rel_select.c
        sql/server/rel_select.h
        sql/server/rel_unnest.c
        sql/server/rel_updates.c
        sql/server/sql_atom.c
        sql/server/sql_mvc.c
        sql/server/sql_mvc.h
        sql/server/sql_qc.c
        sql/server/sql_qc.h
        sql/server/sql_semantic.c
        sql/storage/bat/bat_logger.c
        sql/storage/store.c
        sql/test/BugConstraints/Tests/delete_primarykey_1643845.stable.err
        sql/test/BugConstraints/Tests/update_primarykey_1643375.stable.err
        
sql/test/BugDay_2005-10-06_2.9.3/Tests/inserts_with_defaults.SF-921977.stable.err
        
sql/test/BugDay_2005-11-09_2.9.3/Tests/date_functions.SF-967145.stable.out
        sql/test/BugTracker-2008/Tests/OOM_query.SF-2457195.stable.out
        
sql/test/BugTracker-2008/Tests/alter_add_constraint_should_check_existing_data.SF-2075241.stable.err
        sql/test/BugTracker-2008/Tests/auto_coersion_bug.SF-2075157.stable.out
        sql/test/BugTracker-2008/Tests/extract_bug.SF-2075266.stable.out
        sql/test/BugTracker-2008/Tests/groupby_with_NULL.SF-2155606.stable.out
        
sql/test/BugTracker-2008/Tests/insert_into_unique_column.SF-2075180.stable.err
        sql/test/BugTracker-2009/Tests/AVG_of_SQRT.SF-2757642.timeout
        sql/test/BugTracker-2009/Tests/explain_gives_crash.SF-2741829.stable.out
        sql/test/BugTracker-2009/Tests/having_min_crash.SF-2795951.sql
        sql/test/BugTracker-2009/Tests/having_min_crash.SF-2795951.stable.out
        
sql/test/BugTracker-2009/Tests/segfault_when_quitting_debugger.SF-2538837.stable.out
        
sql/test/BugTracker-2009/Tests/unique_constraint_on_char.SF-2873564.stable.err
        
sql/test/BugTracker-2010/Tests/LIMIT_OFFSET_big-endian.Bug-2622.stable.out
        sql/test/BugTracker-2010/Tests/new-readonly-db.Bug-2695.stable.err
        
sql/test/BugTracker-2011/Tests/UNIQUE_Constraint_reference.Bug-2835.stable.err
        
sql/test/BugTracker-2011/Tests/crash_in_push_exp_down.Bug-2811.stable.out
        
sql/test/BugTracker-2011/Tests/multicolumn_constraints.Bug-2849.stable.err
        sql/test/BugTracker-2011/Tests/perl-table_info.Bug-2885.stable.err
        sql/test/BugTracker-2012/Tests/foreign_key.Bug-3114.stable.err
        
sql/test/BugTracker-2012/Tests/rewrite_like_into_likesubselect.Bug-3179.stable.out
        
sql/test/BugTracker-2014/Tests/duplicate_primary_keys.Bug-3474.stable.err
        sql/test/BugTracker-2014/Tests/manifold.Bug-3556.stable.out
        
sql/test/BugTracker-2014/Tests/unsafe_project_push_down.Bug-3523.stable.out
        sql/test/BugTracker-2015/Tests/All
        sql/test/BugTracker-2015/Tests/ambiguous.Bug-3803.stable.out
        
sql/test/BugTracker-2015/Tests/mserver-crashes-under-specific-combination-of-JOIN-and-WHERE-conditions.Bug-3872.stable.out
        sql/test/BugTracker-2015/Tests/null_is_null.Bug-3739.stable.out
        sql/test/BugTracker-2015/Tests/timestamp_convert.Bug-3815.stable.out
        sql/test/BugTracker-2015/Tests/ukey_check_unaligned.Bug-3669.stable.err
        sql/test/BugTracker-2015/Tests/window_function_crash.Bug-3861.sql
        sql/test/BugTracker-2015/Tests/window_function_crash.Bug-3861.stable.err
        sql/test/BugTracker-2015/Tests/window_function_crash.Bug-3861.stable.out
        sql/test/BugTracker-2016/Tests/column_not_found.Bug-4064.stable.out
        sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.out
        
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.out.int128
        
sql/test/BugTracker-2016/Tests/date_calculation_and_comparison_wrong_results.Bug-3940.sql
        
sql/test/BugTracker-2016/Tests/date_calculation_and_comparison_wrong_results.Bug-3940.stable.out
        sql/test/BugTracker-2016/Tests/decimal_vs_integer.Bug-3941.stable.out
        sql/test/BugTracker-2016/Tests/epoch.Bug-3979.sql
        sql/test/BugTracker-2016/Tests/epoch.Bug-3979.stable.out
        sql/test/BugTracker-2016/Tests/foreign_key.Bug-3938.stable.err
        
sql/test/BugTracker-2016/Tests/name_conflict_in_union.Bug-6065.stable.out
        sql/test/BugTracker-2016/Tests/null_in_null.Bug-3900.stable.out
        sql/test/BugTracker-2016/Tests/select-in-from.Bug-6119.stable.out
        sql/test/BugTracker-2016/Tests/select-in-from.Bug-6121.stable.out
        sql/test/BugTracker-2017/Tests/All
        
sql/test/BugTracker-2017/Tests/aggr_udf_with_more_than_2params.Bug-6385.stable.err
        sql/test/BugTracker-2017/Tests/drop_not_null_on_pkey.Bug-6189.stable.err
        
sql/test/BugTracker-2017/Tests/python_loader_clobbers_default_with_null.Bug-6464.stable.err
        
sql/test/BugTracker-2018/Tests/create_table_empty_column_name.Bug-6653.stable.err
        
sql/test/BugTracker-2018/Tests/dependency_column_on_sequence.Bug-6618.stable.err
        
sql/test/BugTracker-2018/Tests/grant-role-not-idempotent.Bug-6660.stable.out
        
sql/test/BugTracker-2018/Tests/multi-column-hash-wrongly-NIL.Bug-6638.stable.err
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-case-coalesce.Bug-6550.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-case-not-in-count.Bug-6587.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-extra-columns.Bug-6555.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case-nullif-coalesce.Bug-6565.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-complex-case.Bug-6552.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-count-not-in.Bug-6518.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-coalesce-error-message.Bug-6608.stable.err
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-having-in-cast.Bug-6561.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-having-in.Bug-6560.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-groupby-having-not-null-not-in.Bug-6562.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-nested-case.Bug-6554.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-not-in-wrong-results.Bug-6530.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-overflow-in-conversion.Bug-6517.stable.out
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-select-not-in-wrong.Bug-6602.sql
        
sql/test/BugTracker-2018/Tests/sqlitelogictest-select-not-in-wrong.Bug-6602.stable.out
        sql/test/BugTracker-2018/Tests/timestamp-as-boolean.Bug-6642.stable.err
        sql/test/BugTracker-2018/Tests/timestamp-roundtrip.Bug-6640.sql
        
sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out
        
sql/test/BugTracker-2019/Tests/duplicates-not-eliminated-long-CASE-stmt.Bug-6697.stable.out.single
        
sql/test/BugTracker-2019/Tests/json-text-empty-separator.Bug-6798.stable.err
        
sql/test/BugTracker-2019/Tests/json-text-empty-separator.Bug-6798.stable.out
        sql/test/BugTracker-2019/Tests/str_to_time.Bug-6791.sql
        sql/test/BugTracker-2019/Tests/str_to_time.Bug-6791.stable.out
        sql/test/BugTracker/Tests/alter_table_add_fkey.SF-1737668.stable.err
        sql/test/BugTracker/Tests/auto_increment.SF-1834820.stable.err
        sql/test/BugTracker/Tests/crash_on_fkey_update.SF-1703497.stable.err
        sql/test/BugTracker/Tests/crash_on_fkey_update2.SF-1703497.stable.err
        sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
        sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
        sql/test/BugTracker/Tests/multivalue_insert.SF-1509864.stable.err
        sql/test/BugTracker/Tests/number_null_first_row.SF-1833286.stable.err
        
sql/test/BugTracker/Tests/update_fkey_with_value_not_in_the_pkey.SF-1734143.stable.err
        sql/test/BugTracker/Tests/update_pkey_bug.SF-1733712.stable.err
        sql/test/BugTracker/Tests/update_with_subselect.SF-1362771.sql
        
sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-0join-query.stable.out
        
sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-0join-view.stable.out
        
sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-1join-query.stable.out
        
sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-1join-view.stable.out
        
sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-query.stable.out
        
sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-view.stable.out
        sql/test/Tests/All
        sql/test/Tests/default.stable.err
        sql/test/Tests/null.stable.err
        sql/test/Triggers/Tests/All
        sql/test/Triggers/Tests/trigger_action.stable.err
        sql/test/Triggers/Tests/trigger_action.stable.out
        sql/test/Triggers/trigger_action.sql
        sql/test/Update_Delete_action/Tests/delete_restrict.stable.err
        sql/test/Update_Delete_action/Tests/delete_set_default.stable.err
        sql/test/Update_Delete_action/Tests/delete_set_null.stable.err
        sql/test/Update_Delete_action/Tests/update_delete_set_null.stable.err
        
sql/test/Update_Delete_action/Tests/update_delete_set_null_crash.stable.err
        sql/test/Update_Delete_action/Tests/update_restrict.stable.err
        sql/test/Update_Delete_action/Tests/update_set_default.stable.err
        sql/test/Update_Delete_action/Tests/update_set_default_crash.stable.err
        sql/test/Update_Delete_action/Tests/update_set_null.stable.err
        sql/test/VOC/Tests/median.Bug-3096.stable.out
        sql/test/Via-m/Tests/event_s07.stable.err
        sql/test/Via-m/Tests/event_s11.stable.err
        sql/test/Via-m/Tests/file_s02.stable.out
        sql/test/Via-m/Tests/file_s10.stable.err
        sql/test/Via-m/Tests/media_s12.stable.err
        sql/test/Via-m/Tests/media_s14.stable.err
        sql/test/Via-m/Tests/media_s16.stable.err
        sql/test/Via-m/Tests/media_s18.stable.err
        sql/test/Via-m/Tests/media_s19.stable.err
        sql/test/analytics/Tests/analytics03.sql
        sql/test/analytics/Tests/analytics03.stable.out
        sql/test/bugs/Tests/alter_table_add_column.stable.err
        sql/test/bugs/Tests/cur_date_crash-JIRA-42.stable.out
        sql/test/bugs/Tests/default_with_cast.SF-1334486.stable.out
        sql/test/bugs/Tests/foreignkey_leftjoin-bug-sf-854312.stable.err
        sql/test/bugs/Tests/groupby_having-bug-sf-947600.stable.out
        sql/test/bugs/Tests/groupby_having_charlength-bug-sf-943566.stable.out
        sql/test/bugs/Tests/in_or_bug.stable.out
        sql/test/bugs/Tests/primary_key-bug-sf-975308.stable.err
        sql/test/bugs/Tests/seconds2timestamp.sql
        sql/test/bugs/Tests/seconds2timestamp.stable.out
        sql/test/bugs/Tests/unique-bug-sf-1043512.stable.err
        sql/test/copy/Tests/key_copy.stable.err
        sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
        
sql/test/emptydb-upgrade-chain-hge/Tests/upgrade.stable.out.powerpc64.int128
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.32bit
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.int128
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64
        sql/test/emptydb-upgrade-chain/Tests/upgrade.stable.out.powerpc64.int128
        sql/test/emptydb-upgrade-hge/Tests/upgrade.stable.out.int128
        sql/test/emptydb-upgrade/Tests/upgrade.stable.out
        sql/test/emptydb-upgrade/Tests/upgrade.stable.out.32bit
        sql/test/emptydb-upgrade/Tests/upgrade.stable.out.int128
        sql/test/emptydb/Tests/check.SQL.py
        sql/test/emptydb/Tests/check.stable.out
        sql/test/emptydb/Tests/check.stable.out.32bit
        sql/test/emptydb/Tests/check.stable.out.int128
        sql/test/json/Tests/All
        sql/test/json/Tests/books.stable.out
        sql/test/json/Tests/bulkjson.stable.out
        sql/test/json/Tests/bulklength.stable.out
        sql/test/json/Tests/bulkvalid.stable.out
        sql/test/json/Tests/coercions.stable.out
        sql/test/json/Tests/components.stable.out
        sql/test/json/Tests/jsonvalidity.Bug-3753.sql
        sql/test/json/Tests/jsonvalidity.Bug-3753.stable.out
        sql/test/json/Tests/load.stable.out
        sql/test/json/Tests/parsing.stable.err
        sql/test/json/Tests/pathexpr.stable.out
        sql/test/json/Tests/pgexample.stable.out
        sql/test/json/Tests/shop.stable.out
        sql/test/json/Tests/spaceissue.stable.out
        sql/test/merge-partitions/Tests/mergepart20.sql
        sql/test/merge-partitions/Tests/mergepart20.stable.out
        sql/test/merge-statements/Tests/mergestmt02.stable.err
        sql/test/mergetables/Tests/mergequery.stable.out
        sql/test/miscellaneous/Tests/groupby_error.sql
        sql/test/miscellaneous/Tests/groupby_error.stable.err
        sql/test/miscellaneous/Tests/groupby_error.stable.out
        sql/test/miscellaneous/Tests/simple_selects.sql
        sql/test/miscellaneous/Tests/simple_selects.stable.err
        sql/test/miscellaneous/Tests/simple_selects.stable.out
        sql/test/pg_regress/Tests/alter_table.stable.err
        sql/test/pg_regress/Tests/create_misc.stable.err
        sql/test/pg_regress/Tests/date.stable.err
        sql/test/pg_regress/Tests/date.stable.out
        sql/test/pg_regress/Tests/time.stable.err
        sql/test/pg_regress/Tests/timestamptz.stable.out
        sql/test/pg_regress/Tests/timetz.stable.err
        sql/test/pg_regress/Tests/timetz.stable.out
        sql/test/pg_regress/Tests/vacuum.stable.out
        sql/test/rdf/Tests/All
        sql/test/rdf/Tests/q8_v.stable.err
        sql/test/rdf/Tests/q8_v.stable.out
        sql/test/rdf/Tests/q8_v.timeout
        sql/test/remote/Tests/partition_elim.stable.out
        sql/test/ssqq/Tests/insert_query.stable.err
        sql/test/ssqq/Tests/insert_queue.stable.err
        sql/test/ssqq/Tests/insert_quser.stable.err
        sql/test/subquery/Tests/correlated.stable.err
        sql/test/subquery/Tests/subquery.sql
        sql/test/subquery/Tests/subquery.stable.err
        sql/test/subquery/Tests/subquery.stable.out
        sql/test/subquery/Tests/subquery2.sql
        sql/test/subquery/Tests/subquery3.sql
        sql/test/subquery/Tests/subquery3.stable.err
        sql/test/subquery/Tests/subquery3.stable.out
        sql/test/subquery/Tests/subquery4.sql
        sql/test/subquery/Tests/subquery4.stable.err
        sql/test/subquery/Tests/subquery4.stable.out
        sql/test/sys-schema/Tests/All
        sql/test/sys-schema/Tests/systemfunctions.stable.out
        sql/test/sys-schema/Tests/systemfunctions.stable.out.int128
        sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.int128
        sql/test/testdb-upgrade/Tests/upgrade.stable.out
        sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit
        sql/test/testdb-upgrade/Tests/upgrade.stable.out.int128
        sql/test/testdb/Tests/dump-nogeom.stable.out
        testing/Mfilter.py
        tools/merovingian/ChangeLog
        tools/mserver/shutdowntest.c
        vertoo.data
Branch: scoping
Log Message:

Merged with default


diffs (truncated from 324616 to 300 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -763,3 +763,4 @@ e1c7c70bceb205cf23b8a35179b628563871f949
 179977ed07cd8095f99a6a07968b8e9d1affa753 Nov2019_19
 e1c7c70bceb205cf23b8a35179b628563871f949 Nov2019_SP3_release
 179977ed07cd8095f99a6a07968b8e9d1affa753 Nov2019_SP3_release
+6b76e1fa9b32421197acf26f63948c858e487d6a Jun2020_root
diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,39 +1,3 @@
 # ChangeLog file for devel
 # This file is updated with Maddlog
 
-* Tue Feb 18 2020 Thodoris Zois <thodoris.z...@monetdbsolutions.com>
-- Added mserver5 option (--dbtrace=<path>) in order to be able to
-  specify the output directory of the produced traces.
-
-* Thu Feb  6 2020 Panagiotis Koutsourakis <kutsu...@monetdbsolutions.com>
-- Add port and host as fields in the .monetdb file.
-
-* Thu Jan 30 2020 Sjoerd Mullender <sjo...@acm.org>
-- Removed support for bam and sam files.
-
-* Fri Dec  6 2019 Panagiotis Koutsourakis <kutsu...@monetdbsolutions.com>
-- Added mserver5 option (--set raw_strings=true|false) and monetdb
-  database property (raw_strings=yes|no) to control interpretation
-  of strings.
-
-* Fri Nov 29 2019 Panagiotis Koutsourakis <kutsu...@monetdbsolutions.com>
-- Added support for raw strings using the syntax r'' or R''. This means
-  that C-like escapes will remain uninterpreted within those strings. For
-  instance SELECT r'\"' returns a string of length two. The user needs
-  to escape single quotes by doubling them: SELECT r''''.
-
-* Fri Oct 25 2019 Joeri van Ruth <joeri.van.r...@monetdbsolutions.com>
-- Added SQL function sys.hot_snapshot() which can be used to write
-  a snapshot of the database to a tar file. For example,
-  sys.hot_snapshot('/tmp/snapshot.tar'). If compression support is
-  compiled in, snapshots can also be compressed ('/tmp/snapshot.tar.gz').
-  The tar file expands to a single directory with the same name as the
-  database that was snapshotted. This directory can be passed directly
-  as the --dbpath argument of mserver5 or it can be copied into an
-  existing dbfarm and started from monetdbd.
-
-* Sat Oct 12 2019 Martin Kersten <m...@cwi.nl>
-- The MAL profiler now assigns the SQL TRACE output to the client record
-  thereby avoiding the interaction with other queries, but loosing
-  insight of competing queries. The stethoscope should be used for that.
-
diff --git a/ChangeLog b/ChangeLog.Jun2020
copy from ChangeLog
copy to ChangeLog.Jun2020
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -1,5 +1,5 @@
 %global name MonetDB
-%global version 11.36.0
+%global version 11.38.0
 %{!?buildno: %global buildno %(date +%Y%m%d)}
 
 # Use bcond_with to add a --with option; i.e., "without" is default.
diff --git a/NT/monetdb_config.h.in b/NT/monetdb_config.h.in
--- a/NT/monetdb_config.h.in
+++ b/NT/monetdb_config.h.in
@@ -426,6 +426,13 @@
 /* Define to 1 if you have the `strcpy_s' function. */
 #define HAVE_STRCPY_S 1
 
+/* Define to 1 if you have the `strerror_r' function. */
+#define HAVE_STRERROR_R 1
+#define HAVE_DECL_STRERROR_R 1
+#ifndef strerror_r
+#define strerror_r(e, b, s)    strerror_s(b, s, e)
+#endif
+
 /* Define to 1 if you have the <strings.h> header file. */
 /* #undef HAVE_STRINGS_H */
 
@@ -624,7 +631,7 @@
 #define PACKAGE_URL "https://www.monetdb.org/";
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "11.36.0"
+#define PACKAGE_VERSION "11.38.0"
 
 /* Path separator */
 #define PATH_SEP ';'
diff --git a/NT/rules.msc b/NT/rules.msc
--- a/NT/rules.msc
+++ b/NT/rules.msc
@@ -6,7 +6,7 @@
 #
 # Copyright 1997 - July 2008 CWI, August 2008 - 2020 MonetDB B.V.
 
-VERSION=11.36.0
+VERSION=11.38.0
 #       ^^^^^^
 # Maintained via vertoo. Please don't modify by hand!
 # Contact monetdb-develop...@lists.sourceforge.net for details and/or 
assistance.
diff --git a/buildtools/ChangeLog b/buildtools/ChangeLog.Jun2020
copy from buildtools/ChangeLog
copy to buildtools/ChangeLog.Jun2020
diff --git a/clients/ChangeLog b/clients/ChangeLog
--- a/clients/ChangeLog
+++ b/clients/ChangeLog
@@ -1,11 +1,3 @@
 # ChangeLog file for clients
 # This file is updated with Maddlog
 
-* Fri Oct 25 2019 Pedro Ferreira <pedro.ferre...@monetdbsolutions.com>
-- Added 'sessionid' column to system function sys.queue(), so each query
-  gets tagged with the current session identifier
-
-* Thu Oct 24 2019 Martin Kersten <m...@cwi.nl>
-- Allow monetdb user to control session and query time out and selective
-  stopping a client sessions with a soft termination request.
-
diff --git a/clients/ChangeLog b/clients/ChangeLog.Jun2020
copy from clients/ChangeLog
copy to clients/ChangeLog.Jun2020
diff --git a/clients/R/Tests/dbi.R b/clients/R/Tests/dbi.R
--- a/clients/R/Tests/dbi.R
+++ b/clients/R/Tests/dbi.R
@@ -193,7 +193,7 @@ stopifnot(identical("Роман Mühleisen", 
dbGetQuery(conn,"SELECT a FROM monetdbtest")$a[[1]]))
 dbRollback(conn)
 
 # this returns a column with esoteric type MONTH_INTERVAL
-stopifnot(identical(1L, as.integer(dbGetQuery(con, "select cast('2015-03-02' 
as date) - cast('2015-03-01' as date)")[[1]][[1]])))
+stopifnot(identical(1L, as.integer(dbGetQuery(con, "select cast(1 as interval 
month) - cast(0 as interval month)")[[1]][[1]])))
 
 # reserved words in data frame column names
 stopifnot(dbIsValid(conn))
diff --git a/clients/Tests/MAL-signatures.stable.out 
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -719,28 +719,52 @@ stdout of test 'MAL-signatures` in direc
 [ "batalgebra",        "not_like",     "command 
batalgebra.not_like(s:bat[:str], pat:str, esc:str):bat[:bit] ",        
"BATPCREnotlike;",      ""      ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:any_1], 
b2:bat[:any_1]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:any_1], b2:bat[:any_1], 
nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:any_1], b2:bat[:any_1], 
s:bat[:oid]):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2 with candidates 
list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:any_1], b2:bat[:any_1], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",  "CMDbatNE;",    "Return B1 != B2 
with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:any_1], b2:bat[:any_1], 
r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:any_1], b2:bat[:any_1], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",  "CMDbatNE;",    "Return B1 != B2"   
    ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:any_1], b2:bat[:any_1], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2 
with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:any_1], b2:bat[:any_1], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:any_1], b2:bat[:any_1], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:any_1], b2:bat[:any_1], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",      
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], 
b2:bat[:dbl]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:dbl], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:dbl], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:dbl], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:dbl], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:dbl], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:dbl], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:dbl], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:dbl], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:dbl], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], 
b2:bat[:flt]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:flt], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:flt], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:flt], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:flt], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:flt], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:flt], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:flt], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:flt], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:flt], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], 
b2:bat[:int]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:int], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:int], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:int], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:int], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:int], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], 
b2:bat[:lng]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:lng], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:lng], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:lng], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:lng], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:lng], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], 
b2:bat[:sht]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:sht], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:sht], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:sht], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:sht], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:sht], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:sht], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:sht], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:sht], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:bte], b2:bat[:sht], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:date], 
b2:bat[:date]):bat[:bit] ",  "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:date], b2:bat[:date], 
nil_matches:bit):bat[:bit] ", "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:date], b2:bat[:date], 
s:bat[:oid]):bat[:bit] ",     "CMDbatNE;",    "Return B1 != B2 with candidates 
list"  ]
@@ -751,106 +775,206 @@ stdout of test 'MAL-signatures` in direc
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:daytime], b2:bat[:daytime], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], 
b2:bat[:bte]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:bte], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:bte], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:bte], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:bte], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:bte], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:bte], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:bte], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:bte], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:bte], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], 
b2:bat[:flt]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:flt], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:flt], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:flt], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:flt], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:flt], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:flt], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:flt], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:flt], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:flt], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], 
b2:bat[:int]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:int], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:int], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:int], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:int], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:int], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], 
b2:bat[:lng]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:lng], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:lng], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:lng], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:lng], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:lng], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], 
b2:bat[:sht]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:sht], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:sht], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:sht], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:sht], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:sht], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:sht], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:sht], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:sht], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:dbl], b2:bat[:sht], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], 
b2:bat[:bte]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:bte], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:bte], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:bte], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:bte], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:bte], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:bte], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:bte], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:bte], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:bte], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], 
b2:bat[:dbl]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:dbl], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:dbl], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:dbl], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:dbl], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:dbl], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:dbl], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:dbl], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:dbl], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:dbl], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], 
b2:bat[:int]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:int], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:int], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:int], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:int], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:int], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:int], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], 
b2:bat[:lng]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:lng], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:lng], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:lng], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:lng], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:lng], 
r:bat[:bit], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2"       ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid]):bat[:bit] ",        "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid], nil_matches:bit):bat[:bit] ",       "CMDbatNE;",    
"Return B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit]):bat[:bit] ",   "CMDbatNE;",    "Return 
B1 != B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:lng], 
s1:bat[:oid], s2:bat[:oid], r:bat[:bit], nil_matches:bit):bat[:bit] ",  
"CMDbatNE;",    "Return B1 != B2 with candidates list"  ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], 
b2:bat[:sht]):bat[:bit] ",    "CMDbatNE;",    "Return B1 != B2"       ]
 [ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:sht], 
nil_matches:bit):bat[:bit] ",   "CMDbatNE;",    "Return B1 != B2"       ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:sht], 
s:bat[:oid]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2 with 
candidates list"  ]
-[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:sht], 
s:bat[:oid], nil_matches:bit):bat[:bit] ",      "CMDbatNE;",    "Return B1 != 
B2 with candidates list"  ]
+[ "batcalc",   "!=",   "pattern batcalc.!=(b1:bat[:flt], b2:bat[:sht], 
r:bat[:bit]):bat[:bit] ",       "CMDbatNE;",    "Return B1 != B2"       ]
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to