From: Rémi Bernon <rbernon@codeweavers.com> --- libs/mesa/src/compiler/glsl/glcpp/glcpp-lex.l | 2 +- libs/mesa/src/compiler/glsl/glcpp/glcpp-parse.y | 2 ++ libs/mesa/src/compiler/glsl/glcpp/glcpp.h | 3 +++ libs/mesa/src/compiler/glsl/glsl_lexer.ll | 3 +++ libs/mesa/src/compiler/glsl/glsl_parser.yy | 2 ++ libs/mesa/src/compiler/glsl/glsl_parser_extras.h | 3 +++ libs/mesa/src/mesa/program/program_lexer.l | 1 + 7 files changed, 15 insertions(+), 1 deletion(-) diff --git a/libs/mesa/src/compiler/glsl/glcpp/glcpp-lex.l b/libs/mesa/src/compiler/glsl/glcpp/glcpp-lex.l index 0f697153665..c74e7693a08 100644 --- a/libs/mesa/src/compiler/glsl/glcpp/glcpp-lex.l +++ b/libs/mesa/src/compiler/glsl/glcpp/glcpp-lex.l @@ -27,7 +27,7 @@ #include <ctype.h> #include "glcpp.h" -#include "glcpp-parse.h" +#include "glcpp-parse.tab.h" /* Flex annoyingly generates some functions without making them * static. Let's declare them here. */ diff --git a/libs/mesa/src/compiler/glsl/glcpp/glcpp-parse.y b/libs/mesa/src/compiler/glsl/glcpp/glcpp-parse.y index e6758a6ab98..c308544b4ed 100644 --- a/libs/mesa/src/compiler/glsl/glcpp/glcpp-parse.y +++ b/libs/mesa/src/compiler/glsl/glcpp/glcpp-parse.y @@ -178,6 +178,8 @@ add_builtin_define(glcpp_parser_t *parser, const char *name, int value); %define api.pure %define parse.error verbose +%define api.prefix {glcpp_parser_} +%define api.location.type {GLCPP_PARSER_LTYPE} %locations %initial-action { diff --git a/libs/mesa/src/compiler/glsl/glcpp/glcpp.h b/libs/mesa/src/compiler/glsl/glcpp/glcpp.h index 7f55cd7897b..938fbc9cf0b 100644 --- a/libs/mesa/src/compiler/glsl/glcpp/glcpp.h +++ b/libs/mesa/src/compiler/glsl/glcpp/glcpp.h @@ -35,6 +35,9 @@ #include "util/string_buffer.h" +#define YYLTYPE GLCPP_PARSER_LTYPE +#define YYSTYPE GLCPP_PARSER_STYPE + struct gl_context; #define yyscan_t void* diff --git a/libs/mesa/src/compiler/glsl/glsl_lexer.ll b/libs/mesa/src/compiler/glsl/glsl_lexer.ll index 4bc34f98a7b..1fd308ed62d 100644 --- a/libs/mesa/src/compiler/glsl/glsl_lexer.ll +++ b/libs/mesa/src/compiler/glsl/glsl_lexer.ll @@ -1,3 +1,6 @@ +%top { +#include <cstdint> +} %{ /* * Copyright © 2008, 2009 Intel Corporation diff --git a/libs/mesa/src/compiler/glsl/glsl_parser.yy b/libs/mesa/src/compiler/glsl/glsl_parser.yy index edb34bd0f03..d2153ceb6bb 100644 --- a/libs/mesa/src/compiler/glsl/glsl_parser.yy +++ b/libs/mesa/src/compiler/glsl/glsl_parser.yy @@ -84,6 +84,8 @@ static bool match_layout_qualifier(const char *s1, const char *s2, %define api.pure %define parse.error verbose +%define api.prefix {_mesa_glsl_} +%define api.location.type {_MESA_GLSL_LTYPE} %locations %initial-action { diff --git a/libs/mesa/src/compiler/glsl/glsl_parser_extras.h b/libs/mesa/src/compiler/glsl/glsl_parser_extras.h index b57bd7b9e73..64d88709040 100644 --- a/libs/mesa/src/compiler/glsl/glsl_parser_extras.h +++ b/libs/mesa/src/compiler/glsl/glsl_parser_extras.h @@ -35,6 +35,9 @@ #include "mesa/main/config.h" #include "mesa/main/menums.h" /* for gl_api */ +#define YYLTYPE _MESA_GLSL_LTYPE +#define YYSTYPE _MESA_GLSL_STYPE + /* THIS is a macro defined somewhere deep in the Windows MSVC header files. * Undefine it here to avoid collision with the lexer's THIS token. */ diff --git a/libs/mesa/src/mesa/program/program_lexer.l b/libs/mesa/src/mesa/program/program_lexer.l index c0e4d80d8ea..25bc2492577 100644 --- a/libs/mesa/src/mesa/program/program_lexer.l +++ b/libs/mesa/src/mesa/program/program_lexer.l @@ -169,6 +169,7 @@ sat (_SAT)? %option prefix="_mesa_program_lexer_" %option bison-bridge bison-locations reentrant noyywrap +%option never-interactive %% "!!ARBvp1.0" { return ARBvp_10; } -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10531