X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=secnet.git;a=blobdiff_plain;f=conffile.y;h=7837abe651365c12e460f4492db4f39da5f825d6;hp=b6b246c91fbb2dfa09adde21cd3723dcfb26d772;hb=076bb54e68477f883033bee696c9c5f801ece2f2;hpb=2fe58dfd10216a37f1ece081f926971882de112e diff --git a/conffile.y b/conffile.y index b6b246c..7837abe 100644 --- a/conffile.y +++ b/conffile.y @@ -8,8 +8,15 @@ #include #include #include +/* Bison stupidly redeclares malloc/free unless they are #defined + * (or a bunch of madder conditions) */ +#ifndef malloc +# define malloc malloc +# define free free +#endif #include "secnet.h" #include "conffile_internal.h" +#include "conffile.yy.h" #include "util.h" #define YYERROR_VERBOSE @@ -17,13 +24,13 @@ static struct p_node *node(uint32_t type, struct p_node *l, struct p_node *r); static struct p_node *result; -static void yyerror(char *s); +static void yyerror(const char *s); %} %% -input: assignments { result = $1; } +input: assignments { result = $1; $$=result; } ; assignments: assignments assignment { $$=node(T_ALIST, $2, $1); } @@ -73,7 +80,7 @@ item: TOK_STRING %% -static void yyerror(char *s) +static void yyerror(const char *s) { Message(M_FATAL,"config file %s line %d: %s\n",config_file, config_lineno,s);