On Tue, 20 May 2008 18:27:32 -0300 "Gustavo Sverzut Barbieri"
<[EMAIL PROTECTED]> babbled:

then u'd have a platform that does NOT do 2's compliment math. not compiler but
cpu... and i'd love to see that exist - NOT. :) everything is 2's compliment
and so a 1 bit signed bitfield when "on" is "-1" which as you say - still is
true. it always will be :)

> to make clear: it COULD be -0, on intel at least it's -1 and thus
> evaluates to TRUE, that's why it was unnoticed.
> 
> On Tue, May 20, 2008 at 5:56 PM, Enlightenment CVS
> <[EMAIL PROTECTED]> wrote:
> > Enlightenment CVS committal
> >
> > Author  : barbieri
> > Project : e17
> > Module  : libs/evas
> >
> > Dir     : e17/libs/evas/src/lib/include
> >
> >
> > Modified Files:
> >        evas_common.h
> >
> >
> > Log Message:
> > Remove bugs with bitfield usage, make boolean usage clear.
> >
> > This patch fixes the problem with bitfield of signed types (ie: char),
> > where the bit would be used for the signal, so 1 is considered -0 and
> > thus 0.
> >
> > Move all the single bit fields to Evas_Bool, making it clear and also
> > avoiding these problems since Evas_Bool is unsigned char.
> >
> >
> > ===================================================================
> > RCS file: /cvs/e/e17/libs/evas/src/lib/include/evas_common.h,v
> > retrieving revision 1.97
> > retrieving revision 1.98
> > diff -u -3 -r1.97 -r1.98
> > --- evas_common.h       19 May 2008 03:13:16 -0000      1.97
> > +++ evas_common.h       20 May 2008 20:56:39 -0000      1.98
> > @@ -283,12 +283,12 @@
> >
> >   struct
> >   {
> > -    unsigned int         loaded     : 1;
> > -    unsigned int         dirty      : 1;
> > -    unsigned int         activ      : 1;
> > -    unsigned int         need_data  : 1;
> > -    unsigned int         lru_nodata : 1;
> > -    unsigned int         cached     : 1;
> > +    Evas_Bool            loaded     : 1;
> > +    Evas_Bool            dirty      : 1;
> > +    Evas_Bool            activ      : 1;
> > +    Evas_Bool            need_data  : 1;
> > +    Evas_Bool            lru_nodata : 1;
> > +    Evas_Bool            cached     : 1;
> >   } flags;
> >
> >   int                    references;
> > @@ -320,11 +320,11 @@
> >
> >    struct
> >    {
> > -     unsigned int                cached : 1;
> > -     unsigned int                activ : 1;
> > -     unsigned int                dirty : 1;
> > -     unsigned int                loaded : 1;
> > -     unsigned int                need_parent : 1;
> > +     Evas_Bool                   cached : 1;
> > +     Evas_Bool                   activ : 1;
> > +     Evas_Bool                   dirty : 1;
> > +     Evas_Bool                   loaded : 1;
> > +     Evas_Bool                   need_parent : 1;
> >    } flags;
> >
> >    int                           references;
> > @@ -347,7 +347,7 @@
> >  struct _RGBA_Draw_Context
> >  {
> >    struct {
> > -      char   use : 1;
> > +      Evas_Bool use : 1;
> >       DATA32 col;
> >    } mul;
> >    struct {
> > @@ -355,7 +355,7 @@
> >    } col;
> >    struct RGBA_Draw_Context_clip {
> >       int    x, y, w, h;
> > -      char   use : 1;
> > +      Evas_Bool use : 1;
> >    } clip;
> >    Cutout_Rects cutout;
> >    struct {
> > @@ -373,7 +373,7 @@
> >       int y, h;
> >    } sli;
> >    int            render_op;
> > -   unsigned char  anti_alias : 1;
> > +   Evas_Bool anti_alias : 1;
> >  };
> >
> >  struct _RGBA_Pipe_Op
> > @@ -448,15 +448,15 @@
> >    /* Colorspace stuff. */
> >    struct {
> >       void              *data;
> > -      unsigned int       no_free : 1;
> > -      unsigned int       dirty : 1;
> > +      Evas_Bool          no_free : 1;
> > +      Evas_Bool          dirty : 1;
> >    } cs;
> >
> >    /* RGBA stuff */
> >    struct
> >    {
> >       DATA32            *data;
> > -      unsigned int       no_free : 1;
> > +      Evas_Bool          no_free : 1;
> >    } image;
> >  };
> >
> > @@ -483,7 +483,7 @@
> >        float          angle;
> >        int            direction;
> >        float          offset;
> > -       unsigned char  has_alpha : 1;
> > +       Evas_Bool      has_alpha : 1;
> >      } map;
> >
> >    struct {
> > @@ -515,8 +515,8 @@
> >
> >    int references;
> >
> > -   unsigned char     imported_data : 1;
> > -   unsigned char     has_alpha : 1;
> > +   Evas_Bool imported_data : 1;
> > +   Evas_Bool has_alpha : 1;
> >  };
> >
> >  struct _RGBA_Gradient_Type
> > @@ -698,12 +698,12 @@
> >
> >  struct _Tilebuf_Tile
> >  {
> > -   unsigned char redraw : 1;
> > +   Evas_Bool redraw : 1;
> >  /* FIXME: need these flags later - but not now */
> >  /*
> > -   int done   : 1;
> > -   int edge   : 1;
> > -   int from   : 1;
> > +   Evas_Bool done   : 1;
> > +   Evas_Bool edge   : 1;
> > +   Evas_Bool from   : 1;
> >
> >    struct {
> >       int dx, dy;
> >
> >
> >
> > -------------------------------------------------------------------------
> > This SF.net email is sponsored by: Microsoft
> > Defy all challenges. Microsoft(R) Visual Studio 2008.
> > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> > _______________________________________________
> > enlightenment-cvs mailing list
> > [EMAIL PROTECTED]
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
> >
> 
> 
> 
> -- 
> Gustavo Sverzut Barbieri
> http://profusion.mobi embedded systems
> --------------------------------------
> MSN: [EMAIL PROTECTED]
> Skype: gsbarbieri
> Mobile: +55 (19) 9225-2202
> 
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft 
> Defy all challenges. Microsoft(R) Visual Studio 2008. 
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    [EMAIL PROTECTED]


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft 
Defy all challenges. Microsoft(R) Visual Studio 2008. 
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to