This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
clean up leave_scope()
authorDavid Mitchell <davem@iabyn.com>
Fri, 12 Aug 2016 08:59:42 +0000 (09:59 +0100)
committerDavid Mitchell <davem@iabyn.com>
Fri, 12 Aug 2016 13:00:02 +0000 (14:00 +0100)
commitc97287825d5d2dd270f14027ddc2fe97a4bfc11c
tree9db3a99eb7855e621f7719dd685f7efd7863577f
parent5208a0305e9e82c534fa034515d54a0409dfcc77
clean up leave_scope()

Rather than having a whole bunch of casting macros like

    #define ARG0_SV  MUTABLE_SV(arg0.any_ptr)

just add extra pointer types to the ANY union and directly do

    arg0.any_sv

etc.

Also, rename arg0, arg1, arg2 to a0, a1, a2 and reverse their order;
previously if 3 args A,B,C were pushed onto the savestack, they were
popped as a0=C, a1=B, a2=A; now do it as a0=A, a1=B, a2=C. The previous
(rather odd) order was an artifact of the old way leave_scope() used to
pop its args.

There should be no functional changes.
perl.h
scope.c