diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.law/temps6.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.law/temps6.C | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.law/temps6.C b/gcc/testsuite/g++.old-deja/g++.law/temps6.C new file mode 100644 index 000000000..19a12d740 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.law/temps6.C @@ -0,0 +1,25 @@ +// { dg-do run } +// GROUPS passed temps +// Date: Tue, 22 Mar 94 12:46:28 +0100 +// From: dak@pool.informatik.rwth-aachen.de +// Message-Id: <9403221146.AA07815@messua> +// Subject: Bad code for pointer to member use as reference in g++ 2.5.8 + +#include <stdio.h> +struct str { + int i; +} xxx = {0}; + +int& test(str *arg1, int str::*arg2) +{ + return (arg1->*arg2); +} + +int main() +{ + test(&xxx, &str::i) = 5; + if (xxx.i == 0) + { printf ("FAIL\n"); return 1; } + else + printf ("PASS\n"); +} |