On 23.10.2011 12:08, Pierre Chapuis wrote:
On 22.10.2011 20:54, Rob wrote:

It's a similar compile time check similar to what dwm uses, in this case, it
checks if gc_header_s is the same size as GC_HEADER_SPACE.

OK, makes sense. But the build breaks because of this, which is
understandable since gc_header_s is defined like this:

  struct gc_header_s
  {
    union
    {
      struct
      {
        unsigned char type;
        unsigned char mark;
        unsigned int  prot_level;
        gc_header_t   next, prev;
      };

      char __space[GC_HEADER_SPACE];
    };
  };

Precision: breaks *on a 64 bits machine* (gc_header_t is a pointer
so gc_header_s is 8 bytes larger than GC_HEADER_SPACE).

Reply via email to