Subject: RE: gcc brokeness
From: Martin Buchholz <[email-masked]>
To: Andy Piper <[email-masked]>, XEmacs Patches <[email-masked]>
Cc: "Todd Goodman" <[email-masked]>, <[email-masked]>, Eric Christopher <[email-masked]>, [email-masked]
Date: Fri, 3 Dec 1999 20:49:29 -0800 (PST)

>>>>> "Andy" == Andy Piper <[email-masked]> writes:

Andy> At 08:52 PM 12/2/99 -0500, Todd Goodman wrote:
>> Are you using the Cygwin V1.0 compiler?

Andy> Yes.

>> If so, I've found that building with just -O (instead of -O2)
>> fixes it as does installing Mumit's 2.95.2 for v1.0.

Andy> Ok. We need to come up with something that means people can build OOTB with
Andy> cygwin 1.0.

Here's the fix that lets me compile with Linux CodeFusion.  It is
likely that the same fix will work for Cygwin.  Someone (Andy?) please
test this on Cygwin 1.0.

Cygnus and Cygwin guys, you're not off the hook yet.  You still need
to fix this serious bug!

Clues:

-O3  gives  ICE
-O2  gives  ICE
-O   gives  clean compile
-O2 -fno-strength-reduce  gives  clean compile

So a reasonable guess is that strength reduction optimizations are
broken.

--- event-stream.c	1999/11/28 18:15:46	1.45.2.14
+++ event-stream.c	1999/12/04 04:44:42
@@ -3177,11 +3169,9 @@
   int l = level;
   widget_value *current;
 
-  while (level >= 3)
-    {
-      --level;
-      lw_pop_menu ();
-    }
+  while (level-- >= 3)
+    lw_pop_menu ();
+
   menu_move_up ();
   current = lw_get_entries (False);
   if (l > 2 && current->contents)
@@ -3195,11 +3185,9 @@
   int l = level;
   widget_value *current;
 
-  while (level >= 3)
-    {
-      --level;
-      lw_pop_menu ();
-    }
+  while (level-- >= 3)
+    lw_pop_menu ();
+
   menu_move_down ();
   current = lw_get_entries (False);
   if (l > 2 && current->contents)

--
Want to unsubscribe from this list?
Send a message to [email-masked]