
On Mon, 19 Jan 2004, Travis Oliphant wrote:
Pearu Peterson wrote:
One possible workaround that might be worth to try is to separate the two offending functions (RMN2L and ASWFB) in specfun.f to two different files (rmn2l.f and aswfb.f). Hopefully, g77 will compile them with -O3. If not, then at least the sizes of files are much smaller in order to find a workaround.
I have taken aswfb out of the specfun file and now the rest of the specfun.f file compiles normally. The extracted subroutine still gives the error which I will submit to the gcc bug database.
Have you played with the loops and the code of this function? May be recoding with a different style might cause g77 to succeed?
It would appear that it is -O3 and -funroll-loops flags together that give the problem (any other combination of the flags does not seem to reproduce the error for me).
If that is the case then we can disable -funroll-loops instead of -O3 for bugy gcc versions, -O3 should be more useful than unrolling loops. This is very simple in build_flib.py. Could you sum up under which conditions the compiler bug appears? The following information should be enough: os.name os.uname sys.platform g77 --version # only the version numbers when there is a failure # and when not. Then I can make a patch to build_flib.py to resolve this issue.
What error are you getting on rmn21.f ?
I took this information from http://www.scipy.org/site_content/mailman?fn=scipy-user/2004-January/002459....
I don't see any error there.
Good. Pearu