The function macros in shader_runner_gles_workarounds.h cause many unused variable warnings. The function macros have form #define glMapBuffer(...) UNDEFINED_FUNCTION(glMapBuffer, 0) and get expanded to the call unsupported_function("glMapBuffer", 0) Observe that the original arguments to glMapBuffer are unused.
This patch fixes the warnings by changing the macro form to #define glMapBuffer(...) UNDEFINED_FUNCTION(glMapBuffer, 0, __VA_ARGS__) which gets expanded to the call unsupported_function("glMapBuffer", 0, __VA_ARGS__) CC: Tom Gall <tom.g...@linaro.org> Signed-off-by: Chad Versace <chad.vers...@linux.intel.com> --- tests/shaders/shader_runner_gles_workarounds.h | 89 +++++++++++--------------- 1 file changed, 37 insertions(+), 52 deletions(-) diff --git a/tests/shaders/shader_runner_gles_workarounds.h b/tests/shaders/shader_runner_gles_workarounds.h index 161f985..455c9af 100644 --- a/tests/shaders/shader_runner_gles_workarounds.h +++ b/tests/shaders/shader_runner_gles_workarounds.h @@ -88,7 +88,7 @@ static void #if defined(__GNUC__) __attribute__((unused)) #endif -unsupported_function(const char *name) +unsupported_function(const char *name, ...) { printf("Function \"%s\" not supported on this implementation\n", name); piglit_report_result(PIGLIT_SKIP); @@ -102,67 +102,52 @@ unsupported_function(const char *name) * GLES doesn't exist on Windows. So we're free to use the GCC/Clang extension * for statement expressions. */ -#define UNSUPPORTED_FUNCTION(name, return_value) \ +#define UNSUPPORTED_FUNCTION(name, return_value, ...) \ ({ \ - unsupported_function(#name); \ - return_value; \ + unsupported_function(#name, __VA_ARGS__); \ + return_value; \ }) #if defined(PIGLIT_USE_OPENGL_ES3) || defined(PIGLIT_USE_OPENGL_ES2) -#define piglit_frustum_projection(...) UNSUPPORTED_FUNCTION(piglit_frustum_projection, 0) -#define piglit_gen_ortho_projection(...) UNSUPPORTED_FUNCTION(piglit_gen_ortho_projection, 0) -#define piglit_miptree_texture(...) UNSUPPORTED_FUNCTION(piglit_miptree_texture, 0) -#define piglit_depth_texture(...) UNSUPPORTED_FUNCTION(piglit_depth_texture, 0) -#define piglit_ortho_projection(...) UNSUPPORTED_FUNCTION(piglit_ortho_projection, 0) -#define piglit_compile_program(...) UNSUPPORTED_FUNCTION(piglit_compile_program, 0) +#define piglit_frustum_projection(...) UNSUPPORTED_FUNCTION(piglit_frustum_projection, 0, __VA_ARGS__) +#define piglit_gen_ortho_projection(...) UNSUPPORTED_FUNCTION(piglit_gen_ortho_projection, 0, __VA_ARGS__) +#define piglit_miptree_texture() UNSUPPORTED_FUNCTION(piglit_miptree_texture, 0, 0) +#define piglit_depth_texture(...) UNSUPPORTED_FUNCTION(piglit_depth_texture, 0, __VA_ARGS__) +#define piglit_ortho_projection(...) UNSUPPORTED_FUNCTION(piglit_ortho_projection, 0, __VA_ARGS__) +#define piglit_compile_program(...) UNSUPPORTED_FUNCTION(piglit_compile_program, 0, __VA_ARGS__) -#define glClipPlane(...) UNSUPPORTED_FUNCTION(glClipPlane, 0) -#define glDisableClientState(...) UNSUPPORTED_FUNCTION(glDisableClientState, 0) -#define glEnableClientState(...) UNSUPPORTED_FUNCTION(glEnableClientState, 0) -#define glProgramEnvParameter4fvARB(...) UNSUPPORTED_FUNCTION(glProgramEnvParameter4fvARB, 0) -#define glProgramLocalParameter4fvARB(...) UNSUPPORTED_FUNCTION(glProgramLocalParameter4fvARB, 0) -#define glShadeModel(...) UNSUPPORTED_FUNCTION(glShadeModel, 0) +#define glClipPlane(...) UNSUPPORTED_FUNCTION(glClipPlane, 0, __VA_ARGS__) +#define glDisableClientState(...) UNSUPPORTED_FUNCTION(glDisableClientState, 0, __VA_ARGS__) +#define glEnableClientState(...) UNSUPPORTED_FUNCTION(glEnableClientState, 0, __VA_ARGS__) +#define glProgramEnvParameter4fvARB(...) UNSUPPORTED_FUNCTION(glProgramEnvParameter4fvARB, 0, __VA_ARGS__) +#define glProgramLocalParameter4fvARB(...) UNSUPPORTED_FUNCTION(glProgramLocalParameter4fvARB, 0, __VA_ARGS__) +#define glShadeModel(...) UNSUPPORTED_FUNCTION(glShadeModel, 0, __VA_ARGS__) #if defined(PIGLIT_USE_OPENGL_ES2) -#define glMapBuffer(...) UNSUPPORTED_FUNCTION(glMapBuffer, 0) -#define glUnmapBuffer(...) UNSUPPORTED_FUNCTION(glUnmapBuffer, 0) -#define glUniform1ui(...) UNSUPPORTED_FUNCTION(glUniform1ui, 0) -#define glUniform2uiv(...) UNSUPPORTED_FUNCTION(glUniform2uiv, 0) -#define glUniform3uiv(...) UNSUPPORTED_FUNCTION(glUniform3uiv, 0) -#define glUniform4uiv(...) UNSUPPORTED_FUNCTION(glUniform4uiv, 0) -#define glUniformMatrix2x3fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix2x3fv, 0) -#define glUniformMatrix2x4fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix2x4fv, 0) -#define glUniformMatrix3x2fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix3x2fv, 0) -#define glUniformMatrix3x4fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix3x4fv, 0) -#define glUniformMatrix4x2fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix4x2fv, 0) -#define glUniformMatrix4x3fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix4x3fv, 0) -#define glDrawArraysInstanced(...) UNSUPPORTED_FUNCTION(glDrawArrayInstanced, 0) -#define glGetActiveUniformBlockiv(...) UNSUPPORTED_FUNCTION(glGetActiveUniformBlockiv, 0) -#define glBindBufferBase(...) UNSUPPORTED_FUNCTION(glBindBufferiBase, 0) -#define glGetUniformIndices(...) UNSUPPORTED_FUNCTION(glGetUniformIndices, 0) -#define glGetActiveUniformsiv(...) UNSUPPORTED_FUNCTION(glGetActiveUniformsiv, 0) -#define glGenVertexArrays(...) UNSUPPORTED_FUNCTION(glGenVertexArrays, 0) -#define glBindVertexArray(...) UNSUPPORTED_FUNCTION(glBindVertexArray, 0) +#define glMapBuffer(...) UNSUPPORTED_FUNCTION(glMapBuffer, 0, __VA_ARGS__) +#define glUnmapBuffer(...) UNSUPPORTED_FUNCTION(glUnmapBuffer, 0, __VA_ARGS__) +#define glUniform1ui(...) UNSUPPORTED_FUNCTION(glUniform1ui, 0, __VA_ARGS__) +#define glUniform2uiv(...) UNSUPPORTED_FUNCTION(glUniform2uiv, 0, __VA_ARGS__) +#define glUniform3uiv(...) UNSUPPORTED_FUNCTION(glUniform3uiv, 0, __VA_ARGS__) +#define glUniform4uiv(...) UNSUPPORTED_FUNCTION(glUniform4uiv, 0, __VA_ARGS__) +#define glUniformMatrix2x3fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix2x3fv, 0, __VA_ARGS__) +#define glUniformMatrix2x4fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix2x4fv, 0, __VA_ARGS__) +#define glUniformMatrix3x2fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix3x2fv, 0, __VA_ARGS__) +#define glUniformMatrix3x4fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix3x4fv, 0, __VA_ARGS__) +#define glUniformMatrix4x2fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix4x2fv, 0, __VA_ARGS__) +#define glUniformMatrix4x3fv(...) UNSUPPORTED_FUNCTION(glUniformMatrix4x3fv, 0, __VA_ARGS__) +#define glDrawArraysInstanced(...) UNSUPPORTED_FUNCTION(glDrawArrayInstanced, 0, __VA_ARGS__) +#define glGetActiveUniformBlockiv(...) UNSUPPORTED_FUNCTION(glGetActiveUniformBlockiv, 0, __VA_ARGS__) +#define glBindBufferBase(...) UNSUPPORTED_FUNCTION(glBindBufferiBase, 0, __VA_ARGS__) +#define glGetUniformIndices(...) UNSUPPORTED_FUNCTION(glGetUniformIndices, 0, __VA_ARGS__) +#define glGetActiveUniformsiv(...) UNSUPPORTED_FUNCTION(glGetActiveUniformsiv, 0, __VA_ARGS__) +#define glGenVertexArrays(...) UNSUPPORTED_FUNCTION(glGenVertexArrays, 0, __VA_ARGS__) +#define glBindVertexArray(...) UNSUPPORTED_FUNCTION(glBindVertexArray, 0, __VA_ARGS__) #endif /* PIGLIT_USE_OPENGL_ES2 */ -#define glBindProgramARB(a, b) \ - /* Custom definition to suppress unused-variable warnings. */ \ - ({ \ - (void) a; \ - (void) b; \ - unsupported_function("glBindProgramARB"); \ - }) - -#define glVertexPointer(a, b, c, d) \ - /* Custom definition to suppress unused-variable warnings. */ \ - ({ \ - (void) a; \ - (void) b; \ - (void) c; \ - (void) d; \ - unsupported_function("glVertexPointer"); \ - }) +#define glBindProgramARB(...) UNSUPPORTED_FUNCTION(glBindProgramARB, 0, __VA_ARGS__) +#define glVertexPointer(...) UNSUPPORTED_FUNCTION(glVertexPointer, 0, __VA_ARGS__) #if defined(PIGLIT_USE_OPENGL_ES3) static GLvoid* -- 1.8.1 _______________________________________________ Piglit mailing list Piglit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/piglit