From 28a3731e3f4688f98a909cddee261eceb47e3523 Mon Sep 17 00:00:00 2001 From: Timothy Arceri Date: Wed, 29 Aug 2018 11:36:51 +1000 Subject: [PATCH] glsl: skip stringification in preprocessor if in unreachable branch This fixes compilation of some "No Mans Sky" shaders where the stringification happens in branches intended for DX12. Reviewed-by: Ian Romanick --- src/compiler/glsl/glcpp/glcpp-lex.l | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/compiler/glsl/glcpp/glcpp-lex.l b/src/compiler/glsl/glcpp/glcpp-lex.l index 9cfcc120222..fe5845acd4e 100644 --- a/src/compiler/glsl/glcpp/glcpp-lex.l +++ b/src/compiler/glsl/glcpp/glcpp-lex.l @@ -420,8 +420,10 @@ HEXADECIMAL_INTEGER 0[xX][0-9a-fA-F]+[uU]? /* This will catch any non-directive garbage after a HASH */ {NONSPACE} { - BEGIN INITIAL; - RETURN_TOKEN (GARBAGE); + if (!parser->skipping) { + BEGIN INITIAL; + RETURN_TOKEN (GARBAGE); + } } /* An identifier immediately followed by '(' */ -- 2.30.2