Changeset: fad4a317b5ee for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=fad4a317b5ee Modified Files: sql/server/rel_exp.h sql/server/rel_psm.c sql/server/rel_select.c Branch: Jul2015 Log Message:
fix for bug 3968 diffs (52 lines): diff --git a/sql/server/rel_exp.h b/sql/server/rel_exp.h --- a/sql/server/rel_exp.h +++ b/sql/server/rel_exp.h @@ -11,6 +11,8 @@ #include "sql_mvc.h" +#define ERR_AMBIGUOUS 050000 + #define new_exp_list(sa) sa_list(sa) #define exp2list(sa,e) append(sa_list(sa),e) diff --git a/sql/server/rel_psm.c b/sql/server/rel_psm.c --- a/sql/server/rel_psm.c +++ b/sql/server/rel_psm.c @@ -601,6 +601,14 @@ sequential_block (mvc *sql, sql_subtype return l; } +static int +arg_cmp(void *A, void *N) +{ + sql_arg *a = A; + char *name = N; + return strcmp(a->name, name); +} + static list * result_type(mvc *sql, symbol *res) { @@ -617,6 +625,9 @@ result_type(mvc *sql, symbol *res) for(;n; n = n->next->next) { sql_subtype *ct = &n->next->data.typeval; + if (list_find(types, n->data.sval, &arg_cmp) != NULL) + return sql_error(sql, ERR_AMBIGUOUS, "CREATE FUNC: identifier '%s' ambiguous", n->data.sval); + a = sql_create_arg(sql->sa, n->data.sval, ct, ARG_OUT); list_append(types, a); } diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c --- a/sql/server/rel_select.c +++ b/sql/server/rel_select.c @@ -23,8 +23,6 @@ #include "mal.h" /* for have_hge */ #endif -#define ERR_AMBIGUOUS 050000 - sql_rel * rel_dup(sql_rel *r) { _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list