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
Support for NAMELIST i/o from Jerry Berkman.
[unix-history]
/
usr
/
src
/
usr.bin
/
f77
/
pass1.vax
/
proc.c
diff --git
a/usr/src/usr.bin/f77/pass1.vax/proc.c
b/usr/src/usr.bin/f77/pass1.vax/proc.c
index
8305320
..
d2a1756
100644
(file)
--- a/
usr/src/usr.bin/f77/pass1.vax/proc.c
+++ b/
usr/src/usr.bin/f77/pass1.vax/proc.c
@@
-15,8
+15,14
@@
static char sccsid[] = "@(#)proc.c 5.3 (Berkeley) %G%";
*
* University of Utah CS Dept modification history:
*
*
* University of Utah CS Dept modification history:
*
- * $Header: proc.c,v
3.11 85/06/04 03:45:29
donn Exp $
+ * $Header: proc.c,v
5.2 85/08/10 05:03:34
donn Exp $
* $Log: proc.c,v $
* $Log: proc.c,v $
+ * Revision 5.2 85/08/10 05:03:34 donn
+ * Support for NAMELIST i/o from Jerry Berkman.
+ *
+ * Revision 5.1 85/08/10 03:49:14 donn
+ * 4.3 alpha
+ *
* Revision 3.11 85/06/04 03:45:29 donn
* Changed retval() to recognize that a function declaration might have
* bombed out earlier, leaving an error node behind...
* Revision 3.11 85/06/04 03:45:29 donn
* Changed retval() to recognize that a function declaration might have
* bombed out earlier, leaving an error node behind...
@@
-737,9
+743,10
@@
return(leng);
char namelistname[16];
struct namelistentry
{
char namelistname[16];
struct namelistentry
{
- char varname[16];
+ char varname[16];
# 16 plus null padding -> 20
char *varaddr;
char *varaddr;
- int type; # negative means -type= number of chars
+ short int type;
+ short int len; # length of type
struct dimensions *dimp; # null means scalar
} names[];
};
struct dimensions *dimp; # null means scalar
} names[];
};
@@
-784,13
+791,15
@@
for(q = np->varxptr.namelist ; q ; q = q->nextp)
preven(ALILONG);
putstr(asmfile, varstr(VL,v->varname), 16);
praddr(asmfile, v->vstg, v->vardesc.varno, v->voffset);
preven(ALILONG);
putstr(asmfile, varstr(VL,v->varname), 16);
praddr(asmfile, v->vstg, v->vardesc.varno, v->voffset);
- prconi(asmfile, TYINT,
+ prconi(asmfile, TYSHORT, type );
+ prconi(asmfile, TYSHORT,
type==TYCHAR ?
type==TYCHAR ?
- -(v->vleng->constblock.const.ci) : (ftnint) type);
+ (v->vleng->constblock.const.ci) :
+ (ftnint) typesize[type]);
if(v->vdim)
{
praddr(asmfile, STGINIT, dimno, (ftnint)dimoffset);
if(v->vdim)
{
praddr(asmfile, STGINIT, dimno, (ftnint)dimoffset);
- dimoffset +=
3 + v->vdim->ndim
;
+ dimoffset +=
(3 + v->vdim->ndim) * SZINT
;
}
else
praddr(asmfile, STGNULL,0,(ftnint) 0);
}
else
praddr(asmfile, STGNULL,0,(ftnint) 0);