This commit allows &CORE::sleep to be called through references and
via ampersand syntax. pp_sleep is modified to take into account the
nulls pushed on to the stack in pp_coreargs, which happens because
pp_coreargs has no other way to tell sleep how many arguments it’s
actually getting. See commit
0163043a for details.
Unfortunately, sleep with no args is nearly impossible to test porta-
bly. But I have checked that it works.
case KEY_lstat:
case KEY_pop:
case KEY_push:
- case KEY_setpgrp: case KEY_shift: case KEY_sleep:
+ case KEY_setpgrp: case KEY_shift:
case KEY_splice:
case KEY_srand: case KEY_stat: case KEY_substr:
case KEY_sysopen:
Time_t when;
(void)time(&lasttime);
- if (MAXARG < 1)
+ if (MAXARG < 1 || (!TOPs && !POPs))
PerlProc_pause();
else {
duration = POPi;
test_proto "shm$_" for qw "ctl get read write";
test_proto 'shutdown';
test_proto 'sin';
+test_proto 'sleep';
test_proto "socket$_" for "", "pair";
test_proto 'sprintf';