summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorserg@serg.mylan <>2004-03-16 16:35:47 +0100
committerserg@serg.mylan <>2004-03-16 16:35:47 +0100
commitceec63f18aa0c2e4ee9c5f667cca3f1ffdeda15d (patch)
treea14f2d0da18b76c70fcf4ce8e3601d0014a43def
parente970ff9e87ab1b9eb6e66f9deff9522ac6af3fdf (diff)
downloadmariadb-git-ceec63f18aa0c2e4ee9c5f667cca3f1ffdeda15d.tar.gz
EOVERFLOW moved to my_base.h - it is used not only in strtod.c
error message corrected
-rw-r--r--include/my_base.h5
-rw-r--r--mysql-test/r/variables.result10
-rw-r--r--mysql-test/t/variables.test10
-rw-r--r--sql/item_func.cc6
-rw-r--r--sql/sql_yacc.yy10
-rw-r--r--strings/strtod.c4
6 files changed, 23 insertions, 22 deletions
diff --git a/include/my_base.h b/include/my_base.h
index 89b46de520f..e2b6d010d69 100644
--- a/include/my_base.h
+++ b/include/my_base.h
@@ -28,6 +28,11 @@
#include <my_sys.h>
#include <m_string.h>
#include <errno.h>
+
+#ifndef EOVERFLOW
+#define EOVERFLOW 84
+#endif
+
#ifdef MSDOS
#include <share.h> /* Neaded for sopen() */
#endif
diff --git a/mysql-test/r/variables.result b/mysql-test/r/variables.result
index c56ccc3641a..0e1babf258b 100644
--- a/mysql-test/r/variables.result
+++ b/mysql-test/r/variables.result
@@ -407,12 +407,12 @@ select @a, @b;
@a @b
2 1
set @@global.global.key_buffer_size= 1;
-ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use
+ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'key_buffer_size= 1' at line 1
set GLOBAL global.key_buffer_size= 1;
-ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use
+ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'key_buffer_size= 1' at line 1
SELECT @@global.global.key_buffer_size;
-ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use
+ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'key_buffer_size' at line 1
SELECT @@global.session.key_buffer_size;
-ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use
+ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'key_buffer_size' at line 1
SELECT @@global.local.key_buffer_size;
-ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use
+ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'key_buffer_size' at line 1
diff --git a/mysql-test/t/variables.test b/mysql-test/t/variables.test
index 78fab3afe42..1ad171f94f6 100644
--- a/mysql-test/t/variables.test
+++ b/mysql-test/t/variables.test
@@ -289,13 +289,13 @@ select @a, @b;
#
# Bug#2586:Disallow global/session/local as structured var. instance names
#
---error 1149
+--error 1064
set @@global.global.key_buffer_size= 1;
---error 1149
+--error 1064
set GLOBAL global.key_buffer_size= 1;
---error 1149
+--error 1064
SELECT @@global.global.key_buffer_size;
---error 1149
+--error 1064
SELECT @@global.session.key_buffer_size;
---error 1149
+--error 1064
SELECT @@global.local.key_buffer_size;
diff --git a/sql/item_func.cc b/sql/item_func.cc
index 88c2bf824c6..ae44bc552d3 100644
--- a/sql/item_func.cc
+++ b/sql/item_func.cc
@@ -2967,12 +2967,6 @@ Item *get_system_var(THD *thd, enum_var_type var_type, LEX_STRING name,
(uint) strlen(server_version),
system_charset_info);
- if (name.str && component.str && check_reserved_words(&name))
- {
- net_printf(thd, ER_SYNTAX_ERROR);
- return 0;
- }
-
Item *item;
sys_var *var;
char buff[MAX_SYS_VAR_LENGTH*2+4+8], *pos;
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index 0f9147b7834..a625040d4e2 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -2508,7 +2508,7 @@ simple_expr:
$$= new Item_func_set_collation($1,
new Item_string($3.str,
$3.length,
- YYTHD->charset()));
+ YYTHD->charset()));
}
| literal
| param_marker
@@ -2524,6 +2524,12 @@ simple_expr:
}
| '@' '@' opt_var_ident_type ident_or_text opt_component
{
+
+ if ($4.str && $5.str && check_reserved_words(&$4))
+ {
+ yyerror(ER(ER_SYNTAX_ERROR));
+ YYABORT;
+ }
if (!($$= get_system_var(YYTHD, (enum_var_type) $3, $4, $5)))
YYABORT;
}
@@ -5036,7 +5042,7 @@ internal_variable_name:
{
if (check_reserved_words(&$1))
{
- net_printf(YYTHD, ER_SYNTAX_ERROR);
+ yyerror(ER(ER_SYNTAX_ERROR));
YYABORT;
}
sys_var *tmp=find_sys_var($3.str, $3.length);
diff --git a/strings/strtod.c b/strings/strtod.c
index aa0f7aa4336..bc8105b8040 100644
--- a/strings/strtod.c
+++ b/strings/strtod.c
@@ -29,10 +29,6 @@
#include "my_base.h" /* Includes errno.h */
#include "m_ctype.h"
-#ifndef EOVERFLOW
-#define EOVERFLOW 84
-#endif
-
static double scaler10[] = {
1.0, 1e10, 1e20, 1e30, 1e40, 1e50, 1e60, 1e70, 1e80, 1e90
};