my $foo = $!;
my $errno = POSIX::errno();
- local $TODO;
- $TODO = 'POSIX::errno() munged by autoloading on VMS'
- if $Is_VMS && $test == 0;
-
# Force numeric context.
is( $errno + 0, $foo + 0, 'autoloading and errno() mix' );
}
char fileified[NAM$C_MAXRSS+1];
char temp_fspec[NAM$C_MAXRSS+300];
int retval = -1;
+ int saved_errno, saved_vaxc_errno;
if (!fspec) return retval;
+ saved_errno = errno; saved_vaxc_errno = vaxc$errno;
strcpy(temp_fspec, fspec);
if (statbufp == (Stat_t *) &PL_statcache)
do_tovmsspec(temp_fspec,namecache,0);
}
# endif
}
+ /* If we were successful, leave errno where we found it */
+ if (retval == 0) { errno = saved_errno; vaxc$errno = saved_vaxc_errno; }
return retval;
} /* end of flex_stat() */