1 // { dg-do compile } 2 typedef unsigned char uint8; 3 typedef unsigned int uint32; 4 class PixelARGB { 5 public: ~PixelARGB()6 ~PixelARGB() throw() { } throw()7 PixelARGB (const uint32 argb_) throw() : argb (argb_) { } getRed()8 inline __attribute__((always_inline)) uint8 getRed() const throw() { 9 return components.r; 10 } 11 union { 12 uint32 argb; 13 struct { 14 uint8 b, g, r, a; 15 } components; 16 }; 17 }; 18 class Colour { 19 public: Colour()20 Colour() throw() : argb (0) {}; getRed()21 uint8 getRed() const throw() { 22 return argb.getRed(); 23 } 24 PixelARGB argb; 25 }; writeImage(void)26uint8 writeImage (void) { 27 Colour pixel; 28 pixel = Colour (); 29 return pixel.getRed(); 30 } 31