Hi Dan:

I believe this is a known XEmacs problem.  See the description below:
XEmacs 21.4.17 repairs a serious problem in the 21.4.16 release.  This  
problem could cause any package or lisp code using shy regexps to  
either go into any infinite loop or to crash XEmacs.  The 21.4.16  
release has been withdrawn because of this defect; see
http://list-archive.xemacs.org/xemacs-announce/200502/msg00000.html
for more details.

Thanks, Rodney

> Hi,
>
> I just apt-get upgrade'd my debian linux "sarge" system, and one
> consequence has been that ESS / R / Xemacs are not behaving as nicely  
> as
> they were before the upgrade: If I hit return to evaluate an R  
> expression,
> and do so immediately after closing a parenthesis or two, without  
> waiting
> for the parenthesis highlighter to "bounce" back from the matching
> parenthesis, then the session dies: no interaction with the ESS/R  
> session
> is possible, cannot switch to other xemacs buffers, top shows xemacs  
> using
> over 99% of CPU, if I switch to another xterm window and then switch  
> back
> to Xemacs the screen is just grey, and I have consequently manually  
> killed
> the xemacs process. Below is my ESS, R, xemacs versions, and 4  
> examples of
> the "Lisp backtrace" that resulted when I kill the xemacs process. I  
> tried
> reinstalling ess but the problem persisted.
>
> Thanks for any suggestions,
>
> Dan
>
>
> ESS VERSION (I wasn't sure how to call up the ess version, but as I  
> just
> reinstalled it, I presume my installed version is the same as this:)
>
> dan@Psilocybe:~$ apt-cache showpkg ess
> Package: ess
> Versions:
> 5.2.3-3(/var/lib/apt/lists/ 
> http.us.debian.org_debian_dists_sarge_main_binary-i386_Packages)(/var/ 
> lib/dpkg/status)
>
>
> R VERSION
>
> platform i386-pc-linux-gnu
> arch     i386
> os       linux-gnu
> system   i386, linux-gnu
> status
> major    2
> minor    0.1
> year     2004
> month    11
> day      15
> language R
>
>
> XEMACS VERSION
>
> dan@Psilocybe:~/dsrtn/src$ xemacs -V
> Loading /usr/share/emacs/site-lisp/debian-startup...
> <....>
> Loading 50sawfish...
> XEmacs 21.4 (patch 16) "Corporate Culture" [Lucid] (i386-debian-linux,
> Mule) of Sun Dec 12 2004 on penell
>
> ***********************************************************************
>
> Lisp backtrace follows:
>
>    string-match("\\(?:[^ \n
> \"'`]+\\|\"[^\"]*\"\\|'[^']*'\\|`[^`]*`\\)+" "apply(A, 1, function(row)
> prod(row))" 11)
>    # bind (arg-regexp args pos count mth nth string)
>    comint-arguments("apply(A, 1, function(row) prod(row))" 0 nil)
>    # bind (input intxt append-here pmark-val pmark proc)
>    comint-send-input()
>    #<compiled-function nil "...(14)" [ess-object-list
> ess-make-buffer-current run-hooks ess-send-input-hook comint-send-input
> nil] 2 ("/usr/share/xemacs21/site-lisp/ess/ess-inf.elc" . 30639) nil>()
>    call-interactively(inferior-ess-send-input)
>    # (condition-case ... . error)
>    # (catch top-level ...)
>
>
> *********************************************************************** 
> ****
>
> Lisp backtrace follows:
>
>    string-match("\\(?:[^ \n
> \"'`]+\\|\"[^\"]*\"\\|'[^']*'\\|`[^`]*`\\)+" "apply(h, 1, function(row)
> sum(5 :78))" 0)
>    # bind (arg-regexp args pos count mth nth string)
>    comint-arguments("apply(h, 1, function(row) sum(5 :78))" 0 nil)
>    # bind (input intxt append-here pmark-val pmark proc)
>    comint-send-input()
>    #<compiled-function nil "...(14)" [ess-object-list
> ess-make-buffer-current run-hooks ess-send-input-hook comint-send-input
> nil] 2 ("/usr/share/xemacs21/site-lisp/ess/ess-inf.elc" . 30639) nil>()
>    call-interactively(inferior-ess-send-input)
>    # (condition-case ... . error)
>    # (catch top-level ...)
>
> [1]+  Terminated              xemacs ms.R
>
> *********************************************************************** 
> **
>
> Lisp backtrace follows:
>
>    string-match("\\(?:[^ \n
> \"'`]+\\|\"[^\"]*\"\\|'[^']*'\\|`[^`]*`\\)+" "apply(h, 1, function(row)
> sum(row))" 0)
>    # bind (arg-regexp args pos count mth nth string)
>    comint-arguments("apply(h, 1, function(row) sum(row))" 0 nil)
>    # bind (input intxt append-here pmark-val pmark proc)
>    comint-send-input()
>    #<compiled-function nil "...(14)" [ess-object-list
> ess-make-buffer-current run-hooks ess-send-input-hook comint-send-input
> nil] 2 ("/usr/share/xemacs21/site-lisp/ess/ess-inf.elc" . 30639) nil>()
>    call-interactively(inferior-ess-send-input)
>    # (condition-case ... . error)
>    # (catch top-level ...)
>
> *********************************************************************** 
> ***
>
> Lisp backtrace follows:
>
>    string-match("\\(?:[^ \n
> \"'`]+\\|\"[^\"]*\"\\|'[^']*'\\|`[^`]*`\\)+" "outer(1:5, 1:5,
> function(i,j) sum(h[i,] == h[j,]) )" 0)
>    # bind (arg-regexp args pos count mth nth string)
>    comint-arguments("outer(1:5, 1:5, function(i,j) sum(h[i,] == h[j,])  
> )" 0
> nil)
>    # bind (input intxt append-here pmark-val pmark proc)
>    comint-send-input()
>    #<compiled-function nil "...(14)" [ess-object-list
> ess-make-buffer-current run-hooks ess-send-input-hook comint-send-input
> nil] 2 ("/usr/share/xemacs21/site-lisp/ess/ess-inf.elc" . 30639) nil>()
>    call-interactively(inferior-ess-send-input)
>    # (condition-case ... . error)
>    # (catch top-level ...)
>
>

	[[alternative text/enriched version deleted]]


