For Programmers: Free Programming Magazines  


Home > Archive > Fortran > January 2008 > Re: Stack overflow problem but increasing stack size does not solve the problem









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Re: Stack overflow problem but increasing stack size does not solve the problem
James Van Buskirk

2008-01-26, 7:21 pm

"fj" <francois.jacq@irsn.fr> wrote in message
news:fc5d8995-70e7-42ea-9b03-dad07459dfa3@l32g2000hse.googlegroups.com...

[color=darkred]
> Just another comment about your first example : with an F90 compiler
> it cannot even compile correctly, the compiler issuing a message like
> "routine1 cannot call itself because it is not declared recursive"


Compilers that date back to the f77 days may accept it as an
extension because that was a reasonable way to specify recursive
procedures before the standard did.

65*2001*8 = 1040520
2**20 = 1048576

It doesn't take to much imagination to envision the stack growing
beyond 8 kB in RTL initialization. Assuming variables defined in
the main program are allocated on the stack, we could get overflow.

Also having an object file around that requests unbounded recursion
adds an element of danger to our tests. Make sure that all object
files are deleted, make sure that file2 is the one you want, set
the stack limit to at least 2MB, and recompile everything.

--
write(*,*) transfer((/17.392111325966148d0,6.5794487871554595D-85, &
6.0134700243160014d-154/),(/'x'/)); end


Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com