projects
/
unix-history
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
tags
|
clone url
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Implement formal functions and procedures
[unix-history]
/
usr
/
src
/
usr.bin
/
pascal
/
src
/
put.c
diff --git
a/usr/src/usr.bin/pascal/src/put.c
b/usr/src/usr.bin/pascal/src/put.c
index
6075c76
..
f8d39fb
100644
(file)
--- a/
usr/src/usr.bin/pascal/src/put.c
+++ b/
usr/src/usr.bin/pascal/src/put.c
@@
-1,6
+1,6
@@
/* Copyright (c) 1979 Regents of the University of California */
/* Copyright (c) 1979 Regents of the University of California */
-static char sccsid[] = "@(#)put.c 1.
2
%G%";
+static char sccsid[] = "@(#)put.c 1.
3
%G%";
#include "whoami.h"
#include "opcode.h"
#include "whoami.h"
#include "opcode.h"
@@
-86,6
+86,7
@@
put(a)
case O_CASE1OP:
case O_CASE2OP:
case O_CASE4OP:
case O_CASE1OP:
case O_CASE2OP:
case O_CASE4OP:
+ case O_FRTN:
case O_WRITES:
case O_WRITEF:
case O_MAX:
case O_WRITES:
case O_WRITEF:
case O_MAX:
@@
-241,7
+242,10
@@
around:
#endif
word( ( short ) *( ( long * ) &p[1] ) );
return (oldlc);
#endif
word( ( short ) *( ( long * ) &p[1] ) );
return (oldlc);
- case O_POP:
+ case O_FCALL:
+ if (p[1] == 0)
+ goto longgen;
+ /* and fall through */
case O_PUSH:
if (p[1] == 0)
return (oldlc);
case O_PUSH:
if (p[1] == 0)
return (oldlc);
@@
-254,8
+258,8
@@
around:
goto longgen;
case O_TRA4:
case O_CALL:
goto longgen;
case O_TRA4:
case O_CALL:
+ case O_FSAV:
case O_GOTO:
case O_GOTO:
- case O_TRACNT:
case O_NAM:
case O_READE:
/* absolute long addressing */
case O_NAM:
case O_READE:
/* absolute long addressing */