static char Sccsid
[] = "a3.c @(#)a3.c 1.1 10/1/82 Berkeley ";
/* must allocate something to ")reset" properly */
*sp
++ = newdat(DA
, 1, 0);
register struct item
*p
, *q
;
q
= newdat(DA
, 1, p
->rank
);
register struct item
*p
, *q
;
if(p
->type
!= DA
|| p
->rank
> 1 || q
->size
< 0)
/* Allow null vector to be reshaped if one of the
for(i
=0; i
< p
->size
; i
++)
if (fix(*dp
++) == 0) goto null_ok
;
for(i
=0; i
<p
->size
; i
++){
if (*dp
< 0) /* Negative dimensions illegal */
r
= newdat(q
->type
, p
->size
, s
);
cp
+= copy(q
->type
, q
->datap
, cp
, i
);