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

Chia-I Wu olv at lunarg.com
Fri Aug 26 22:16:43 PDT 2011


On Sat, Aug 27, 2011 at 3:12 AM, Ian Romanick <idr at freedesktop.org> wrote:
> 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.
It looks good to me.
> 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
>
>



-- 
olv at LunarG.com


More information about the mesa-dev mailing list