chicken-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-hackers] [PATCH] catch exceptions in finalizers, remove dyn


From: Jörg F . Wittenberger
Subject: Re: [Chicken-hackers] [PATCH] catch exceptions in finalizers, remove dynamic resizing of finalizer vector
Date: 19 Jun 2012 22:28:25 +0200

On Jun 19 2012, Peter Bex wrote:

Right now it looks to me like there's an optimization that's messing
things up.  Try compiling this file with -O0 and then with -O1:

(let lp ((x (list 1 2 3)))
 (set-finalizer! x (lambda _ #f))
   (lp (list 1 2 3)))

With -O1 or higher this will raise a suspicious looking error:

Error: call of non-procedure: #<unspecified>
I also see this with 4.7.0, even when compiled with -O0.  With -O1 on
4.7.0, it shows this error and _then_ craps out with an OOM error.

This would kinda explain, why my "eat all memory" issue is so
apparent on the recent mint install I did and rare on older systems.

This system has gcc (Ubuntu/Linaro 4.6.1-9ubuntu3) 4.6.1
it is the first one to complain about chicken code for me:


atomic.c: In function 'f_5446': atomic.c:5062:4: warning: array subscript is above array bounds [-Warray-bounds] atomic.c: In function 'f_3797': atomic.c:1534:4: warning: array subscript is above array bounds [-Warray-bounds] atomic.c: In function 'f_3760': atomic.c:7751:4: warning: array subscript is above array bounds [-Warray-bounds] atomic.c: In function 'f_3733': atomic.c:8312:4: warning: array subscript is above array bounds [-Warray-bounds] atomic.c: In function 'f_3791':


Note that I'm seen the problem on code, which is compiled with -scrutinize
and gcc -O2.

This *might* hint somewhere…?  Anybody running Clang?

/Jerry
.....





reply via email to

[Prev in Thread] Current Thread [Next in Thread]