Re: [PATCH] perf tools: Fix bison warnings for pure parser

Jiri Olsa
2019-06-28T08:05:18Z

On Thu, Jun 27, 2019 at 03:20:21PM -0700, Andi Kleen wrote:
> From: Andi Kleen <ak@linux.intel.com>
>
> bison 3.4.1 complains during a perf build:
>
> util/parse-events.y:1.1-12: warning: deprecated directive, use ‘%define api.pure’ [-Wdeprecated]
> 1 | %pure-parser
> | ^~~~~~~~~~~~
> CC /home/andi/lsrc/obj-perf/ui/browsers/map.o
> util/parse-events.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother]
>
> util/expr.y:13.1-12: warning: deprecated directive, use ‘%define api.pure’ [-Wdeprecated]
> 13 | %pure-parser
> | ^~~~~~~~~~~~
> util/expr.y: warning: fix-its can be applied. Rerun with option '--update'. [-Wother]
>
> Change the declarations to %define api.pure
>
> Signed-off-by: Andi Kleen <ak@linux.intel.com>

looks good, let's hope it'll pass Arnaldo's build test

jirka

> ---
> tools/perf/util/expr.y | 2 +-
> tools/perf/util/parse-events.y | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/perf/util/expr.y b/tools/perf/util/expr.y
> index 432b8560cf51..803c0929c205 100644
> --- a/tools/perf/util/expr.y
> +++ b/tools/perf/util/expr.y
> @@ -10,7 +10,7 @@
> #define MAXIDLEN 256
> %}
>
> -%pure-parser
> +%define api.pure
> %parse-param { double *final_val }
> %parse-param { struct parse_ctx *ctx }
> %parse-param { const char **pp }
> diff --git a/tools/perf/util/parse-events.y b/tools/perf/util/parse-events.y
> index 6ad8d4914969..4eb10c27c30f 100644
> --- a/tools/perf/util/parse-events.y
> +++ b/tools/perf/util/parse-events.y
> @@ -1,4 +1,4 @@
> -%pure-parser
> +%define api.pure
> %parse-param {void *_parse_state}
> %parse-param {void *scanner}
> %lex-param {void* scanner}
> --
> 2.21.0
>