diagnostics: don’t truncate wrapped links
Increase $diagnostics::VERSION to 1.32
Alphabetise perldiag
Test multiline links in diagnostics.t
Devel::PPPort: force string when testing SvPV_renew

Otherwise we could be reallocating a buffer shared by another scalar.
sv.c:sv_grow: accept read-only COWs

sv_grow has long been permitted on read-only scalars.  This stopped
being the case all the time when 9a0a85075 and 1620522e4 allowed read-
nly copy-on-write scalars.  Because sv_force_normal has multiple
uses, sv_grow ended up croaking on *these* read-only scalars, but
not others.

This commit makes things consistent with the way they used to be.
Make Storable support read-only COWs

Unfortunately, the historical double meaning of SvREADONLY makes
it hard to do the correct thing under all perl versions.

If this proves too problematic for other XS modules, we might need
to forbid read-only COWs, which would be unfortunate, since they
speed things up.

However, a CPAN search reveals nothing outside core for
READONLY.*?(IsCOW|FAKE).
Mark COWable constants as COWable at compile time

This allows ‘$_ = "hello"’ to do COW without having to copy
that constant.

The reason this did not work before is that we never do copy-on-write
with existing read-only scalars that are not already marked COW, as
doing so modifies the string buffer, which the read-only flag may be
intended to protect.

At compile time, most constants start out mutable and are made read-
only in ck_svconst.  So there we can check that the constant is indeed
still mutable (and COWable) and mark it as a COW scalar before making
it read-only.
constant.pm: Note that list constants are not
[perl #92260] Devel::Peek::fill_mstats and non-PVs

Devel::Peek::fill_mstats assumed that the argument was >= SVt_PV so
it crashed on brand new undef scalars.  Use sv_grow, instead of
SvGROW.  Since sv_grow also handles COWs, we can remove the special
COW check.