------- Comment #1 from burnus at gcc dot gnu dot org 2010-02-12 12:40 ------- I cannot reproduce the problem with the array you have, but I can imagine one problem with the real program.
By default, local variables of subroutines/functions are put into STATIC memory; this no longer works if the function is called by different OpenMP threads simultaneously - or if the procedure is called recursively. Thus all local variables need to be put on the stack. The stack is used for variables in a RECURSIVE routine or when the -frecursive option (implied by -frecursive) is used. I would suggest to read the manual (man page) under the keyword '-frecursive" (including cross references). I do not know OSX well, but the following should work ulimit -s unlimited (Bash, SH) limit stacksize unlimited (TCSH, CSH) If you leave out the "unlimited", the current value will be shown. Note: The maximally allowed value can be lower due to system-wide setting ("hard limit"). -- burnus at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |WAITING http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43050