If a regex is defined in string form, then no regex modifiers are associated with it unless they happen to be explicitly embedded within the string using a (?adlupimsx-imsx) or (?adluimsx-imsx:pattern) construct (see Extended Patterns in perlre).
c:\@Work\Perl\monks>perl -wMstrict -le
"my $rs1 = '(?:(?-s).*)';
;;
my $rx1 = qr{ ($rs1) (.*) }xms;
print qq{\$rx1: $rx1};
;;
qq{foo\nBAR} =~ m{ $rx1 }xms;
print qq{from \$rx1: \$1 '$1' \$2 '$2'};
;;
my $rs2 = '(?:.*)';
;;
my $rx2 = qr{ ($rs2) (.*) }xms;
print qq{\$rx2: $rx2};
;;
qq{wig\nWAG} =~ m{ $rx2 }xms;
print qq{from \$rx2: \$1 '$1' \$2 '$2'};
"
$rx1: (?^msx: ((?:(?-s).*)) (.*) )
from $rx1: $1 'foo' $2 '
BAR'
$rx2: (?^msx: ((?:.*)) (.*) )
from $rx2: $1 'wig
WAG' $2 ''
Give a man a fish: <%-(-(-(-<