[Rd] R crashes for large formulas in lm() (PR#8180)
Prof Brian Ripley
ripley at stats.ox.ac.uk
Wed Oct 5 18:01:28 CEST 2005
On Thu, 6 Oct 2005, Ei-ji Nakama wrote:
> Hi,
>
> Wed, 5 Oct 2005 13:38:12 +0100 (BST)
> Prof Brian Ripley <ripley at stats.ox.ac.uk> wrote.
>> This is almost certainly C stack overflow, which will be _very_
>> OS-specific. I can run this 9-var example in Linux with a stacksize of
>> 30Mb, but not the default 10Mb. I tried it with the default stack under
>> valgrind, and it works.
>>
>> Windows versions of R have I believe a stack of 8Mb, and so I suspect are
>> running close to that with 8-var example.
>>
>> The problem appears to be recursion in StripTerm.
>
> default of stack of ld for Mingw seems to be 2M.
Yes thanks I have since found that (from ld --help)
> see. binutils-2.16.91-20050827-1/ld/emultempl/pe.em
> 289 D(SizeOfStackReserve,"__size_of_stack_reserve__", 0x200000),
>
> How about adding the following to MkRules?
> MINGW32LDFLAG=-Wl,--stack=33554432
I have been trying that but I cannot make it work (checking the header).
It seems the way that does work is -Wl,--stack=0xA00000. That does allow
this example (with 8 vars) to always run on WinXP.
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-devel
mailing list