1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Bison 3.7 - fix "conversion from 'ptrdiff_t' to 'ulong', possible loss of data"

This commit is contained in:
Vladislav Vaintroub
2021-09-11 13:08:13 +02:00
parent 879e21b68c
commit 3504f70f7f
2 changed files with 4 additions and 4 deletions

View File

@ -7226,10 +7226,10 @@ bool check_stack_overrun(THD *thd, long margin,
#define MY_YACC_INIT 1000 // Start with big alloc #define MY_YACC_INIT 1000 // Start with big alloc
#define MY_YACC_MAX 32000 // Because of 'short' #define MY_YACC_MAX 32000 // Because of 'short'
bool my_yyoverflow(short **yyss, YYSTYPE **yyvs, ulong *yystacksize) bool my_yyoverflow(short **yyss, YYSTYPE **yyvs, size_t *yystacksize)
{ {
Yacc_state *state= & current_thd->m_parser_state->m_yacc; Yacc_state *state= & current_thd->m_parser_state->m_yacc;
ulong old_info=0; size_t old_info=0;
DBUG_ASSERT(state); DBUG_ASSERT(state);
if ((uint) *yystacksize >= MY_YACC_MAX) if ((uint) *yystacksize >= MY_YACC_MAX)
return 1; return 1;

View File

@ -76,7 +76,7 @@ int yylex(void *yylval, void *yythd);
#define yyoverflow(A,B,C,D,E,F) \ #define yyoverflow(A,B,C,D,E,F) \
{ \ { \
ulong val= *(F); \ size_t val= *(F); \
if (my_yyoverflow((B), (D), &val)) \ if (my_yyoverflow((B), (D), &val)) \
{ \ { \
yyerror(thd, (char*) (A)); \ yyerror(thd, (char*) (A)); \
@ -1024,7 +1024,7 @@ Virtual_column_info *add_virtual_expression(THD *thd, Item *expr)
} }
%{ %{
bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize); bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize);
%} %}
%pure-parser /* We have threads */ %pure-parser /* We have threads */