Anonymous user
Talk:Short-circuit evaluation: Difference between revisions
→Compiler optimisations?: added a comment about there being at least two FORTRAN II compilers for the IBM 1620.
(→Compiler optimisations?: added a comment about there being at least two FORTRAN II compilers for the IBM 1620.) |
|||
(One intermediate revision by one other user not shown) | |||
Line 96:
:Your last sentence reminds me of a compiler trick with gfortran: I wrote a little program to see how a bad program could crash (changing the value of a constant, IIRW). Without optimisation, it crashed, with optimisations, it didn't. It's perfectly correct in regard of the Fortran standard: such a program has unspecified behaviour, thus crashing or not according to a compiler option is as "valid" as blowing up the computer altogether or anything else. But I still feel it's not fair, and I consider this a bug. At least, it's incredibly misleading. This behaviour disappeared with the -fnoipa-cp compiler option. [[User:Arbautjc|Arbautjc]] ([[User talk:Arbautjc|talk]]) 22:32, 20 July 2015 (UTC)
::Ahem. I've done that too, and with intent. The IBM1620's Fortran II compiler allowed only simple expressions for array indexing, (''const''*''variable'' +- ''constant'') and I wanted (I + J) inside a READ statement's list and there was some reason why I couldn't use an implicit DO-loop as in (A(K),K = I + J,...) or similar
::: There were (at least) two Fortran II compilers for the IBM 1620. One was written by IBM, the other was a one-pass compiler and written by Dr. D. G. Robinson, D. A. Jardine (and others) of DuPont of Canada. Locally, we called it Fortran 2.5 and it had a lot of Fortran IV features. It allowed almost any expression for array indexing. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 07:50, 3 January 2019 (UTC)
|