my $re = qr/a/;
say "a" =~ /$re/ || 0; # 1
say "A" =~ /$re/ || 0; # 0
say "a" =~ /$re/i || 0; # 1
say "A" =~ /$re/i || 0; # 0
my $pat1 = "(?^:a)";
say "a" =~ /$pat1/ || 0; # 1
say "A" =~ /$pat1/ || 0; # 0
say "a" =~ /$pat1/i || 0; # 1
say "A" =~ /$pat1/i || 0; # 0
my $pat2 = "a";
say "a" =~ /$pat2/ || 0; # 1
say "A" =~ /$pat2/ || 0; # 0
say "a" =~ /$pat2/i || 0; # 1
say "A" =~ /$pat2/i || 0; # 1 XXX
####
my ( $pat, $flags ) = re::regexp_pattern( $re );
####
my $re = eval "no re; qr/\$pat/$flags";