.. Oh well, and the details of this are even subtler, because, assuming we want the exact same behavior of the C front-end, we are going to accept:

typedef union {
  int* f;
  int y;
} __attribute__(( __transparent_union__ )) example_t;

and reject:

typedef union {
  int f;
  int* y;
} __attribute__(( __transparent_union__ )) example_t;

thus we can't even talk about integer and pointer types generically... Essentially, what really matters is that the first field must be a pointer.

Paolo.

Reply via email to