While looking at the rules governing struct/union declarations in C, I stumbled upon this example:
union A { int i; float f; }; void foo(struct A** p) { *p = 0; } This is accepted by both Comeau and the Intel C compiler, but is rejected by GCC 4.1.2 and 4.3.0 on the grounds that bug.c:7: error: ‘A’ defined as wrong kind of tag My interpretation is that line 7 does not define `union A' with the wrong kind of tag; it declares a (totally unrelated) `struct A'. However, I am not sure. Should I file a bug report for this? All the best, Roberto -- Prof. Roberto Bagnara Computer Science Group Department of Mathematics, University of Parma, Italy http://www.cs.unipr.it/~bagnara/ mailto:[EMAIL PROTECTED]