diff options
author | Sergei Golubchik <serg@mariadb.org> | 2020-10-16 15:07:34 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2020-10-23 15:53:41 +0200 |
commit | 7f974e5ad3317168f174465dc61c0feb27c04162 (patch) | |
tree | 165c16a835d3059d3c38f6e90e9da9535b8ac553 | |
parent | 8c83e6eadf496267762313d577653d56bf98d945 (diff) | |
download | mariadb-git-7f974e5ad3317168f174465dc61c0feb27c04162.tar.gz |
cleanup: remove redundant BANG_PRECEDENCE
prefix unary operators don't need to have different precedence,
the syntax unambiguously specifies in what order they apply
-rw-r--r-- | mysql-test/r/precedence.result | 2 | ||||
-rw-r--r-- | sql/item.h | 3 | ||||
-rw-r--r-- | sql/item_cmpfunc.h | 2 |
3 files changed, 3 insertions, 4 deletions
diff --git a/mysql-test/r/precedence.result b/mysql-test/r/precedence.result index be07af1c550..2a797467758 100644 --- a/mysql-test/r/precedence.result +++ b/mysql-test/r/precedence.result @@ -8068,7 +8068,7 @@ select !cast(1 as char charset binary) AS `! BINARY 1`,cast(!1 as char charset b create or replace view v1 as select ! ~ 1, ~ ! 1; Select view_definition from information_schema.views where table_schema='test' and table_name='v1'; view_definition -select !(~1) AS `! ~ 1`,~!1 AS `~ ! 1` +select !~1 AS `! ~ 1`,~!1 AS `~ ! 1` create or replace view v1 as select - BINARY 1, BINARY - 1; Select view_definition from information_schema.views where table_schema='test' and table_name='v1'; view_definition diff --git a/sql/item.h b/sql/item.h index 604f656aa7a..b789f703c2e 100644 --- a/sql/item.h +++ b/sql/item.h @@ -92,8 +92,7 @@ enum precedence { MUL_PRECEDENCE, // *, /, DIV, %, MOD BITXOR_PRECEDENCE, // ^ PIPES_PRECEDENCE, // || (if PIPES_AS_CONCAT) - NEG_PRECEDENCE, // unary -, ~ - BANG_PRECEDENCE, // !, NOT (if HIGH_NOT_PRECEDENCE) + NEG_PRECEDENCE, // unary -, ~, !, NOT (if HIGH_NOT_PRECEDENCE) COLLATE_PRECEDENCE, // BINARY, COLLATE DEFAULT_PRECEDENCE, HIGHEST_PRECEDENCE diff --git a/sql/item_cmpfunc.h b/sql/item_cmpfunc.h index cad179dff74..579b1bde1ce 100644 --- a/sql/item_cmpfunc.h +++ b/sql/item_cmpfunc.h @@ -574,7 +574,7 @@ public: longlong val_int(); enum Functype functype() const { return NOT_FUNC; } const char *func_name() const { return "not"; } - enum precedence precedence() const { return BANG_PRECEDENCE; } + enum precedence precedence() const { return NEG_PRECEDENCE; } Item *neg_transformer(THD *thd); bool fix_fields(THD *, Item **); virtual void print(String *str, enum_query_type query_type); |