summaryrefslogtreecommitdiff
path: root/lang/gcc34/files/patch-enumfix
diff options
context:
space:
mode:
authorMaho Nakata <maho@FreeBSD.org>2004-12-16 10:11:31 +0000
committerMaho Nakata <maho@FreeBSD.org>2004-12-16 10:11:31 +0000
commit36e42dfd04d43da45a6172fe255cf0ee8b83d6cf (patch)
treef37549aec577613884b0766bf88f6dd03074d0dc /lang/gcc34/files/patch-enumfix
parentNew Port: net/coccinella jabber client (diff)
Back out to original. Maho (myself) committed
at different place. Pointy hat to: maho Submitted by: pav
Diffstat (limited to 'lang/gcc34/files/patch-enumfix')
-rw-r--r--lang/gcc34/files/patch-enumfix20
1 files changed, 0 insertions, 20 deletions
diff --git a/lang/gcc34/files/patch-enumfix b/lang/gcc34/files/patch-enumfix
deleted file mode 100644
index 78a6eba5a777..000000000000
--- a/lang/gcc34/files/patch-enumfix
+++ /dev/null
@@ -1,20 +0,0 @@
-http://gcc.gnu.org/ml/gcc-patches/2004-07/msg00968.html
-http://blog.janik.cz/archives/2004-11-23T22_37_37.html
-
---- gcc-3.4.1/gcc/fold-const.c.orig Tue Jun 1 08:15:12 2004
-+++ gcc-3.4.1/gcc/fold-const.c Wed Nov 24 16:39:02 2004
-@@ -3535,7 +3535,13 @@
- HOST_WIDE_INT hi;
- int prec;
-
-- prec = TYPE_PRECISION (etype);
-+ /* For enums the comparison will be done in the underlying type,
-+ so using enum's precision is wrong here.
-+ Consider e.g. enum { A, B, C, D, E }, low == B and high == D. */
-+ if (TREE_CODE (etype) == ENUMERAL_TYPE)
-+ prec = GET_MODE_BITSIZE (TYPE_MODE (etype));
-+ else
-+ prec = TYPE_PRECISION (etype);
- if (prec <= HOST_BITS_PER_WIDE_INT)
- {
- hi = 0;