At 4:22 PM -0700 4/3/01, Peter Prymmer wrote:
>CC/DECC
>/Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/Define=("V
> if ((retsts = sys$setddir(&dirdsc,0,0)) & 1)
>ST(0) = &PL_sv
> ..........................^
>%CC-I-IMPLICITFUNC, In this statement, the identifier "sys$setddir" is
> implicitly declared as a function.
> At line number 258 in stdio.xs.
>
Hmm. It's in starlet.h on later systems, but it's not clear to me if
the issue is OVMS pre-7.0, oldish C compiler, or VAX compiler and/or
C RTL distribution. Has anyone else run into this? Since
sys$setddir is #define'd in the same place that it's prototyped, we
could test for it and prototype it in vmsish.h if it's missing.
Here's what's in starlet.h:
/* $SETDDIR */
/* */
/* Read and set the default directory string for the process. */
/* */
/* $SETDDIR [new-dir-addr] ,[length-addr] ,[cur-dir-addr] */
/* */
/* new-dir-addr = a descriptor of the new default directory. */
/* */
/* length-addr = a word that is to receive the length of the */
/* current default directory. */
/* */
/* cur-dir-addr = descriptor of a buffer that is to receive */
/* the current default directory. */
#define sys$setddir SYS$SETDDIR
#ifdef __NEW_STARLET
int sys$setddir(
void *newdiraddr,
unsigned short int *lengthaddr,
void *curdiraddr);
#else /* __OLD_STARLET */
int sys$setddir(__unknown_params);
#endif /* #ifdef __NEW_STARLET */
--
____________________________________________
Craig A. Berry
mailto:[EMAIL PROTECTED]