g++.dg/ext/packed3.C
Nathan Sidwell
nathan@codesourcery.com
Tue Dec 13 10:13:00 GMT 2005
Jan Beulich wrote:
> I don't think this is the case. The questionable code (from the test
> case) really is
>
> struct Unpacked { int i; };
> struct __attribute__ ((packed)) Packed
> {
> char c;
> int i;
> Unpacked u;
> };
>
> and the test expects that you cannot bind Packed::u to Unpacked& (error
> expected), but that you can bind Packed::u::i to int& (not even a
> warning expected). No warning is expected on the definition of Packed's
> u member.
ok. I think you're right. I think I've remembered why it is the way it is, and
that's because rejecting such a binding broke overload resolution of (the
trivial) Unpacked::operator=. I think that no longer applies.
nathan
--
Nathan Sidwell :: http://www.codesourcery.com :: CodeSourcery LLC
nathan@codesourcery.com :: http://www.planetfall.pwp.blueyonder.co.uk
More information about the Gcc
mailing list