1) Allow '\' before a non-newline as a token in the preprocessor, and 2) localize line-continuation to just the pp scanner.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24530 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich 2013-12-16 23:58:15 +00:00
parent 27151efa71
commit bd95819123
10 changed files with 245 additions and 78 deletions

View file

@ -8,7 +8,18 @@ ERROR: 0:14: 'line continuation' : not supported for this version or the enabled
ERROR: 0:15: 'line continuation' : not supported for this version or the enabled extensions
ERROR: 0:18: '#error' : e3
ERROR: 0:24: 'line continuation' : not supported for this version or the enabled extensions
ERROR: 8 compilation errors. No code generated.
ERROR: 0:40: '\' : illegal use of escape character
ERROR: 0:41: '@' : unexpected token
ERROR: 0:42: '$' : unexpected token
ERROR: 0:43: '\' : illegal use of escape character
ERROR: 0:45: '\' : illegal use of escape character
ERROR: 0:46: '\' : illegal use of escape character
ERROR: 0:47: '$' : unexpected token
ERROR: 0:48: '@' : unexpected token
ERROR: 0:50: 'line continuation' : not supported for this version or the enabled extensions
ERROR: 0:52: 'line continuation' : not supported for this version or the enabled extensions
ERROR: 0:53: '#error' : bad continuation
ERROR: 19 compilation errors. No code generated.
ERROR: node is still EOpNull!
@ -29,8 +40,55 @@ ERROR: node is still EOpNull!
0:24 'a' (in highp 4-component vector of float)
0:25 Branch: Return with expression
0:25 'b' (highp 4-component vector of float)
0:40 Sequence
0:40 move second child to first child (highp int)
0:40 'a1' (highp int)
0:40 Constant:
0:40 4 (const int)
0:41 Sequence
0:41 move second child to first child (highp int)
0:41 'a2' (highp int)
0:41 Constant:
0:41 3 (const int)
0:42 Sequence
0:42 move second child to first child (highp int)
0:42 'a3' (highp int)
0:42 Constant:
0:42 4 (const int)
0:43 Sequence
0:43 move second child to first child (highp int)
0:43 'a4' (highp int)
0:43 'a2' (highp int)
0:45 Sequence
0:45 move second child to first child (highp int)
0:45 'q1' (highp int)
0:45 Constant:
0:45 1 (const int)
0:46 Sequence
0:46 move second child to first child (highp int)
0:46 'q2' (highp int)
0:46 Constant:
0:46 1 (const int)
0:47 Sequence
0:47 move second child to first child (highp int)
0:47 'q3' (highp int)
0:47 Constant:
0:47 1 (const int)
0:48 Sequence
0:48 move second child to first child (highp int)
0:48 'q4' (highp int)
0:48 Constant:
0:48 1 (const int)
0:? Linker Objects
0:? 'foo' (highp float)
0:? 'a1' (highp int)
0:? 'a2' (highp int)
0:? 'a3' (highp int)
0:? 'a4' (highp int)
0:? 'q1' (highp int)
0:? 'q2' (highp int)
0:? 'q3' (highp int)
0:? 'q4' (highp int)
Linked vertex stage: