GtkD compile failed. shift by 32

Mike Wey mike-wey at example.com
Mon Jun 11 12:05:05 PDT 2012


On 06/11/2012 03:21 AM, 1100110 wrote:
> http://svn.dsource.org/projects/gtkd/branches/070125merge/gtkD/src/gdk/Color.d
>
>
>
> uint getValue()
> {
>      return (gdkColor.red <<32) | (gdkColor.green << 16) | (gdkColor.blue);
> }
>
>
> Just browsing through the source it looks like gtkColor.red is a ushort.
> I get this error.
>
> dmd -O -m64 -Isrc -c src/gdk/Pixbuf.d -ofsrc/gdk/Pixbuf.o
> src/gdk/Color.d(231): Error: shift by 32 is outside the range 0..31
> make: *** [src/gdk/Color.o] Error 1
> make: *** Waiting for unfinished jobs....
> ==> ERROR: A failure occurred in build().
>
> I get that exact same message no matter which compiler I use.
>
> Does any
>

This was a bug in GtkD, getValue needs to return a ulong.
The fix has been in the git/svn repo for quite a while now ;).

-- 
Mike Wey




More information about the Digitalmars-d-learn mailing list