Changeset: c2c99e9ce09f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/c2c99e9ce09f
Branch: default
Log Message:

Merge with Dec2023 branch.


diffs (81 lines):

diff --git a/sql/backends/monet5/sql_gencode.c 
b/sql/backends/monet5/sql_gencode.c
--- a/sql/backends/monet5/sql_gencode.c
+++ b/sql/backends/monet5/sql_gencode.c
@@ -104,17 +104,15 @@ table_func_create_result(MalBlkPtr mb, I
        return q;
 }
 
-void
-relational_func_create_result_part1(mvc *sql, sql_rel **f, int *nargs)
+sql_rel *
+relational_func_create_result_part1(mvc *sql, sql_rel *r, int *nargs)
 {
-       sql_rel *r = *f;
-
        if (is_topn(r->op) || is_sample(r->op))
                r = r->l;
        if (!is_project(r->op))
                r = rel_project(sql->sa, r, rel_projections(sql, r, NULL, 1, 
1));
        *nargs = list_length(r->exps);
-       *f = r;
+       return r;
 }
 
 InstrPtr
@@ -288,7 +286,7 @@ static int
        backend_reset(be);
 
        int nargs;
-       relational_func_create_result_part1(m, &r, &nargs);
+       sql_rel *nr = relational_func_create_result_part1(m, r, &nargs);
        nargs += (call && call->type == st_list) ? list_length(call->op4.lval) 
: rel_ops ? list_length(rel_ops) : 0;
 
        c->curprg = newFunctionArgs(putName(mod), putName(name), 
FUNCTIONsymbol, nargs);
@@ -296,11 +294,10 @@ static int
                sql_error(m, 10, SQLSTATE(HY013) MAL_MALLOC_FAIL);
                goto bailout;
        } else if (eb_savepoint(&m->sa->eb)) {
-               r = NULL;
                sql_error(m, 10, "%s", m->sa->eb.msg);
                freeSymbol(c->curprg);
                goto bailout;
-       } else if (_create_relational_function_body(m, r, call, rel_ops, 
inline_func) < 0) {
+       } else if (_create_relational_function_body(m, nr, call, rel_ops, 
inline_func) < 0) {
                goto bailout;
        }
        *be = bebackup;
@@ -950,8 +947,7 @@ static int
 
        /* create stub */
        int nargs;
-       sql_rel *rel2 = rel;
-       relational_func_create_result_part1(m, &rel2, &nargs);
+       sql_rel *rel2 = relational_func_create_result_part1(m, rel, &nargs);
        if (call && call->type == st_list)
                nargs += list_length(call->op4.lval);
        c->curprg = newFunctionArgs(putName(mod), putName(name), 
FUNCTIONsymbol, nargs);
diff --git a/sql/backends/monet5/sql_gencode.h 
b/sql/backends/monet5/sql_gencode.h
--- a/sql/backends/monet5/sql_gencode.h
+++ b/sql/backends/monet5/sql_gencode.h
@@ -36,7 +36,7 @@ extern void _exp_print(mvc *sql, sql_exp
 
 extern int constantAtom(backend *be, MalBlkPtr mb, atom *a);
 extern InstrPtr table_func_create_result(MalBlkPtr mb, InstrPtr q, sql_func 
*f, list *restypes);
-extern void relational_func_create_result_part1(mvc *sql, sql_rel **f, int 
*nargs);
+extern sql_rel *relational_func_create_result_part1(mvc *sql, sql_rel *r, int 
*nargs);
 extern InstrPtr relational_func_create_result_part2(MalBlkPtr mb, InstrPtr q, 
sql_rel *r);
 
 #endif /* _SQL2MAL_H */
diff --git a/sql/backends/monet5/sql_statement.c 
b/sql/backends/monet5/sql_statement.c
--- a/sql/backends/monet5/sql_statement.c
+++ b/sql/backends/monet5/sql_statement.c
@@ -4091,8 +4091,7 @@ stmt_func(backend *be, stmt *ops, const 
                goto bailout;
 
        int nargs;
-       sql_rel *r = rel;
-       relational_func_create_result_part1(be->mvc, &r, &nargs);
+       sql_rel *r = relational_func_create_result_part1(be->mvc, rel, &nargs);
        if (ops)
                nargs += list_length(ops->op4.lval);
        if (f_union)
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to