1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-12 20:58:37 +03:00

s3:mdssvc: fix flex compilation error

[4440/4495] Compiling bin/default/source3/rpc_server/mdssvc/sparql_lexer.lex.c
../../source3/rpc_server/mdssvc/sparql_lexer.l:26: error: "yyalloc" redefined [-Werror]
26 | #define yyalloc SMB_MALLOC

Looks like the dirty redefine trick doesn't work anymore with newer flex
versions. According to the flex manual the right thing to do is to provide own
functions for yyalloc and yyrealloc when passing the options "noyyalloc
noyyrealloc".

BUG: https://bugzilla.samba.org/show_bug.cgi?id=13987

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>

Autobuild-User(master): Ralph Böhme <slow@samba.org>
Autobuild-Date(master): Tue May 28 11:49:06 UTC 2019 on sn-devel-184

(cherry picked from commit 9053391f86a529e0a7dbcd23fa3a555d85c2207c)
This commit is contained in:
Ralph Boehme 2019-05-27 12:27:57 +02:00 committed by Karolin Seeger
parent 7c80167e2a
commit d106f5eb97

View File

@ -23,8 +23,6 @@
#include "rpc_server/mdssvc/sparql_parser.tab.h"
#define YY_NO_INPUT
#define yyalloc SMB_MALLOC
#define yyrealloc SMB_REALLOC
%}
%option nounput noyyalloc noyyrealloc prefix="mdsyy"
@ -57,3 +55,13 @@ true {mdsyylval.bval = true; return BOOL;}
{UANY}+ {mdsyylval.sval = talloc_strdup(talloc_tos(), mdsyytext); return WORD;}
[ \t\n] /* ignore */
%%
void *yyalloc(yy_size_t bytes)
{
return SMB_MALLOC(bytes);
}
void *yyrealloc(void *ptr, yy_size_t bytes)
{
return SMB_REALLOC(ptr, bytes);
}