The problem is in TRE library, in regcomp, while compiling the regular expression.

This is enough to trigger in R (to do this without re-boot: ulimit -v 500000 ):
> strsplit("", "\\\\)")

To repeat in TRE, one can build TRE from sources and run
> ./src/agrep "\\\\)" README.md

Tomas


On 08/17/2017 09:45 AM, Moshe Olshansky via R-devel wrote:
I tried this on a Linux (Ubuntu) server invoking R from the command line and 
the result was the same, except that I could kill the R session from another 
terminal window.


       From: Rui Barradas <ruipbarra...@sapo.pt>
  To: Chris Triggs <cm.tri...@auckland.ac.nz>; "r-devel@r-project.org" 
<r-devel@r-project.org>
Cc: Thomas Lumley <t.lum...@auckland.ac.nz>
  Sent: Thursday, 17 August 2017, 17:26
  Subject: Re: [Rd] Problem with a regular expression.
Hello,

This seems to be serious.
RGui.exe, fresh session. I've clicked File > New Script and wrote

Oldterm <- c("A", "B", "A", "*", "B")
strsplit(Oldterm, "\\\\)" )

Ran each instruction at a time with Ctrl+r and with the strsplit call
the system froze.

Ctrl+Alt+Del didn't work, I had to go for the power switch button.

sessionInfo()
R version 3.4.1 (2017-06-30)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

Matrix products: default

locale:
[1] LC_COLLATE=Portuguese_Portugal.1252
LC_CTYPE=Portuguese_Portugal.1252
[3] LC_MONETARY=Portuguese_Portugal.1252 LC_NUMERIC=C

[5] LC_TIME=Portuguese_Portugal.1252

attached base packages:
[1] stats    graphics  grDevices utils    datasets  methods  base

loaded via a namespace (and not attached):
[1] compiler_3.4.1


Rui Barradas

Em 16-08-2017 23:31, Chris Triggs escreveu:
Hi...

I have come upon a problem with a regular expression which causes base-R to 
freeze.  I have reproduced the phenomenon on several machines running R under 
Windows 10, and also under OSX  on different Apple MACs.

The minimal example is:-
Oldterm is a vector of characters, e.g. "A", "B", "A", "*", "B"
The regular expression is "\\\\)"

The call which freezes R is
strsplit(Oldterm, "\\\\)" )

Thomas - after he had reproduced the problem - suggested that I submit it to 
r-devel.

Best wishes....
             Chris Triggs


     [[alternative HTML version deleted]]

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel


[[alternative HTML version deleted]]

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to