summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mariadb.com>2023-01-26 10:57:01 +0400
committerAlexander Barkov <bar@mariadb.com>2023-01-26 10:57:01 +0400
commitb1043ea0ed01a7caa398d4a066b415d6eeebb08e (patch)
tree1dd567d79aeb7d0fb3660e0cdf1b0af58cc99af8
parent4652260d656ea871fe1ff31176b6d85eeffde932 (diff)
downloadmariadb-git-b1043ea0ed01a7caa398d4a066b415d6eeebb08e.tar.gz
Revert "MDEV-30151 parse error 1=2 not between/in"
This reverts commit eba099184e1f6704894694ea41f97f216eae5f21. A different patch with less shift-reduce conflicts is coming.
-rw-r--r--mysql-test/main/parser.result11
-rw-r--r--mysql-test/main/parser.test8
-rw-r--r--sql/sql_yacc.yy6
-rw-r--r--sql/sql_yacc_ora.yy6
4 files changed, 6 insertions, 25 deletions
diff --git a/mysql-test/main/parser.result b/mysql-test/main/parser.result
index f44478727ae..0bb4e82c8b8 100644
--- a/mysql-test/main/parser.result
+++ b/mysql-test/main/parser.result
@@ -1866,15 +1866,4 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
EXECUTE IMMEDIATE 'CREATE PROCEDURE p() UPDATE t SET c=\'\'"abc';
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '"abc' at line 1
SET @@sql_mode=@save_sql_mode;
-#
-# MDEV-30151 parse error 1=2 not between/in
-#
-select 1=2 not in (3,4);
-1=2 not in (3,4)
-1
-select 1=2 not between 3 and 4;
-1=2 not between 3 and 4
-1
-#
# End of 10.3 tests
-#
diff --git a/mysql-test/main/parser.test b/mysql-test/main/parser.test
index cfe4f9d6f53..9df18c50ee3 100644
--- a/mysql-test/main/parser.test
+++ b/mysql-test/main/parser.test
@@ -1673,12 +1673,4 @@ EXECUTE IMMEDIATE 'CREATE PROCEDURE p() UPDATE t SET c=\'\'"abc';
SET @@sql_mode=@save_sql_mode;
---echo #
---echo # MDEV-30151 parse error 1=2 not between/in
---echo #
-select 1=2 not in (3,4);
-select 1=2 not between 3 and 4;
-
---echo #
--echo # End of 10.3 tests
---echo #
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index 3025d93de0f..7766049c104 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -899,7 +899,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize);
/*
We should not introduce any further shift/reduce conflicts.
*/
-%expect 96
+%expect 85
/*
Comments for TOKENS.
@@ -1687,7 +1687,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize);
%left PREC_BELOW_NOT
-%nonassoc LOW_PRIORITY_NOT
+%nonassoc NOT_SYM
%left '=' EQUAL_SYM GE '>' LE '<' NE
%nonassoc IS
%right BETWEEN_SYM
@@ -9840,7 +9840,7 @@ expr:
MYSQL_YYABORT;
}
}
- | NOT_SYM expr %prec LOW_PRIORITY_NOT
+ | NOT_SYM expr %prec NOT_SYM
{
$$= negate_expression(thd, $2);
if (unlikely($$ == NULL))
diff --git a/sql/sql_yacc_ora.yy b/sql/sql_yacc_ora.yy
index df90ba6c634..a5ee1892e5e 100644
--- a/sql/sql_yacc_ora.yy
+++ b/sql/sql_yacc_ora.yy
@@ -293,7 +293,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize);
/*
We should not introduce any further shift/reduce conflicts.
*/
-%expect 98
+%expect 87
/*
Comments for TOKENS.
@@ -1081,7 +1081,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize);
%left PREC_BELOW_NOT
-%nonassoc LOW_PRIORITY_NOT
+%nonassoc NOT_SYM
%left '=' EQUAL_SYM GE '>' LE '<' NE
%nonassoc IS
%right BETWEEN_SYM
@@ -9797,7 +9797,7 @@ expr:
MYSQL_YYABORT;
}
}
- | NOT_SYM expr %prec LOW_PRIORITY_NOT
+ | NOT_SYM expr %prec NOT_SYM
{
$$= negate_expression(thd, $2);
if (unlikely($$ == NULL))