s3:mdssvc: fix flex compilation error
authorRalph Boehme <slow@samba.org>
Mon, 27 May 2019 10:27:57 +0000 (12:27 +0200)
committerRalph Boehme <slow@samba.org>
Tue, 28 May 2019 11:49:06 +0000 (11:49 +0000)
[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".

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

source3/rpc_server/mdssvc/sparql_lexer.l

index e60a3fb5de37477a80c777761768262bae1fe640..b6383504380ce7541d26e8727d6bbbd5702a1e37 100644 (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);
+}