Exception caused by calling a pure function repeatedly
    ixid 
    nuaccount at gmail.com
       
    Tue May 29 19:33:40 PDT 2012
    
    
  
Having solved Project Euler 300 I wanted to explore which of the 
strictly superior fold set were redundant but started getting an 
exception thrown after a few iterations.
I've changed the offending part to try to make it as impact-free 
as possible (my code is not pretty :)), it's now pure and the 
return is only used with writeln to track the progress of the 
function yet it still causes an exception after 4 or 5 iterations.
http://pastebin.com/j6REskhd
The offending function is 'solve', which I've repeatedly called 
to make the exception as simple as possible along with const data 
and limited use of the return data. I've tried making it 
pure/const as well as adding delete on the main data and also 
removing pure and calling the garbage collector. This is the 
stack trace crash assembler command:
7C90E8E5  push        ebx
Does this mean there is a stack overflow? Any ideas what on earth 
is going on?
    
    
More information about the Digitalmars-d-learn
mailing list