diff options
| author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-02-06 12:38:32 +0000 |
|---|---|---|
| committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-02-06 12:38:32 +0000 |
| commit | 9aac6e57b210907273ff80fe81870d8f5147c28d (patch) | |
| tree | 0a991bb66a5b4179756fb6dc9d21220ab46e9356 /gcc | |
| parent | 2a6e95ba024117903e4ed38512d19aea58520d2b (diff) | |
| download | ppe42-gcc-9aac6e57b210907273ff80fe81870d8f5147c28d.tar.gz ppe42-gcc-9aac6e57b210907273ff80fe81870d8f5147c28d.zip | |
2007-02-06 Richard Guenther <rguenther@suse.de>
PR middle-end/27302
* gcc.dg/torture/pr27302-2.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@121644 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/testsuite/gcc.dg/torture/pr27302-2.c | 52 |
2 files changed, 57 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index d86d8725ef5..0ae9d64f094 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-02-06 Richard Guenther <rguenther@suse.de> + + PR middle-end/27302 + * gcc.dg/torture/pr27302-2.c: New testcase. + 2007-02-06 Dorit Nuzman <dorit@il.ibm.com> * gcc.dg/vect/vect.exp: Add support for -fno-tree-scev-cprop tests. diff --git a/gcc/testsuite/gcc.dg/torture/pr27302-2.c b/gcc/testsuite/gcc.dg/torture/pr27302-2.c new file mode 100644 index 00000000000..5c201b3d2dd --- /dev/null +++ b/gcc/testsuite/gcc.dg/torture/pr27302-2.c @@ -0,0 +1,52 @@ +/* { dg-do run } */ +/* { dg-options "-fstrict-overflow" } */ + +extern void link_error (void); + +void test0 (int a, int b) +{ + if ((a < b) != (b > a)) + link_error (); + + if ((a - 1 < b) != (a <= b)) + link_error (); + if ((a - 2 < b) != (a - 1 <= b)) + link_error (); + if ((a + -1 < b) != (a <= b)) + link_error (); + if ((a + -2 < b) != (a + -1 <= b)) + link_error (); + + if ((a + 1 > b) != (a >= b)) + link_error (); + if ((a + 2 > b) != (a + 1 >= b)) + link_error (); + if ((a - -1 > b) != (a >= b)) + link_error (); + if ((a - -2 > b) != (a - -1 >= b)) + link_error (); + + if ((a + 1 <= b) != (a < b)) + link_error (); + if ((a + 2 <= b) != (a + 1 < b)) + link_error (); + if ((a - -1 <= b) != (a < b)) + link_error (); + if ((a - -2 <= b) != (a - -1 < b)) + link_error (); + + if ((a - 1 >= b) != (a > b)) + link_error (); + if ((a - 2 >= b) != (a - 1 > b)) + link_error (); + if ((a + -1 >= b) != (a > b)) + link_error (); + if ((a + -2 >= b) != (a + -1 > b)) + link_error (); +} + +int main() +{ + test0 (1, 2); + return 0; +} |

