diff options
Diffstat (limited to 'conf')
-rw-r--r-- | conf/cf-lex.l | 2 | ||||
-rw-r--r-- | conf/conf.c | 1 | ||||
-rw-r--r-- | conf/confbase.Y | 2 |
3 files changed, 4 insertions, 1 deletions
diff --git a/conf/cf-lex.l b/conf/cf-lex.l index dd99b497..9eb4f116 100644 --- a/conf/cf-lex.l +++ b/conf/cf-lex.l @@ -30,6 +30,7 @@ #include <errno.h> #include <stdlib.h> #include <stdarg.h> +#include <stdint.h> #include <unistd.h> #include <libgen.h> #include <glob.h> @@ -233,6 +234,7 @@ else: { <CCOMM>. \!\= return NEQ; +\!\~ return NMA; \<\= return LEQ; \>\= return GEQ; \&\& return AND; diff --git a/conf/conf.c b/conf/conf.c index 8d4d28e3..175e223b 100644 --- a/conf/conf.c +++ b/conf/conf.c @@ -512,6 +512,7 @@ cf_error(const char *msg, ...) va_start(args, msg); if (bvsnprintf(buf, sizeof(buf), msg, args) < 0) strcpy(buf, "<bug: error message too long>"); + va_end(args); new_config->err_msg = cfg_strdup(buf); new_config->err_lino = ifs->lino; new_config->err_file_name = ifs->file_name; diff --git a/conf/confbase.Y b/conf/confbase.Y index e64d7593..22edbdfd 100644 --- a/conf/confbase.Y +++ b/conf/confbase.Y @@ -87,7 +87,7 @@ CF_DECLS %nonassoc PREFIX_DUMMY %left AND OR -%nonassoc '=' '<' '>' '~' GEQ LEQ NEQ PO PC +%nonassoc '=' '<' '>' '~' GEQ LEQ NEQ NMA PO PC %left '+' '-' %left '*' '/' '%' %left '!' |