mirror of
https://github.com/RPCS3/glslang.git
synced 2024-12-18 16:58:21 +00:00
5011fbebc3
According to the GLSL spec, the second parameter to #line should be an integer source string number and __FILE__ will be substituted with the integer source string number currently processed. This patch extends the syntax of #line and __FILE__. Now #line accepts as the second parameter a filename string quoted by double quotation marks. And if such a #line is set, __FILE__ will be substituted with the currently set filename string. The implementation is done via introducing a new extension GL_GOOGLE_cpp_style_line_directive using the extension framework. The purpose is to support cpp-style #line directives, which is required by #include.
37 lines
513 B
GLSL
37 lines
513 B
GLSL
#extension GL_GOOGLE_cpp_style_line_directive : enable
|
|
|
|
#error at "0:3"
|
|
|
|
#line 150 "a.h"
|
|
#error at "a.h:150"
|
|
|
|
#line 24
|
|
#error at "a.h:24"
|
|
|
|
#line 42
|
|
#error at "a.h:42"
|
|
|
|
#line 30 "b.cc"
|
|
#error at "b.cc:30"
|
|
|
|
#line 10 3
|
|
#error at "3:10"
|
|
|
|
#line 48
|
|
#error at "3:48"
|
|
|
|
#line 4
|
|
#error at "3:4"
|
|
|
|
#line 55 100
|
|
#error at "100:55"
|
|
|
|
#line 1000 "c"
|
|
#error at "c:1000"
|
|
|
|
#line 42 1
|
|
#error at "1:42"
|
|
|
|
#line 42 "this-is-a-quite-long-name-maybe-i-should-shorten-it"
|
|
#error at "this-is-a-quite-long-name-maybe-i-should-shorten-it:42"
|