avoid warning in gutils.h when using gcc with -Wconversion

Old solution to avoid warning with gcc flag -Wconversion does not
work with gcc >=4.3 since the behaviour for that flag has been
changed, ref. http://gcc.gnu.org/wiki/NewWconversion. Now cast for
__builtin_clzl is required, which itself is declared to return int.

https://bugzilla.gnome.org/show_bug.cgi?id=619026
This commit is contained in:
Hannes Mueller 2012-02-04 10:06:35 +01:00 committed by Benjamin Otte
parent be6955a008
commit 2ef1a8ef05

View File

@ -304,7 +304,7 @@ g_bit_storage (gulong number)
{
#if defined(__GNUC__) && (__GNUC__ >= 4) && defined(__OPTIMIZE__)
return G_LIKELY (number) ?
((GLIB_SIZEOF_LONG * 8U - 1) ^ __builtin_clzl(number)) + 1 : 1;
((GLIB_SIZEOF_LONG * 8U - 1) ^ (guint) __builtin_clzl(number)) + 1 : 1;
#else
register guint n_bits = 0;