This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/42357] another ice in create_tmp_var
- From: "rguenth at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 13 Dec 2009 16:04:21 -0000
- Subject: [Bug c++/42357] another ice in create_tmp_var
- References: <bug-42357-9596@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #3 from rguenth at gcc dot gnu dot org 2009-12-13 16:04 -------
typedef unsigned char uint8;
typedef unsigned int uint32;
class PixelARGB {
public:
~PixelARGB() throw() { }
PixelARGB (const uint32 argb_) throw() : argb (argb_) { }
inline __attribute__((always_inline)) uint8 getRed() const throw() {
return components.r;
}
union {
uint32 argb;
struct {
uint8 b, g, r, a;
} components;
};
};
class Colour {
public:
Colour() throw() : argb (0) {};
uint8 getRed() const throw() {
return argb.getRed();
}
PixelARGB argb;
};
uint8 writeImage (void) {
Colour pixel;
pixel = Colour ();
return pixel.getRed();
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42357