Fix several issues in the preprocessor:
- macro expansion of hexidecimal numbers - give errors instead of warnings/silence on extra tokens after #endif, #else, etc. - give errors on reserved macro name use, reuse of argument, and redefinition with different whitespace presence - detect and give error for all cases of #elif and #else after #else git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23982 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
parent
cfe3ba5a18
commit
4d6570a1b3
14 changed files with 403 additions and 339 deletions
|
|
@ -106,9 +106,9 @@ void TPpContext::setInput(TInputScanner& input, bool versionWillBeError)
|
|||
StringInputSrc *in = (StringInputSrc *)malloc(sizeof(StringInputSrc));
|
||||
memset(in, 0, sizeof(StringInputSrc));
|
||||
in->input = &input;
|
||||
in->base.scan = byte_scan;
|
||||
in->base.getch = (int (*)(TPpContext*, InputSrc *, TPpToken *))str_getch;
|
||||
in->base.ungetch = (void (*)(TPpContext*, InputSrc *, int, TPpToken *))str_ungetch;
|
||||
in->base.scan = sourceScan;
|
||||
in->base.getch = (int (*)(TPpContext*, InputSrc *, TPpToken *))sourceGetCh;
|
||||
in->base.ungetch = (void (*)(TPpContext*, InputSrc *, int, TPpToken *))sourceUngetCh;
|
||||
in->base.prev = currentInput;
|
||||
currentInput = &in->base;
|
||||
errorOnVersion = versionWillBeError;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue