From xemacs-m  Wed Jun 11 01:33:41 1997
Received: from altair.xemacs.org (steve@xemacs.miranova.com [206.190.83.19])
	by xemacs.org (8.8.5/8.8.5) with ESMTP id BAA12253
	for <xemacs-beta@xemacs.org>; Wed, 11 Jun 1997 01:33:38 -0500 (CDT)
Received: (from steve@localhost)
	by altair.xemacs.org (8.8.5/8.8.5) id XAA09589;
	Tue, 10 Jun 1997 23:33:47 -0700
Mail-Copies-To: never
To: xemacs-beta@xemacs.org
Subject: Re: byte compiler warnings
References: <bcipvttacme.fsf@corp.Sun.COM>
X-Url: http://www.miranova.com/%7Esteve/
X-Face: #!T9!#9s-3o8)*uHlX{Ug[xW7E7Wr!*L46-OxqMu\xz23v|R9q}lH?cRS{rCNe^'[`^sr5"
 f8*@r4ipO6Jl!:Ccq<xoV[Qz2u8<8-+Vwf2gzJ44lf_/y9OaQ`@#Q65{U4/TC)i2`~/M&QI$X>p:9I
 OSS'2{-)-4wBnVeg0S\O4Al@)uC[pD|+
X-Attribution: sb
From: Steven L Baur <steve@xemacs.org>
In-Reply-To: Gary.Foster@Corp.Sun.COM's message of "10 Jun 1997 23:15:53 -0700"
Mime-Version: 1.0 (generated by tm-edit 7.108)
Content-Type: text/plain; charset=US-ASCII
Date: 10 Jun 1997 23:33:47 -0700
Message-ID: <m2zpsxbqd0.fsf@altair.xemacs.org>
Lines: 80
X-Mailer: Gnus v5.4.56/XEmacs 20.3(beta6) - "Moscow"

Gary D Foster <Gary.Foster@Corp.Sun.COM> writes:

> Has anyone mentioned all the crap that gets spewed out to the spawning 
> tty during byte-compiles?

The bytecompiler change is far-reaching in scope.

> Is this more Ebola, Steve?

Yes.  What's worse is that the main portion of the bytecompiler Ebolas 
are spurious.  They come about due to something like:

(assq 4 '((?a . foo) (20 . foo) (4 . foo)))

except that the alist has constants encountered during
bytecompilation.  A temporary workaround is the following (forgive me
Father, for I have sinned).

I'm still trying to track down what is killing EFS.  It's not clear
yet whether it's an XEmacs problem or an EFS problem.  At any rate
it's clear that defaulting to Ebola warnings is a grave mistake now.

Index: src/data.c
===================================================================
RCS file: /usr/local/xemacs/xemacs-20.0/src/data.c,v
retrieving revision 1.5
diff -u -r1.5 data.c
--- data.c	1997/05/29 23:50:44	1.5
+++ data.c	1997/06/11 06:08:16
@@ -77,6 +77,8 @@
 
 int debug_ebola_backtrace_length;
 
+#include "backtrace.h"
+
 int
 eq_with_ebola_notice (Lisp_Object obj1, Lisp_Object obj2)
 {
@@ -84,9 +86,19 @@
       && (debug_issue_ebola_notices >= 2
 	  || XREALINT (obj1) == XREALINT (obj2)))
     {
+      struct backtrace *bt = backtrace_list;
+      char *p;
       /* Continuing the joke by printing `Ebola warning!!!' confuses */
       /* too many people.  The message must be printed because Emacs used */
       /* to work differently for two decades. */
+#ifndef LRECORD_SYMBOL
+      /* temporary hack that will probably be around too long -slb */
+      if (XTYPE(*bt->function) == Lisp_Symbol) {
+	p = (XSYMBOL(*bt->function)->name)->_data;
+	if (!strcmp(p, "byte-compile-constant") ||
+	    !strcmp(p, "byte-compile-constants-vector")) goto sc;
+      }
+#endif
       stderr_out("Comparison between integer and character is constant nil (");
       Fprinc (obj1, Qexternal_debugging_output);
       stderr_out (" and ");
@@ -94,7 +106,7 @@
       stderr_out (")\n");
       debug_short_backtrace (debug_ebola_backtrace_length);
     }
-
+sc:
   return EQ (obj1, obj2);
 }
 
@@ -2323,7 +2335,7 @@
 Length (in stack frames) of short backtrace printed out in Ebola notices.
 See `debug-issue-ebola-notices'.
 */ );
-  debug_ebola_backtrace_length = 8;
+  debug_ebola_backtrace_length = 32;
 
 #endif /* DEBUG_XEMACS */
 }

-- 
steve@calag.com baur
Unsolicited commercial e-mail will be billed at $250/message.

