﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	difficulty
440	'Error: stack overflow' error in unexpected situation	Alan Post		"This ticket is a follow-up to the [http://lists.gnu.org/archive/html/chicken-users/2010-12/msg00074.html email thread] I posted about this issue.

I'm running chicken 2bb09388cff32b7ecb49f39df0692e2d4db7a0bf (silly link case problems, tiring) from the experimental branch.  I'm on OpenBSD 4.8 running in a VMWare virtual machine.

This bug refers to the [http://wiki.call-cc.org/eggref/4/genturfahi genturfa'i egg].

For this bug, please check out r21827 from the egg repository, apply the patches attached to this e-mail, and build the egg:

{{{
svn co -r21827 https://code.call-cc.org/svn/chicken-eggs/release/4/genturfahi/trunk
cd trunk
patch -p1 < patch-conf    # enable full debugging
patch -p1 < patch-memoize # the do-nothing memoizer
chicken-install -s
}}}

Run the genturfahi command-line program after installing the egg:

{{{
$ genturfahi

Error: stack overflow

        Call history:

        nunjavni.scm:176: nunjavni-*      
        nunjavni.scm:140: venunjmina-rodanunvalsi         
        morji.scm:47: hash-table-exists?          
        bootstrap.scm:369: genturfahi#morji-nunjavni-valsi        
        morji.scm:47: hash-table-exists?          
        morji.scm:48: hash-table-set!     
        bootstrap.scm:366: genturfahi#morji-nunjavni-je   
        nunjavni.scm:245: venunjmina-rodanunvalsi         
        nunjavni.scm:247: filter          
        morji.scm:47: hash-table-exists?                <--
}}}

This error is happening while genturfahi is initializing, the most outward relevant line being bootstrap.scm:366.

If you comment out morji.scm:47 and morji.scm:48, run chicken-install -s, the program will run without producing any output (which is expected.)

I would expect to be able to leave morji.scm:47 and morji.scm:48 uncommented in the code and run genturfahi without generating a stack overflow error.

This problem *also* exists when running the code from csi, without compiling it:

{{{
# This command may give an error if csi is an alias that includes
# command-line arguments, as in: alias csi='csi -quiet'.  Run csi 
# without command-line arguments.
#
$ csi chicken-csi.scm

Error: stack overflow

        Call history:

        <eval>    [morji-nunjavni] (not (hash-table-exists? morji sumti))
        <eval>    [morji-nunjavni] (hash-table-exists? morji sumti)
        <eval>    [morji-nunjavni] (hash-table-set! morji sumti javni)
        <eval>    [morji-nunjavni] (apply nunjavni sumti)
        <eval>    [nunjavni-+] (##sys#get-keyword (quote cmene:) tmp268)
        <eval>    [nunjavni-+] (nunjavni-* javni cmene: cmene)
        <eval>    [nunjavni-*] (##sys#get-keyword (quote cmene:) tmp241)
        <eval>    [nunjavni-*] (venunjmina-rodanunvalsi cmene)
        <eval>    [morji-nunjavni] (not (hash-table-exists? morji sumti))
        <eval>    [morji-nunjavni] (hash-table-exists? morji sumti)     <--
}}}

This error also goes away if you comment out morji.scm:47 and morji.scm:48."	defect	closed	major	4.9.0	core libraries	4.6.x	invalid		alanpost@…	
