Mesa (glsl2): linker: Add comment about bug in initializer handling

Ian Romanick idr at kemper.freedesktop.org
Tue Jul 20 02:22:23 UTC 2010


Module: Mesa
Branch: glsl2
Commit: de415b7f4b1278f10097f4af80886bc82912dd92
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=de415b7f4b1278f10097f4af80886bc82912dd92

Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Wed Jul 14 13:22:12 2010 -0700

linker: Add comment about bug in initializer handling

---

 src/glsl/linker.cpp |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp
index f7c178e..06aa24e 100644
--- a/src/glsl/linker.cpp
+++ b/src/glsl/linker.cpp
@@ -314,6 +314,14 @@ cross_validate_globals(struct gl_shader_program *prog,
 		   * have an initializer but a later instance does, copy the
 		   * initializer to the version stored in the symbol table.
 		   */
+		  /* FINISHME: This is wrong.  The constant_value field should
+		   * FINISHME: not be modified!  Imagine a case where a shader
+		   * FINISHME: without an initializer is linked in two different
+		   * FINISHME: programs with shaders that have differing
+		   * FINISHME: initializers.  Linking with the first will
+		   * FINISHME: modify the shader, and linking with the second
+		   * FINISHME: will fail.
+		   */
 		  existing->constant_value = var->constant_value->clone(NULL);
 	    }
 	 } else




More information about the mesa-commit mailing list