my $temp = 'xxx$1';
my $repl = eval q{"$temp"};
####
use strict;
use warnings;
use 5.010;
my $x = 10;
my $result = sprintf '%s', 'my $y = $x;';
say $result;
--output:--
my $y = $x;
####
my $x = 10;
eval (sprintf '%s', 'my $y = $x');
say $y; #line 14
--output:--
Global symbol "$y" requires explicit package name at 2perl.pl line 14.
Execution of 2perl.pl aborted due to compilation errors.
####
my $x = 10;
eval {my $y = $x};
say $y; #line 14
--output:--
Global symbol "$y" requires explicit package name at 2perl.pl line 14.
Execution of 2perl.pl aborted due to compilation errors.