This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/22429] [4.1 Regression] -1073741824 <= n && n <= 1073741823 is true where n is 1073741824
- From: "pinskia at physics dot uc dot edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 13 Oct 2005 16:12:40 -0000
- Subject: [Bug middle-end/22429] [4.1 Regression] -1073741824 <= n && n <= 1073741823 is true where n is 1073741824
- References: <bug-22429-2489@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #10 from pinskia at gcc dot gnu dot org 2005-10-13 16:12 -------
Subject: Re: [4.1 Regression] -1073741824 <= n && n <= 1073741823 is true
where n is 1073741824
>
>
>
> ------- Comment #9 from bonzini at gcc dot gnu dot org 2005-10-13 16:09 -------
> As in:
>
> if (value != 0
> && (!flag_wrapv || TREE_OVERFLOW (value))
> && (flag_wrapv || !TYPE_UNSIGNED (etype)))
>
> which in turn means
>
> if (value != 0
> && (flag_wrapv ? TREE_OVERFLOW (value) : !TYPE_UNSIGNED (etype)))
That is what my patch does.
The extra stuff was needed to make sure that Ada would be able to bootstrap.
-- Pinski
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22429