/* XXX Configure probe for the length type of *truncate() needed XXX */
Off_t len;
-#if Size_t_size > IVSIZE
+#if Off_t_size > IVSIZE
len = (Off_t)POPn;
#else
len = (Off_t)POPi;
DIE(aTHX_ "ioctl is not implemented");
#endif
else
-#ifdef HAS_FCNTL
+#ifndef HAS_FCNTL
+ DIE(aTHX_ "fcntl is not implemented");
+#else
#if defined(OS2) && defined(__EMX__)
retval = fcntl(PerlIO_fileno(IoIFP(io)), func, (int)s);
#else
else {
PUSHp(zero_but_true, ZBTLEN);
}
- RETURN;
-
-#else
- DIE(aTHX_ "fcntl is not implemented");
#endif
+ RETURN;
}
PP(pp_flock)
break;
}
MARK = ORIGMARK;
- /* XXX Remove warning at end of deprecation cycle --RD 2002-02 */
- if (SP - MARK == 1) {
- TAINT_PROPER("system");
- }
- else if (ckWARN2(WARN_TAINT, WARN_DEPRECATED)) {
- Perl_warner(aTHX_ packWARN2(WARN_TAINT, WARN_DEPRECATED),
- "Use of tainted arguments in %s is deprecated", "system");
- }
+ TAINT_PROPER("system");
}
PERL_FLUSHALL_FOR_CHILD;
#if (defined(HAS_FORK) || defined(AMIGAOS)) && !defined(VMS) && !defined(OS2) || defined(PERL_MICRO)
result = 0;
if (PL_op->op_flags & OPf_STACKED) {
SV *really = *++MARK;
+# ifdef WIN32
+ value = (I32)do_aspawn(really, MARK, SP);
+# else
value = (I32)do_aspawn(really, (void **)MARK, (void **)SP);
+# endif
}
- else if (SP - MARK != 1)
+ else if (SP - MARK != 1) {
+# ifdef WIN32
+ value = (I32)do_aspawn(Nullsv, MARK, SP);
+# else
value = (I32)do_aspawn(Nullsv, (void **)MARK, (void **)SP);
+# endif
+ }
else {
value = (I32)do_spawn(SvPVx(sv_mortalcopy(*SP), n_a));
}
break;
}
MARK = ORIGMARK;
- /* XXX Remove warning at end of deprecation cycle --RD 2002-02 */
- if (SP - MARK == 1) {
- TAINT_PROPER("exec");
- }
- else if (ckWARN2(WARN_TAINT, WARN_DEPRECATED)) {
- Perl_warner(aTHX_ packWARN2(WARN_TAINT, WARN_DEPRECATED),
- "Use of tainted arguments in %s is deprecated", "exec");
- }
+ TAINT_PROPER("exec");
}
PERL_FLUSHALL_FOR_CHILD;
if (PL_op->op_flags & OPf_STACKED) {
case OP_GPWENT:
# ifdef HAS_GETPWENT
pwent = getpwent();
+#ifdef POSIX_BC /* In some cases pw_passwd has invalid addresses */
+ if (pwent) pwent = getpwnam(pwent->pw_name);
+#endif
# else
DIE(aTHX_ PL_no_func, "getpwent");
# endif