bug in GCC or C++ standard ?
Mark Tall
mtall.qld@gmail.com
Wed Nov 12 11:01:00 GMT 2008
On 12/11/2008, René Bürgel <r.buergel@unicontrol.de> wrote:
> If all members of the union are const, why don't you just make the union
> itself const?
The const for the union seems to be ignored (code below). The
original reason behind the union shenanigans was to provide a
compile-time alias to another variable of the same type (due to fusion
of two large legacy code bases into one). It is of course possible to
provide an alias in the form of const int&, however I tried to avoid
the storage penalty.
struct my_class_3
{
const union
{
int x;
int y;
};
my_class_3() : x(0) {}
};
int main(int argc, char** argv)
{
my_class_3 abc;
abc.y = 5;
std::cout << abc.x << std::endl;
return 0;
}
output:
5
More information about the Gcc
mailing list