I'm afraid I don't really understand your first point:
"reval" only evaluates the code and then returns the value.
So using the "say" doesn't work because it evaluates to nothing, and returns nothing.
As my example showed, the code is never evaluated because it fails to
compile due to say
not being recognized. My attempt at enabling the
feature in the Safe
compartment via use feature
It works in a standard eval:
$ perl -e 'eval q[use feature qw[ say ]; say "hello"]'
The code in your update shows the same problem that I'm struggling
with, namely that use feature
is not enabling the feature
in the Safe compartment.
Perhaps I should rephrase the question: how does one get use feature to work in a Safe compartment?