[Spice-devel] [Xspice PATCH 08/11] configure: include assert.h and values.h (fix compiler warning y1)
Marc-André Lureau
mlureau at redhat.com
Mon Jan 26 02:50:53 PST 2015
----- Original Message -----
> The compiler warns about a function being shadowed by a local
> variable named y1. Apparently y1 is a name of a Bessel function
> of the math library.
> For example:
> uxa-glyphs.c: In function ‘uxa_glyph_extents’:
> uxa-glyphs.c:310: warning: declaration of ‘y1’ shadows a global declaration
> /usr/include/bits/mathcalls.h:242: warning: shadowed declaration is here
>
> The function y1 is included in math.h, which is included
> in xorg/misc.h, but only if one of the following constants is not defined:
> MAXSHORT, MINSHORT MAXINT MININT
>
> Including values.h defines MAX/MIN SHORT/INT, thus math.h is not included
> and the compiler is happy.
>
> Also include assert.h before values.h, as it seems to be required.
>
> Note: the following appears on the top of values.h, but I think it's better
> to ignore this recommendation such that math.h is not included. Also note
> that values.h includes limits.h:
> /* This interface is obsolete. New programs should use
> <limits.h> and/or <float.h> instead of <values.h>. */
> ---
>
> Is there a better way to solve this ?
> I thought of renaming the variable but x1,y1,x2,y2 seem good short names.
>
> ----
> configure.ac | 2 ++
> 1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index 27b1cc7..80445a8 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -46,6 +46,8 @@ AC_DISABLE_STATIC
> AC_PROG_INSTALL
> AC_PROG_LIBTOOL
>
> +AH_TOP([#include <assert.h>])
> +AH_TOP([#include <values.h>])
> AH_TOP([#include "xorg-server.h"])
It's not such a good idea to use AH_TOP, it would be much better to include the files where appropriate.
Since UXA files are copied from other projects (where from? xf86-video-intel?), there could be an existing and hopefully better solution.
More information about the Spice-devel
mailing list