Hi, Presently I'm looking at bug fdo 37341, which reports calc to hang when Goal Seek (sc/source/core/tool/interpr2.cxx, ScInterpreter::ScBackSolver()) is used. The cause of the problem is not that too many iterations are needed, but that MAXRECURSION in sc/source/core/data/formulacell.cxx, ScFormulaCell::Interpret() is reached. Increasing MAXRECURSION 'solves' the problem.
I think increasing MAXRECURSION from its present value (400) to 800 is no problem. 10 years ago its value was 500 and in the past 1 years the available memory has been more than doubled. But that does not really solve the problem, it only shifts the point where the problem will show. Shouldn't a global error (or at least warning) be generated when MAXRECURSION is reached? After all, the result of ScFormulaCell::Interpret() is not correct in that case. Unfortunately, I can't quite grasp the recursion/interation process in ScFormulaCell::Interpret(), so I can't generate the appropiate error. Do you have any suggestions about how to properly solve this? To me just increasing MAXRECURSION to 800 is a dirty hack. Winfried
_______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice