[perl #117947] Verify lvalueness of XSUBs at run time

If the sub is not visible at compile time, the op tree is flagged such
that pp_entersub will know whether to check the lvalueness of the
called sub.

That check has been in pp_entersub since da1dff9483c.  When I moved
it to pp_entersub in that commit, I only added it to the pure-Perl
branch, not to the XS branch, allowing all XSUBs to be treated as
lvalues if they are not visible at compile time.
diag.t, perldiag.pod: Make sure S is used for Perl_warn

Perl_warn does not allow a category, and is not used in conjunction
with ckWARN checks (if it is, that is a bug, as such warnings will
be emitted when the category is enabled, but not fatal when the
category is fatal).  So such warnings are mandatory and should be
marked with S.