diff options
author | unknown <antony@ltantony.mysql.com> | 2005-05-09 14:50:56 +0100 |
---|---|---|
committer | unknown <antony@ltantony.mysql.com> | 2005-05-09 14:50:56 +0100 |
commit | 3a842fdfc0b449a1732563692ee8801b2ef3a0d9 (patch) | |
tree | 0419e03dad7c40aed1234b3b2e7128e851b6655c /sql/sql_yacc.yy | |
parent | e514a1eea2b658602fb6784ee6a7ab8c13235a70 (diff) | |
parent | 19b8643830e557218143b2bd95abe9915ef07571 (diff) | |
download | mariadb-git-3a842fdfc0b449a1732563692ee8801b2ef3a0d9.tar.gz |
Merge acurtis@bk-internal.mysql.com:/home/bk/mysql-4.1
into ltantony.mysql.com:/usr/home/antony/work2/p3-bug8733
sql/sql_yacc.yy:
Auto merged
Diffstat (limited to 'sql/sql_yacc.yy')
-rw-r--r-- | sql/sql_yacc.yy | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index 73845f7d645..abe7a716a69 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -2481,7 +2481,15 @@ select_option: YYABORT; Lex->lock_option= TL_READ_HIGH_PRIORITY; } - | DISTINCT { Select->options|= SELECT_DISTINCT; } + | DISTINCT + { + if (Select->options & SELECT_ALL) + { + yyerror(ER(ER_SYNTAX_ERROR)); + YYABORT; + } + Select->options|= SELECT_DISTINCT; + } | SQL_SMALL_RESULT { Select->options|= SELECT_SMALL_RESULT; } | SQL_BIG_RESULT { Select->options|= SELECT_BIG_RESULT; } | SQL_BUFFER_RESULT @@ -2501,7 +2509,15 @@ select_option: { Lex->select_lex.options|= OPTION_TO_QUERY_CACHE; } - | ALL {} + | ALL + { + if (Select->options & SELECT_DISTINCT) + { + yyerror(ER(ER_SYNTAX_ERROR)); + YYABORT; + } + Select->options|= SELECT_ALL; + } ; select_lock_type: |