On Tues. Jan 28th I posted:
A user here seems to have uncovered a very basic bug. He writes:
There appears to be a bug in the Sun-4 Fortran 1.4 compiler associated
with specifying the values of logical variables in a DATA statement.
When the following program
is compiled with f77 on a Sun-4 (SunOS 4.1.1) with no options and then
executed, the output may be either 'F T' or 'T T'. Repeated execution
without recompilation always gives the same result, but if the program
is recompiled, the answer may change. If variable 'l2' is deleted from
the program, the value of l1 is always reported correctly.
This problem is specific to Sun-4's. Compilation and execution on a
Sun-3 always gives the correct answer.
Is there a known bug in the Sun-4 compiler that causes this unpredictable
behavior? Or do I not know how to write Fortran?
I received many very rapid and correct replys. The problem is a documented
bug with the /tmpfs file system. The immediate solution was to disable it:
1) comment out - swap /tmp tmp rw 0 0 in /etc/fstab
2) comment out - /tmp in rc.local (then reboot)
Once this was done, the program gave consistent and correct answers.
I was given three patch numbers available from Sun to fix this problem:
100174-04/5 to fix this and other /tmpfs bugs
100332-03 to patch Fortran 1.4
I have ordered these through the Sun patch database system.
Many thanks to the following people who gave the correct answer and/or
Ric Anderson (email@example.com)
Dave Yearke (firstname.lastname@example.org)
David Hough (David.Hough@eng.sun.com)
Also thanks to the following people for some additional suggestions:
John Benjamins (email@example.com)
Debbie McGlade (firstname.lastname@example.org)
MIT Haystack Observatory
This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:06:35 CDT