|
From: | Jörg F . Wittenberger |
Subject: | Re: [Chicken-users] a memory issue; mildly scaring to me |
Date: | 26 Sep 2011 11:28:21 +0200 |
On Sep 25 2011, Peter Bex wrote:
On Sun, Sep 25, 2011 at 12:36:23PM +0200, Jörg F. Wittenberger wrote:I'm still kinda lost.Is there any documentation I could read to understand a little more of irregex code? The source says it should run on any Scheme; just not how. ;-)The *portable* and upstream version of irregex is at http://code.google.com/p/irregex/ The in-tree version we have for Chicken is hacked up for performance, so it is no longer portable. I think this is probably a huge red herring; the equal? code you mentioned does seem to have an off-by-one error. Have you tried just returning true instead of the assignments and "goto loop;" at the end?
Yes I did (I mentioned before, I did not post it without trying that one). This is the "seems to be correct" case: If I remove it, the prog will run without valgrind warnings into an endless loop. The same goes for the compiler; compiling with an equal? fixed according to the theory that this must be an off-by-one will not terminate either. At the same time some tests with csi and the fixed equal? gave correct results. My bet by now is that the off-by-one is there and ought to be fixed. However another bug relies on it, which would trigger the endless recursion. So we will need to kill both at once. The fact that the irregex code is modified give me hope that it is reasonable to analyse that part in more detail.
[Prev in Thread] | Current Thread | [Next in Thread] |