Branch: refs/heads/blead
Home: https://github.com/Perl/perl5
Commit: bcaa4f978cf94bb1637c7bd63431b321a46328ff
https://github.com/Perl/perl5/commit/bcaa4f978cf94bb1637c7bd63431b321a46328ff
Author: Paul "LeoNerd" Evans <[email protected]>
Date: 2024-02-15 (Thu, 15 Feb 2024)
Changed paths:
M op.c
M pod/perldiag.pod
M t/lib/croak/op
Log Message:
-----------
Forbid subsequent use VERSION declarations past the v5.39 boundary
A `use VERSION` statement of v5.39 or later will imply a `use builtin`
version bundle, which may import new lexical functions into the calling
scope. If we were to permit a subsequent statement when either is past
this boundary, we might have to un-import lexical functions that should
no longer be present. The concept of what it even means to un-import a
lexical function is not well-defined.
By forbidding such a subsequent version declaration, we can avoid many
awkward questions about what it would mean to implement un-import of
lexicals.