URL
https://opencores.org/ocsvn/scarts/scarts/trunk
Subversion Repositories scarts
[/] [scarts/] [trunk/] [toolchain/] [scarts-gcc/] [gcc-4.1.1/] [gcc/] [testsuite/] [g++.old-deja/] [g++.other/] [inline21.C] - Rev 12
Compare with Previous | Blame | View Log
// { dg-do run }
// { dg-options "-O2" }
// Origin: suckfish@ihug.co.nz
// DECLARATIONS
struct Record {
Record (int bb) :
b (bb)
{ }
int extra; // Having an extra member in record is crucial.
int b;
};
struct Container {
Record record;
// The const on the next line is crucial.
Container ( const Record b) : record(b) {}
};
// TEST FOR CORRECT BEHAVIOR
int myArray[3];
int * intp = myArray;
void use_pair (const Container & c)
{
*intp++ = c.record.b;
}
extern "C" int printf (const char *,...);
int main()
{
use_pair (Container (1234));
if (myArray[0] != 1234)
return 1;
}