Browse Source

glsl/glcpp: Promote "extra token at end of directive" from warning to error

We've always warned about this case, but a recent confromance test expects
this to be an error that causes compilation to fail. Make it so.

Also add a "make check" test to ensure these errors are generated.

This fixes the following Khronos GLES3 conformance tests:

	invalid_conditionals.tokens_after_ifdef_vertex
	invalid_conditionals.tokens_after_ifdef_fragment
	invalid_conditionals.tokens_after_ifndef_vertex
	invalid_conditionals.tokens_after_ifndef_fragment

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
tags/10.3-branchpoint
Carl Worth 11 years ago
parent
commit
43047384c3

+ 1
- 1
src/glsl/glcpp/glcpp-parse.y View File

junk: junk:
/* empty */ /* empty */
| pp_tokens { | pp_tokens {
glcpp_warning(&@1, parser, "extra tokens at end of directive");
glcpp_error(&@1, parser, "extra tokens at end of directive");
} }
; ;



+ 5
- 0
src/glsl/glcpp/tests/126-garbage-after-directive.c View File

#ifdef MACRO garbage
#endif

#ifndef MORE garbage
#endif

+ 8
- 0
src/glsl/glcpp/tests/126-garbage-after-directive.c.expected View File

0:1(15): preprocessor error: extra tokens at end of directive
0:4(14): preprocessor error: extra tokens at end of directive







Loading…
Cancel
Save