blob: f4d69fdca970e0fe74c03513416aa4bff191ed68 [file] [log] [blame]
// { dg-do run }
// g++ 1.37.1 bug 900331_02
// g++ fails to treat conditional expressions which yield composite type
// (i.e. struct type, union type, or class type) lvalues as if they did
// in fact yield lvalues in all cases.
// Cfront 2.0 passes this test.
// keywords: conditional operator?:, lvalues, composite types
struct struct0 {
int data_member;
};
struct0 object0;
struct0 object1;
struct0 object2;
int i;
void function0 ()
{
(i ? object0 : object1).data_member = 99; // { dg-bogus "" }
(i ? object0 : object1) = object2; // { dg-bogus "" }
}
int main () { return 0; }