mirror of
https://github.com/KhronosGroup/glslang
synced 2024-09-19 12:19:53 +00:00
9cd7ca26a2
Don't report the following error when scanning inactive code (e.g. code inside #if 0): "error: '#' : (#) can be preceded in its line only by spaces or horizontal tab" Adds a variable to PpContext to say whether we're currently skipping over an inactive #if/#ifdef/#elif/#else, and don't report the error inside scanToken if true. fixes 3704
28 lines
486 B
GLSL
Executable File
28 lines
486 B
GLSL
Executable File
#version 460
|
|
|
|
// This tests that the preprocessor error
|
|
// "error: '#' : (#) can be preceded in its line only by spaces or horizontal tab"
|
|
// isn't enforced when inactive (e.g. inside #if 0)
|
|
|
|
#if 0
|
|
#define STRINGIFY(X) #X
|
|
#endif
|
|
|
|
#define C 0
|
|
|
|
#if 1
|
|
#ifdef A
|
|
#elif defined B
|
|
#elif C
|
|
// OK, since preprocessor evaluates to inactive
|
|
#define STRINGIFY(X) #X
|
|
#endif
|
|
#endif
|
|
|
|
// OK in comments
|
|
// #define STRINGIFY(X) #X
|
|
|
|
void main()
|
|
{
|
|
gl_Position = vec4(1.0);
|
|
} |