From 68927913e42e4f54dbbde50f2ac6a5724747dee7 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Tue, 14 Nov 2006 17:13:57 +0000 Subject: [PATCH] re PR c++/29106 (sizeof(*var) in expression drops entire line of code out of compile) PR c++/29106 * g++.dg/init/self1.C: New test. From-SVN: r118818 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.dg/init/self1.C | 19 +++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 gcc/testsuite/g++.dg/init/self1.C diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a8d168a70115..5f0d667823aa 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2006-11-14 Mark Mitchell + + PR c++/29106 + * g++.dg/init/self1.C: New test. + 2006-11-13 Francois-Xavier Coudert PR libfortran/27895 diff --git a/gcc/testsuite/g++.dg/init/self1.C b/gcc/testsuite/g++.dg/init/self1.C new file mode 100644 index 000000000000..dd37c8e609d9 --- /dev/null +++ b/gcc/testsuite/g++.dg/init/self1.C @@ -0,0 +1,19 @@ +// PR c++/29106 +// { dg-do run } + +int i; + +void f(__SIZE_TYPE__) { + i = 3; +} + + +int main() +{ + int* const savepos = sizeof(*savepos) ? 0 : 0; + + f (sizeof (*savepos)); + + if (i != 3) + return 1; +}