struct __attribute__((trivial_abi)) S_Trivial {
~S_Trivial() {}
int ivar = 10;
};
S_Trivial takeTrivial(S_Trivial inVal)
{
S_Trivial ret_val = inVal;
ret_val.ivar = 30;
return ret_val; // Set a breakpoint here
}
struct S_NotTrivial {
~S_NotTrivial() {}
int ivar = 10;
};
S_NotTrivial takeNotTrivial(S_NotTrivial inVal)
{
S_NotTrivial ret_val = inVal;
ret_val.ivar = 30;
return ret_val; // Set a breakpoint here
}
int
main()
{
S_Trivial inVal, outVal;
outVal = takeTrivial(inVal);
S_NotTrivial inNotVal, outNotVal;
outNotVal = takeNotTrivial(inNotVal);
return 0; // Set another for return value
}