[Mesa-dev] [PATCH] mapi: Silence many "warning: unused parameter"

Ian Romanick idr at freedesktop.org
Fri Aug 26 12:12:05 PDT 2011


From: Ian Romanick <ian.d.romanick at intel.com>

When generating dispatch templates, emit the '(void) blah;' magic to
make GCC happy.  This reduces a lot of warning spam if you build with
-Wunused-parameter or -Wextra.

Cc: Chia-I Wu <olv at lunarg.com>
---

There's a follow-on patch that commits the resulting changes to the
various generated files.  That commit has some spurious changes
because somebody forgot to do this when adding
glFramebufferTextureLayerARB.  Either way, that commit is WAY too big
to send to the list.

 src/mapi/glapi/gen/gl_apitemp.py |    7 +++++++
 src/mapi/mapi/mapi_abi.py        |   11 ++++++++++-
 2 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/src/mapi/glapi/gen/gl_apitemp.py b/src/mapi/glapi/gen/gl_apitemp.py
index 41a40fb..72c2e46 100644
--- a/src/mapi/glapi/gen/gl_apitemp.py
+++ b/src/mapi/glapi/gen/gl_apitemp.py
@@ -64,6 +64,8 @@ class PrintGlOffsets(gl_XML.gl_print_base):
 
 		n = f.static_name(name)
 
+		silence = ''
+		space = ''
 		for p in f.parameterIterator():
 			if p.is_padding:
 				continue
@@ -78,6 +80,9 @@ class PrintGlOffsets(gl_XML.gl_print_base):
 			o_string = o_string + comma + cast + p.name
 			comma = ", "
 
+			silence += "%s(void) %s;" % (space, p.name);
+			space = ' '
+
 
 		if f.return_type != 'void':
 			dispatch = "RETURN_DISPATCH"
@@ -97,6 +102,8 @@ class PrintGlOffsets(gl_XML.gl_print_base):
 
 		print '%s %s KEYWORD2 NAME(%s)(%s)' % (keyword, f.return_type, n, f.get_parameter_string(name))
 		print '{'
+		if silence:
+			print '    %s' % (silence)
 		if p_string == "":
 			print '   %s(%s, (), (F, "gl%s();\\n"));' \
 				% (dispatch, f.name, name)
diff --git a/src/mapi/mapi/mapi_abi.py b/src/mapi/mapi/mapi_abi.py
index e3d3f65..c18dd82 100644
--- a/src/mapi/mapi/mapi_abi.py
+++ b/src/mapi/mapi/mapi_abi.py
@@ -503,7 +503,16 @@ class ABIPrinter(object):
 
             proto = self._c_decl(ent, prefix, False, 'static')
 
-            stmt1 = self.indent + '%s(%s);' % (self.noop_warn,
+            stmt1 = self.indent;
+            space = ''
+            for t, n, a in ent.params:
+                stmt1 += "%s(void) %s;" % (space, n)
+                space = ' '
+
+            if ent.params:
+                stmt1 += '\n';
+
+            stmt1 += self.indent + '%s(%s);' % (self.noop_warn,
                     self._c_function(ent, warn_prefix, False, True))
 
             if ent.ret:
-- 
1.7.4.4



More information about the mesa-dev mailing list