Demos (master): glsl/gsraytrace: Use __LINE__ macro to set line numbers in GLSL source strings.
Kenneth Graunke
kwg at kemper.freedesktop.org
Sat Mar 8 10:11:16 UTC 2014
Module: Demos
Branch: master
Commit: 008dd254175c6f3e46e77c4ad533dfdd87f7d957
URL: http://cgit.freedesktop.org/mesa/demos/commit/?id=008dd254175c6f3e46e77c4ad533dfdd87f7d957
Author: Fabian Bieler <fabianbieler at fastmail.fm>
Date: Wed Feb 5 22:07:43 2014 +0100
glsl/gsraytrace: Use __LINE__ macro to set line numbers in GLSL source strings.
The hardcoded numbers are a few lines off at the moment.
Keeping track of the numbers through further modifications is inconvenient.
The __LINE__ "constant" takes care of this automatically.
v2: (by Kenneth Graunke) Don't specify the source string number
(caught by Ian Romanick).
Signed-off-by: Fabian Bieler <fabianbieler at fastmail.fm>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
---
src/glsl/gsraytrace.cpp | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/src/glsl/gsraytrace.cpp b/src/glsl/gsraytrace.cpp
index 62a584d..c21c667 100644
--- a/src/glsl/gsraytrace.cpp
+++ b/src/glsl/gsraytrace.cpp
@@ -37,6 +37,10 @@
// TODO: use GL_EXT_transform_feedback or GL3 equivalent
// TODO: port to piglit too
+#define STRINGIFY_(x) #x
+#define STRINGIFY(x) STRINGIFY_(x)
+#define S__LINE__ STRINGIFY(__LINE__)
+
static const float INF=9999.9F;
static int Win;
@@ -67,7 +71,7 @@ float rot[9] = {1,0,0, 0,1,0, 0,0,1};
static const char* vsSource =
" \n"
"#version 120 \n"
-"#line 63 63 \n"
+"#line " S__LINE__ "\n"
"#define SHADOWS \n"
"#define RECURSION \n"
" \n"
@@ -249,7 +253,7 @@ static const char* vsSource =
static const char* gsSource =
"#version 120 \n"
-"#line 245 245 \n"
+"#line " S__LINE__ "\n"
"#extension GL_ARB_geometry_shader4: require \n"
" \n"
"#define SHADOWS \n"
@@ -388,7 +392,7 @@ static const char* gsSource =
static const char* fsSource =
"#version 120 \n"
-"#line 384 384 \n"
+"#line " S__LINE__ "\n"
" \n"
"#define SHADOWS \n"
"#define RECURSION \n"
More information about the mesa-commit
mailing list