[Mesa-dev] [PATCH 2/6] glcpp: Fix two (or more) successive applications of token pasting

Carl Worth cworth at cworth.org
Thu Sep 29 23:00:26 PDT 2011

There was already a loop here to look for multiple token pastes, but
it was mistakenly incrementing the iterator counter after performing
one paste.

Instead, leave the loop iterator in place to coalesce as many tokens
as necessary into one.

This fixes the recently add 096-paste-twice test as well as the
following piglit test:

 src/glsl/glcpp/glcpp-parse.y |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/src/glsl/glcpp/glcpp-parse.y b/src/glsl/glcpp/glcpp-parse.y
index 9408304..d547ecf 100644
--- a/src/glsl/glcpp/glcpp-parse.y
+++ b/src/glsl/glcpp/glcpp-parse.y
@@ -1418,8 +1418,6 @@ _glcpp_parser_expand_function (glcpp_parser_t *parser,
 		node->next = next_non_space->next;
 		if (next_non_space == substituted->tail)
 			substituted->tail = node;
-		node = node->next;
 	substituted->non_space_tail = substituted->tail;

More information about the mesa-dev mailing list