Changeset: 646ae9b613fa for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=646ae9b613fa
Modified Files:
        sql/backends/monet5/rel_bin.c
Branch: Jun2020
Log Message:

make sure we handle e_cmp's as =(.,) on nested expressions


diffs (21 lines):

diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c
--- a/sql/backends/monet5/rel_bin.c
+++ b/sql/backends/monet5/rel_bin.c
@@ -1066,7 +1066,7 @@ exp_bin(backend *be, sql_exp *e, stmt *l
                        }
                } else {
                        if (r2) {
-                               if (!reduce || (l->nrcols == 0 && r->nrcols == 
0 && r2->nrcols == 0)) {
+                               if (depth || !reduce || (l->nrcols == 0 && 
r->nrcols == 0 && r2->nrcols == 0)) {
                                        sql_subtype *bt = 
sql_bind_localtype("bit");
                                        sql_subfunc *lf = 
sql_bind_func(sql->sa, sql->session->schema,
                                                        
compare_func(range2lcompare(e->flag), 0),
@@ -1109,7 +1109,7 @@ exp_bin(backend *be, sql_exp *e, stmt *l
                                }
                        } else {
                                /* value compare or select */
-                               if (!reduce || (l->nrcols == 0 && r->nrcols == 
0 && (e->flag == mark_in || e->flag == mark_notin))) {
+                               if (depth || !reduce || (l->nrcols == 0 && 
r->nrcols == 0 && (e->flag == mark_in || e->flag == mark_notin))) {
                                        sql_subfunc *f = sql_bind_func(sql->sa, 
sql->session->schema, "=", tail_type(l), tail_type(l), F_FUNC);
                                        assert(f);
                                        s = stmt_binop(be, l, r, f);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to