Re: libpq 7.4 and binary cursor - Mailing list pgsql-interfaces

From Jeroen T. Vermeulen
Subject Re: libpq 7.4 and binary cursor
Date
Msg-id 20040610165850.GB28191@xs4all.nl
Whole thread Raw
In response to Re: libpq 7.4 and binary cursor  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-interfaces
On Thu, Jun 10, 2004 at 11:39:25AM -0400, Tom Lane wrote:
> Nonsense.  C99 6.7.2.1:
> 
>        A pointer  to  a  union  object, suitably converted, points to
>        each of its members (or if a member is a bit-field, then  to
>        the unit in which it resides), and vice versa.
> 
> It does say that the results of fetching a union member other than
> the one last stored to are implementation-dependent, but not that
> the implementation can choose to put them in different places.

I stand corrected.  Perhaps this is something that changed in C99 because
too many programs used this trick, or because enough platforms supported 
it.

Note, however, that this is about pointers to unions (and ``suitably
converted,'' whatever that means; there are cases where pointer type
conversions may involve the addition or subtraction of an offset, so there
are situations where you need to be careful about how exactly you convert
your pointers).  The code we're talking about had a union object, but no
pointers.  So the part about registerization still holds.


Jeroen



pgsql-interfaces by date:

Previous
From: Tom Lane
Date:
Subject: Re: libpq 7.4 and binary cursor
Next
From: Terry Lee Tucker
Date:
Subject: Locking Question