* Bart Lateur <[EMAIL PROTECTED]> [2002-11-25 09:10]: > It is because it comes into the realm of undefined > behaviour. What it does is execution-order dependent, in > the least.
Ah, but in Perl, this order is defined. The following is guaranteed to work: select((select(FH), $|++)[0]); If the order were not specified, it couldn't. > my($x, $y, $z) = ($i++, $i++, $i++); This has extra side effects besides the explicit effects, that's why it doesn't work out well. You need to be aware of more than the (explicitly specified) order of execution for the explicit effects in order to predict its outcome. > If you *need*, to modify the argument list, I'd first > think of the three separate shift statements, but more > likely, as Bernie Cosell suggested, I'd use the splice. Obviously, dito. :-) -- Regards, Aristotle