summaryrefslogtreecommitdiffstats
path: root/src/glsl/glcpp
diff options
context:
space:
mode:
authorCarl Worth <[email protected]>2011-09-29 16:51:08 -0700
committerCarl Worth <[email protected]>2011-09-30 11:43:59 -0700
commit3c01a589448b92945f26bd7e3bfa75155c06f3cf (patch)
tree39d270335dae7150e8a106ebe6e3e74a214b0758 /src/glsl/glcpp
parent8e6b99e7b13da33547fcc8388fe867e851ee0bda (diff)
glcpp: Fix two (or more) successive applications of token pasting
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: spec/glsl-1.30/preprocessor/concat/concat-03.frag Reviewed-by: Kenneth Graunke <[email protected]> Signed-off-by: Carl Worth <[email protected]>
Diffstat (limited to 'src/glsl/glcpp')
-rw-r--r--src/glsl/glcpp/glcpp-parse.y2
1 files changed, 0 insertions, 2 deletions
diff --git a/src/glsl/glcpp/glcpp-parse.y b/src/glsl/glcpp/glcpp-parse.y
index 940830416c0..d547ecf6ff3 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;