diff options
author | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-04-12 21:39:39 +0000 |
---|---|---|
committer | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-04-12 21:39:39 +0000 |
commit | f2143b567f73be2638c7a1e5abd0e8e5aeacb016 (patch) | |
tree | 3526746cc33223821d95bafdc40b7cb9e1597f03 /gcc/testsuite | |
parent | d45a307dbf6cec2e6d77d1a81e19307fa5bc96d6 (diff) | |
download | gcc-f2143b567f73be2638c7a1e5abd0e8e5aeacb016.tar.gz |
* fold-const.c (build_range_check): Properly deal with enumeral and
boolean base types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145988 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/testsuite/gnat.dg/enum1.adb | 17 | ||||
-rw-r--r-- | gcc/testsuite/gnat.dg/enum1_pkg.ads | 9 |
3 files changed, 32 insertions, 1 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a4452b37566..876431a6b75 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,4 +1,9 @@ -009-04-12 Uros Bizjak <ubizjak@gmail.com> +2009-04-12 Eric Botcazou <ebotcazou@adacore.com> + + * gnat.dg/enum1.adb: New test. + * gnat.dg/enum1_pkg.ads: New helper. + +2009-04-12 Uros Bizjak <ubizjak@gmail.com> PR target/39740 * gcc.target/alpha/pr39740.c: New test. diff --git a/gcc/testsuite/gnat.dg/enum1.adb b/gcc/testsuite/gnat.dg/enum1.adb new file mode 100644 index 00000000000..f751d24a782 --- /dev/null +++ b/gcc/testsuite/gnat.dg/enum1.adb @@ -0,0 +1,17 @@ +-- { dg-do run } +-- { dg-options "-O2" } + +with Enum1_Pkg; use Enum1_Pkg; + +procedure Enum1 is + + function Cond return Boolean is + begin + return My_N = Two or My_N = Three; + end; + +begin + if Cond then + raise Constraint_Error; + end if; +end; diff --git a/gcc/testsuite/gnat.dg/enum1_pkg.ads b/gcc/testsuite/gnat.dg/enum1_pkg.ads new file mode 100644 index 00000000000..ff090869c42 --- /dev/null +++ b/gcc/testsuite/gnat.dg/enum1_pkg.ads @@ -0,0 +1,9 @@ +package Enum1_Pkg is + + type Enum is (One, Two, Three); + + subtype Sub_Enum is Enum; + + My_N : Sub_Enum := One; + +end Enum1_Pkg; |