Revision history for Perl module Data::Alias

1.27  2022-12-02  XMATH
    - Fix tests on older perl versions

1.26  2022-12-01  XMATH
    - Fix compile error when using perl 5.37.2 or later
    - Improve diagnostic output from tests

1.25_01  2021-05-15  XMATH
    - Fix localized alias-assignment to previously non-existing hash element.
    - Avoid testing threading on broken perl versions
    - Fix certain linker errors by making sure perl's global variables are
      accessed through their accessor functions when applicable.

1.25  2021-05-11  XMATH
    - Reformatted this file per CPAN::Changes::Spec
    - Switched from Module::Install to ExtUtils::MakeMaker
    - Fix linker errors with dtrace-enabled perl.

1.24  2021-05-05  XMATH
    - bugfix: copy() no longer produces malformed optrees which under certain
      circumstances crashed perl 5.31.2 and later.  (contributed by TonyC)
    - update for removal of '.' from @INC in perl 5.26.

1.23  2021-04-30  XMATH
    - bugfix: fix aliasing semantic unintentionally being applied to subs
      defined after a parenthesized alias()-expression since perl 5.11.2.

1.22  2021-04-22  XMATH
    - bugfix: use SvCUR_set instead of direct SvCUR assignment to fix
      compilation problems with -DDEBUGGING builds.  (contributed by TonyC)
    - update for parser changes in v5.33.6.  (contributed by TonyC)

1.21  2017-12-08  ZEFRAM
    - update for context stack changes in Perl 5.23.8
    - update to accommodate PERL_OP_PARENT builds of Perl 5.21.11 or later
      (which is the default from Perl 5.25.1)
    - update for removal of LEX_KNOWNEXT in Perl 5.25.1
    - update test suite to not rely on . in @INC, which is no longer
      necessarily there from Perl 5.25.7
    - use cleaner wrap_op_checker() API to control op checking

1.20  2015-10-21  ZEFRAM
    - bugfix: avoid some C undefined behaviour from unsequenced side effects
      that in practice bit when using a newer gcc (4.9 rather than 4.7)
      with the parser token stack change in Perl 5.21.9
    - add doc note advising users to prefer the core aliasing facility on
      Perl 5.22

1.19  2015-10-21  ZEFRAM
    - bugfix: properly maintain op_last when munging ops
    - update for the parser's PL_expect changes in Perl 5.21.4
    - update for op_private stricture in Perl 5.21.4
    - update for sub references directly in stash in Perl 5.21.4
    - update for IS_PADGV()'s limited visibility in Perl 5.21.4
    - update for increased specialness of OP_PUSHMARK in Perl 5.21.6
    - update for distinct PADNAMELIST type in Perl 5.21.7
    - update for multideref optimisation in Perl 5.21.7, by a disgusting
      hack that depends on a flaw in the optimisation (which may disappear
      in the future) and which disables the optimisation entirely
    - add MYMETA.json to .gitignore

1.18  2013-09-21  ZEFRAM
    - bugfix: store peep chain link reliably under threads
    - update tests for Perl 5.19.4's removal of the special treatment of
      aliased undef in arrays
    - in doc, switch to consistent use of British English spellings
    - doc typo fix

1.17  2013-08-04  ZEFRAM
    - bugfix: correct the dtrace-related macro squashing for Perls prior
      to 5.13.8, where the macros had the wrong number of parameters and
      prevented compilation
    - bugfix: use core's PL_no_localize_ref string constant as data string
      rather than format string
    - update to handle the new padrange op type in Perl 5.17.6
    - update to handle the new op allocation mechanism in Perl 5.17.2
    - clarify and expand documentation around list-like assignments
    - clarify documentation of deref() regarding lvalueness
    - remove the bulk of the documentation from the README file

1.16  2011-11-17  ZEFRAM
    - bugfix: use supported API to put destructor calls on the save stack
      (the unsupported way used before was wrong for 64-bit systems on
      perl 5.13.1 and later)
    - document the behaviour of "alias return" in more detail
    - convert .cvsignore to .gitignore

1.15  2011-06-21  ZEFRAM
    - port to Perl 5.15.0, where the op type aelemfast has been split into
      aelemfast and aelemfast_lex
    - test compatibility with Devel::CallParser

1.14  2011-04-27  ZEFRAM
    - bugfix: never unhook peephole optimiser, because unhooking is liable
      to fail if anything else hooked it
    - bugfix: revise check for dorassign opcode to cope with FreeBSD's
      mutant Perl 5.8 that has it
    - test POD syntax and coverage

1.13  2011-04-25  ZEFRAM
    - bugfix: prevent the lexer getting confused if the first thing inside
      an alias{} block is an open paren
    - bugfix: don't crash if an rv2cv op is built with PL_parser null
    - bugfix: handle variant structure of entersub op which lacks (ex-)list
      op as direct child
    - bugfix: squash bogus dtrace-related macro definitions that are picked
      up due to defining PERL_CORE
    - switch all pp functions to internal linkage
    - avoid some compiler warnings
    - include .cvsignore file in distribution

1.12  2011-02-22  ZEFRAM
    - Updated to work with Perl version 5.13.10, where GvGP() and
      GvCV() are not directly-assignable lvalues

1.11  2011-01-13  ZEFRAM
    - Don't rely on details of core's pp_* functions to determine
      whether an opcode exists, because they can change unpredictably
      (and do change in Perl 5.13.9)

1.10  2010-11-21  ZEFRAM
    - Updated to work with Perl version 5.13.7, where lex_end()
      has disappeared and mod() is now in the public API under the
      name op_lvalue()

1.09  2010-11-15  ZEFRAM
    - Modify source filter test to use Filter::Util::Call directly
      instead of the deprecated Switch, and to not fail if it is not
      available, thus allowing tests to pass on Perl versions 5.13.1
      and above where Switch is no longer in the core distribution
    - Updated to work with Perl version 5.13.6, where global variables
      are managed in a different way from before

1.08  2010-10-22  ZEFRAM
    - Updated to work with Perl versions 5.11.0 up to 5.13.0,
      including particularly the major change in when rv2cv ops get
      built in 5.11.2

1.07  2007-09-10  XMATH
    - Fixed reference miscounting for 'my VAR' inside alias

1.06  2007-06-28  XMATH
    - Fixed crash when conditionally aliasing whole aggregate

1.05  2007-05-13  XMATH
    - Updated to work with recent bleadperl (5.9.5 patch 31154)

1.04  2007-05-03  XMATH
    - Avoid directly calling pp_* functions
    - Fixed copy() of empty list in scalar context
    - Updated to work with recent bleadperl (5.9.5 patch 31058)
    - Switched to using Module::Install
    - Added perl version compatibility test on Win32 and AIX

1.03  2007-03-16  XMATH
    - Updated to work with recent bleadperl (5.9.5 patch 29836)

1.02  2007-01-09  XMATH
    - Updated to work with recent bleadperl (5.9.5 patch 29570)

1.01  2006-09-29  XMATH
    - Worked around perl bug (wrong context of refgen due to prototype)
    - Updated to work with recent bleadperl
    - Warn on aliasing a lexical where the effect is limited in scope
      (category "closure")

1.00  2006-07-12  XMATH
    - Further enhanced performance of alias-assign
    - Fixed compile errors on non-gcc compilers
    - Fixed aliasing a constant expression
    - Don't export "copy" by default anymore
    - Properly reallocate ops (bug exposed by perl 5.9.4 patch 27773)
    - Enhanced performance of copy in void context
    - Alias-refgen properly makes stuff read-only that ought to be
    - Support defined-or-assign (//=) in perl 5.9.x

0.10  2006-06-03  XMATH
    - Enhanced performance of alias-assign
    - Made a note about 'local' in the docs

0.09  2006-05-22  XMATH
    - Suppress warnings when using 64-bit integers on 32-bit arch
    - 'local' now doesn't act differently on tied vars than on normal ones
    - Added "Useless use of alias" warning (category 'void')

0.08  2006-02-08  XMATH
    - Avoid giving the "tied array/hash" error when inappropriate, such
      as when the array/hash is merely the target of weakrefs

0.07  2006-02-06  XMATH
    - Removed outer lexical support, since it can't be made to work in
      any consistent way

0.06  2006-02-05  XMATH
    - Fixed memory mismanagement bug (crash)
    - Fixed parse failure of 'alias' or 'copy' at EOF

0.05  2006-02-02  XMATH
    - Split off Data::Swap again
    - Perl 5.9.3 support
    - Fixed alias-returning from within a nested block

0.04  2004-08-29  XMATH
    - Minor fix because PAUSE complained about missing version in Data::Swap

0.03  2004-08-29  XMATH
    - Initial version of Data::Alias  (incorporates Data::Swap)
    - Fixed swapping objects with weakrefs

0.02  2003-07-03  XMATH
    - Added Changes file
    - Disallow swapping an overloaded object with a non-overloaded one

0.01  2003-06-30  XMATH
    - Initial version

