http://www.perlmonks.org?node_id=332900


in reply to Re: Re: inheritance turns back and bites
in thread inheritance turns back and bites

sorry, but:
perl -wle' sub new { bless \pop, shift } my $main = new ("ClassName", 42);' Modification of a read-only value attempted at -e line 2. This is perl, v5.6.1 built for i586-linux This is perl, v5.8.0 built for i686-linux

am i overlooking something?

Update: same result with
This is perl, v5.8.2 built for i686-linux

Replies are listed 'Best First'.
Re: Re: Re: Re: inheritance turns back and bites
by dada (Chaplain) on Mar 01, 2004 at 14:18 UTC
    you are correct, but there should be something strange going on under the hood. it seems only Windows allows the bless \pop, shift trick.

    This is perl, v5.8.0 built for MSWin32-x86-multi-thread -> ok
    This is perl, v5.8.2 built for cygwin-thread-multi-64int -> ok
    This is perl, v5.8.0 built for i686-linux -> dies

    sorry for not checking this beforehand. however, the reason why it works on a platform and fails on another is beyond the scope of this thread :-)

    cheers,
    Aldo

    King of Laziness, Wizard of Impatience, Lord of Hubris

Re: Re: Re: Re: inheritance turns back and bites
by borisz (Canon) on Mar 01, 2004 at 14:07 UTC
    Interesting, your sample code did _not_ result in a errormessage for me on linux with perl 5.8.1! But it does with my old perl 5.6.1 on the same machine.
    Boris
      oh, interesting. i have 5.8.2 only at home, i'll try with that later. but i can't find anything about that in the perldelta.pod of 5.8.1...