Fix #1079: don't give error when macro() name used without open (.
This commit is contained in:
parent
e8d21388ed
commit
88e22a6090
6 changed files with 83 additions and 8 deletions
|
|
@ -2,10 +2,9 @@ cppBad.vert
|
|||
ERROR: 0:2: 'preprocessor evaluation' : bad expression
|
||||
ERROR: 0:2: '#if' : unexpected tokens following directive
|
||||
ERROR: 0:5: 'string' : End of line in string
|
||||
ERROR: 0:5: 'macro expansion' : expected '(' following n
|
||||
ERROR: 0:5: '""' : string literals not supported
|
||||
ERROR: 0:5: '' : syntax error, unexpected INT, expecting COMMA or SEMICOLON
|
||||
ERROR: 6 compilation errors. No code generated.
|
||||
ERROR: 5 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 100
|
||||
|
|
|
|||
67
Test/baseResults/cppPassMacroName.frag.out
Executable file
67
Test/baseResults/cppPassMacroName.frag.out
Executable file
|
|
@ -0,0 +1,67 @@
|
|||
cppPassMacroName.frag
|
||||
Shader version: 100
|
||||
0:? Sequence
|
||||
0:5 Function Definition: main( ( global void)
|
||||
0:5 Function Parameters:
|
||||
0:7 Sequence
|
||||
0:7 Sequence
|
||||
0:7 move second child to first child ( temp mediump int)
|
||||
0:7 'f1' ( temp mediump int)
|
||||
0:7 Constant:
|
||||
0:7 4 (const int)
|
||||
0:8 Sequence
|
||||
0:8 move second child to first child ( temp mediump int)
|
||||
0:8 'f2' ( temp mediump int)
|
||||
0:8 'f1' ( temp mediump int)
|
||||
0:9 Sequence
|
||||
0:9 move second child to first child ( temp mediump int)
|
||||
0:9 'f3' ( temp mediump int)
|
||||
0:9 Constant:
|
||||
0:9 9 (const int)
|
||||
0:10 Sequence
|
||||
0:10 move second child to first child ( temp mediump int)
|
||||
0:10 'f4' ( temp mediump int)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
0:11 Sequence
|
||||
0:11 move second child to first child ( temp mediump int)
|
||||
0:11 'f5' ( temp mediump int)
|
||||
0:11 Constant:
|
||||
0:11 5 (const int)
|
||||
0:? Linker Objects
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
|
||||
Shader version: 100
|
||||
0:? Sequence
|
||||
0:5 Function Definition: main( ( global void)
|
||||
0:5 Function Parameters:
|
||||
0:7 Sequence
|
||||
0:7 Sequence
|
||||
0:7 move second child to first child ( temp mediump int)
|
||||
0:7 'f1' ( temp mediump int)
|
||||
0:7 Constant:
|
||||
0:7 4 (const int)
|
||||
0:8 Sequence
|
||||
0:8 move second child to first child ( temp mediump int)
|
||||
0:8 'f2' ( temp mediump int)
|
||||
0:8 'f1' ( temp mediump int)
|
||||
0:9 Sequence
|
||||
0:9 move second child to first child ( temp mediump int)
|
||||
0:9 'f3' ( temp mediump int)
|
||||
0:9 Constant:
|
||||
0:9 9 (const int)
|
||||
0:10 Sequence
|
||||
0:10 move second child to first child ( temp mediump int)
|
||||
0:10 'f4' ( temp mediump int)
|
||||
0:10 Constant:
|
||||
0:10 1 (const int)
|
||||
0:11 Sequence
|
||||
0:11 move second child to first child ( temp mediump int)
|
||||
0:11 'f5' ( temp mediump int)
|
||||
0:11 Constant:
|
||||
0:11 5 (const int)
|
||||
0:? Linker Objects
|
||||
|
||||
|
|
@ -75,10 +75,8 @@ ERROR: 12:20051: '#error' : good evaluation 1
|
|||
ERROR: 12:20055: '#error' : good evaluation 2
|
||||
ERROR: 12:9000: 'preprocessor evaluation' : expected ')'
|
||||
ERROR: 12:9002: '#if' : unexpected tokens following directive
|
||||
ERROR: 12:9014: 'macro expansion' : expected '(' following FOOOM
|
||||
ERROR: 12:9014: 'FOOOM' : undeclared identifier
|
||||
ERROR: 12:9014: '=' : cannot convert from ' temp float' to ' global int'
|
||||
ERROR: 12:9015: 'macro expansion' : expected '(' following FOOOM
|
||||
ERROR: 12:9016: 'preprocessor evaluation' : can't evaluate expression
|
||||
ERROR: 12:9016: 'preprocessor evaluation' : bad expression
|
||||
ERROR: 12:9500: 'preprocessor evaluation' : bad expression
|
||||
|
|
@ -93,7 +91,7 @@ ERROR: 12:9508: '#error' : \ 377
|
|||
ERROR: 12:9602: 'defined' : cannot use in preprocessor expression when expanded from macros
|
||||
ERROR: 12:9603: '#error' : DEF_DEFINED then
|
||||
ERROR: 12:10002: '' : missing #endif
|
||||
ERROR: 90 compilation errors. No code generated.
|
||||
ERROR: 88 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 400
|
||||
|
|
|
|||
12
Test/cppPassMacroName.frag
Normal file
12
Test/cppPassMacroName.frag
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
#define f1(i) ((i)*(i))
|
||||
#define I2(f, n) f(n) + f(n+1)
|
||||
#define I3(f, n) I2(f, n) + f(n+2)
|
||||
|
||||
void main()
|
||||
{
|
||||
int f1 = 4;
|
||||
int f2 = f1;
|
||||
int f3 = f1(3);
|
||||
int f4 = I2(f1, 0);
|
||||
int f5 = I3(f1, 0);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue