Merge branch 'only-parse-inf-constant-in-hlsl' of https://github.com/xorgy/glslang into xorgy-only-parse-inf-constant-in-hlsl

This commit is contained in:
John Kessenich 2017-10-22 23:19:02 -06:00
commit 016e47f7a3
2 changed files with 4 additions and 36 deletions

View File

@ -11,7 +11,9 @@ ERROR: 0:50: '' : hexadecimal literal too big
ERROR: 0:88: '' : float literal needs a decimal point or exponent
ERROR: 0:98: '' : numeric literal too big
ERROR: 0:101: '' : numeric literal too big
ERROR: 12 compilation errors. No code generated.
ERROR: 0:104: '#' : preprocessor directive cannot be preceded by another token
ERROR: 0:104: '' : syntax error, unexpected $end, expecting COMMA or SEMICOLON
ERROR: 14 compilation errors. No code generated.
Shader version: 400
@ -404,21 +406,6 @@ ERROR: node is still EOpNull!
0:103 'g6' ( global int)
0:103 Constant:
0:103 -2 (const int)
0:104 Sequence
0:104 move second child to first child ( temp float)
0:104 'inf1' ( global float)
0:104 Constant:
0:104 -1.#INF
0:105 Sequence
0:105 move second child to first child ( temp float)
0:105 'inf2' ( global float)
0:105 Constant:
0:105 +1.#INF
0:106 Sequence
0:106 move second child to first child ( temp float)
0:106 'inf3' ( global float)
0:106 Constant:
0:106 +1.#INF
0:? Linker Objects
0:? 'c2' (layout( location=2) out 4-component vector of float)
0:? 'c3' (layout( location=3) out 4-component vector of float)
@ -433,8 +420,6 @@ ERROR: node is still EOpNull!
0:? 'g5' ( global int)
0:? 'g6' ( global int)
0:? 'inf1' ( global float)
0:? 'inf2' ( global float)
0:? 'inf3' ( global float)
Linked fragment stage:
@ -830,21 +815,6 @@ ERROR: node is still EOpNull!
0:103 'g6' ( global int)
0:103 Constant:
0:103 -2 (const int)
0:104 Sequence
0:104 move second child to first child ( temp float)
0:104 'inf1' ( global float)
0:104 Constant:
0:104 -1.#INF
0:105 Sequence
0:105 move second child to first child ( temp float)
0:105 'inf2' ( global float)
0:105 Constant:
0:105 +1.#INF
0:106 Sequence
0:106 move second child to first child ( temp float)
0:106 'inf3' ( global float)
0:106 Constant:
0:106 +1.#INF
0:? Linker Objects
0:? 'c2' (layout( location=2) out 4-component vector of float)
0:? 'c3' (layout( location=3) out 4-component vector of float)
@ -859,6 +829,4 @@ ERROR: node is still EOpNull!
0:? 'g5' ( global int)
0:? 'g6' ( global int)
0:? 'inf1' ( global float)
0:? 'inf2' ( global float)
0:? 'inf3' ( global float)

View File

@ -128,7 +128,7 @@ int TPpContext::lFloatConst(int len, int ch, TPpToken* ppToken)
ch = getChar();
// 1.#INF or -1.#INF
if (ch == '#') {
if (parseContext.intermediate.getSource() == EShSourceHlsl && ch == '#') {
if ((len < 2) ||
(len == 2 && ppToken->name[0] != '1') ||
(len == 3 && ppToken->name[1] != '1' && !(ppToken->name[0] == '-' || ppToken->name[0] == '+')) ||