Changeset: f1cbc9fe2747 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f1cbc9fe2747
Modified Files:
        sql/server/rel_select.c
Branch: default
Log Message:

Removed duplicated code. rel_value_exp2 calls rel_logical_value_exp for missing 
tokens. At the same time, SQL_COLUMN, SQL_IDENT and SQL_ATOM don't depend on 
the 'exp_kind'


diffs (55 lines):

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
@@ -2339,7 +2339,6 @@ rel_logical_value_exp(sql_query *query, 
                return rel_unop_(sql, rel ? *rel : NULL, le, NULL, "not", 
card_value);
        }
        case SQL_ATOM: {
-               /* TRUE or FALSE */
                AtomNode *an = (AtomNode *) sc;
 
                if (!an || !an->a) {
@@ -5043,9 +5042,6 @@ rel_value_exp2(sql_query *query, sql_rel
                return rel_aggr(query, rel, se, f);
        case SQL_WINDOW:
                return rel_rankop(query, rel, se, f);
-       case SQL_IDENT:
-       case SQL_COLUMN:
-               return rel_column_ref(query, rel, se, f );
        case SQL_NAME:
                return rel_var_ref(sql, se->data.sval, 1);
        case SQL_VALUES:
@@ -5092,7 +5088,7 @@ rel_value_exp2(sql_query *query, sql_rel
                        return lastexp(*rel);
                return NULL;
        }
-       case SQL_PARAMETER:{
+       case SQL_PARAMETER: {
                if (sql->emode != m_prepare)
                        return sql_error(sql, 02, SQLSTATE(42000) "SELECT: 
parameters ('?') not allowed in normal queries, use PREPARE");
                assert(se->type == type_int);
@@ -5100,15 +5096,6 @@ rel_value_exp2(sql_query *query, sql_rel
        }
        case SQL_NULL:
                return exp_null(sql->sa, sql_bind_localtype("void"));
-       case SQL_ATOM:{
-               AtomNode *an = (AtomNode *) se;
-
-               if (!an || !an->a) {
-                       return exp_null(sql->sa, sql_bind_localtype("void"));
-               } else {
-                       return exp_atom(sql->sa, atom_dup(sql->sa, an->a));
-               }
-       }
        case SQL_NEXT:
                return rel_next_value_for(sql, se);
        case SQL_CAST:
@@ -5119,8 +5106,6 @@ rel_value_exp2(sql_query *query, sql_rel
                return rel_case_exp(query, rel, se, f);
        case SQL_RANK:
                return sql_error(sql, 02, SQLSTATE(42000) "SELECT: window 
function %s requires an OVER clause", qname_fname(se->data.lval->h->data.lval));
-       case SQL_DEFAULT:
-               return sql_error(sql, 02, SQLSTATE(42000) "DEFAULT keyword not 
allowed outside insert and update statements");
        case SQL_XMLELEMENT:
        case SQL_XMLFOREST:
        case SQL_XMLCOMMENT:
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to