"struct" program mishandles computed GOTO's
Bruce Jerrick
root at ogcvax.UUCP
Wed Apr 11 19:37:36 AEST 1984
Subject: "struct" mishandles computed GOTO's
Index: usr.bin/struct/* 4.2BSD
Description:
"struct" will not properly handle a computed GOTO if
the comma following the label list (...) isn't there.
That comma is optional according to Fortran.
Repeat-By:
Put the program between "----" below into file "bug.f".
Verify that it will go through "struct" correctly as is
by doing:
% struct bug.f
(with or without "-s" flag; results are the same).
Then change the computed GOTO from:
GOTO (10,20), I
to:
GOTO (10,20) I
and repeat "struct" command. There will be messages
about unreachable statements, and output will be
incorrect.
------------------------------------------------------------
PROGRAM BUG
C "struct" will not properly handle the computed GOTO if
C the comma following the label list (...) isn't there.
C That comma is optional according to Fortran.
I=2
GOTO (10,20), I
10 WRITE(6,100)
GOTO 90
20 WRITE(6,200)
GOTO 90
90 WRITE(6,900)
STOP
100 FORMAT(' STATEMENT 10')
200 FORMAT(' STATEMENT 20')
900 FORMAT(' STATEMENT 90')
END
------------------------------------------------------------
--
Bruce Jerrick
Oregon Graduate Center
More information about the Comp.bugs.4bsd.ucb-fixes
mailing list