Changeset 2936

Show
Ignore:
Timestamp:
05/10/05 19:29:59 (4 years ago)
Author:
autrijus
svk:copy_cache_prev:
4498
Message:

* PGE parsefails no longer fatal.
* fix rules.t so it largely runs. don't enable it yet!

Files:
4 modified

Legend:

Unmodified
Added
Removed
  • src/Pugs/AST.hs

    r2926 r2936  
    168168 
    169169instance Value VMatch where 
     170    fromVal (VRef r) = fromVal =<< readRef r 
    170171    fromVal (VMatch m) = return m 
    171     fromVal (VRef r) = fromVal =<< readRef r 
    172     fromVal v = castFail v 
     172    fromVal (VList (x:_)) = fromVal x 
     173    fromVal _ = return $ mkMatchFail 
    173174 
    174175instance Value VRef where 
  • src/Pugs/Prim.hs

    r2935 r2936  
    760760    case rv of 
    761761        Just m  -> fromVal (matchToVal m) 
    762         Nothing -> fail ("Cannot parse PGE: " ++ pge) 
     762        Nothing -> do 
     763            liftIO $ putStrLn ("*** Cannot parse PGE: " ++ re ++ "\n*** Error: " ++ pge) 
     764            return mkMatchFail 
    763765 
    764766doMatch cs MkRulePCRE{ rxRegex = re } = do 
  • t/rules/Disabled/rules.t

    r2406 r2936  
    66use v6; 
    77use Test; 
    8  
    9 plan 1581; 
    108 
    119 
     
    2624# 2: abc        abc     y       $-[0]   0 
    2725# 3: abc        abc     y       $+[0]   3 # SKIP 
    28 is(eval '"abc" ~~ rx:perl5/abc/ && $0', "abc", 're_tests 1/0 (#1)', :todo); 
    29 is(eval '"abc" ~~ rx:perl5/abc/ && getpos($/, 0)', 0, 're_tests 1/0 (#2)', :todo); 
    30 is(eval '"abc" ~~ rx/abc/ && $0', "abc", 're_tests 2/0 (#3)', :todo); 
    31 is(eval '"abc" ~~ rx/abc/ && getpos($/, 0)', 0, 're_tests 2/0 (#4)', :todo); 
     26is(("abc" ~~ /abc/ && $0), "abc", 're_tests 2/0 (#3)'); 
     27is(("abc" ~~ /abc/ && $/.from), 0, 're_tests 2/0 (#4)'); 
    3228# 4: abc        xbc     n       -       - 
    33 ok(eval 'not ("xbc" ~~ rx:perl5/abc/)', 're_tests 3  (#5)', :todo); 
    34 ok(eval 'not ("xbc" ~~ rx/abc/)', 're_tests 4  (#6)', :todo); 
     29ok((not ("xbc" ~~ /abc/)), 're_tests 4  (#6)'); 
    3530# 5: abc        axc     n       -       - 
    36 ok(eval 'not ("axc" ~~ rx:perl5/abc/)', 're_tests 5  (#7)', :todo); 
    37 ok(eval 'not ("axc" ~~ rx/abc/)', 're_tests 6  (#8)', :todo); 
     31ok((not ("axc" ~~ /abc/)), 're_tests 6  (#8)'); 
    3832# 6: abc        abx     n       -       - 
    39 ok(eval 'not ("abx" ~~ rx:perl5/abc/)', 're_tests 7  (#9)', :todo); 
    40 ok(eval 'not ("abx" ~~ rx/abc/)', 're_tests 8  (#10)', :todo); 
     33ok((not ("abx" ~~ /abc/)), 're_tests 8  (#10)'); 
    4134# 7: abc        xabcy   y       $&      abc 
    4235# 8: abc        xabcy   y       $-[0]   1 
    4336# 9: abc        xabcy   y       $+[0]   4 # SKIP 
    44 is(eval '"xabcy" ~~ rx:perl5/abc/ && $0', "abc", 're_tests 9/0 (#11)', :todo); 
    45 is(eval '"xabcy" ~~ rx:perl5/abc/ && getpos($/, 0)', 1, 're_tests 9/0 (#12)', :todo); 
    46 is(eval '"xabcy" ~~ rx/abc/ && $0', "abc", 're_tests 10/0 (#13)', :todo); 
    47 is(eval '"xabcy" ~~ rx/abc/ && getpos($/, 0)', 1, 're_tests 10/0 (#14)', :todo); 
     37is(("xabcy" ~~ /abc/ && $0), "abc", 're_tests 10/0 (#13)'); 
     38is(("xabcy" ~~ /abc/ && $/.from), 1, 're_tests 10/0 (#14)'); 
    4839# 10: abc       ababc   y       $&      abc 
    4940# 11: abc       ababc   y       $-[0]   2 
    5041# 12: abc       ababc   y       $+[0]   5 # SKIP 
    51 is(eval '"ababc" ~~ rx:perl5/abc/ && $0', "abc", 're_tests 11/0 (#15)', :todo); 
    52 is(eval '"ababc" ~~ rx:perl5/abc/ && getpos($/, 0)', 2, 're_tests 11/0 (#16)', :todo); 
    53 is(eval '"ababc" ~~ rx/abc/ && $0', "abc", 're_tests 12/0 (#17)', :todo); 
    54 is(eval '"ababc" ~~ rx/abc/ && getpos($/, 0)', 2, 're_tests 12/0 (#18)', :todo); 
     42is(("ababc" ~~ /abc/ && $0), "abc", 're_tests 12/0 (#17)'); 
     43is(("ababc" ~~ /abc/ && $/.from), 2, 're_tests 12/0 (#18)'); 
    5544# 13: ab*c      abc     y       $&      abc 
    5645# 14: ab*c      abc     y       $-[0]   0 
    5746# 15: ab*c      abc     y       $+[0]   3 # SKIP 
    58 is(eval '"abc" ~~ rx:perl5/ab*c/ && $0', "abc", 're_tests 13/0 (#19)', :todo); 
    59 is(eval '"abc" ~~ rx:perl5/ab*c/ && getpos($/, 0)', 0, 're_tests 13/0 (#20)', :todo); 
    60 is(eval '"abc" ~~ rx/ab*c/ && $0', "abc", 're_tests 14/0 (#21)', :todo); 
    61 is(eval '"abc" ~~ rx/ab*c/ && getpos($/, 0)', 0, 're_tests 14/0 (#22)', :todo); 
     47is(("abc" ~~ /ab*c/ && $0), "abc", 're_tests 14/0 (#21)'); 
     48is(("abc" ~~ /ab*c/ && $/.from), 0, 're_tests 14/0 (#22)'); 
    6249# 16: ab*bc     abc     y       $&      abc 
    6350# 17: ab*bc     abc     y       $-[0]   0 
    6451# 18: ab*bc     abc     y       $+[0]   3 # SKIP 
    65 is(eval '"abc" ~~ rx:perl5/ab*bc/ && $0', "abc", 're_tests 15/0 (#23)', :todo); 
    66 is(eval '"abc" ~~ rx:perl5/ab*bc/ && getpos($/, 0)', 0, 're_tests 15/0 (#24)', :todo); 
    67 is(eval '"abc" ~~ rx/ab*bc/ && $0', "abc", 're_tests 16/0 (#25)', :todo); 
    68 is(eval '"abc" ~~ rx/ab*bc/ && getpos($/, 0)', 0, 're_tests 16/0 (#26)', :todo); 
     52is(("abc" ~~ /ab*bc/ && $0), "abc", 're_tests 16/0 (#25)'); 
     53is(("abc" ~~ /ab*bc/ && $/.from), 0, 're_tests 16/0 (#26)'); 
    6954# 19: ab*bc     abbc    y       $&      abbc 
    7055# 20: ab*bc     abbc    y       $-[0]   0 
    7156# 21: ab*bc     abbc    y       $+[0]   4 # SKIP 
    72 is(eval '"abbc" ~~ rx:perl5/ab*bc/ && $0', "abbc", 're_tests 17/0 (#27)', :todo); 
    73 is(eval '"abbc" ~~ rx:perl5/ab*bc/ && getpos($/, 0)', 0, 're_tests 17/0 (#28)', :todo); 
    74 is(eval '"abbc" ~~ rx/ab*bc/ && $0', "abbc", 're_tests 18/0 (#29)', :todo); 
    75 is(eval '"abbc" ~~ rx/ab*bc/ && getpos($/, 0)', 0, 're_tests 18/0 (#30)', :todo); 
     57is(("abbc" ~~ /ab*bc/ && $0), "abbc", 're_tests 18/0 (#29)'); 
     58is(("abbc" ~~ /ab*bc/ && $/.from), 0, 're_tests 18/0 (#30)'); 
    7659# 22: ab*bc     abbbbc  y       $&      abbbbc 
    7760# 23: ab*bc     abbbbc  y       $-[0]   0 
    7861# 24: ab*bc     abbbbc  y       $+[0]   6 # SKIP 
    79 is(eval '"abbbbc" ~~ rx:perl5/ab*bc/ && $0', "abbbbc", 're_tests 19/0 (#31)', :todo); 
    80 is(eval '"abbbbc" ~~ rx:perl5/ab*bc/ && getpos($/, 0)', 0, 're_tests 19/0 (#32)', :todo); 
    81 is(eval '"abbbbc" ~~ rx/ab*bc/ && $0', "abbbbc", 're_tests 20/0 (#33)', :todo); 
    82 is(eval '"abbbbc" ~~ rx/ab*bc/ && getpos($/, 0)', 0, 're_tests 20/0 (#34)', :todo); 
     62is(("abbbbc" ~~ /ab*bc/ && $0), "abbbbc", 're_tests 20/0 (#33)'); 
     63is(("abbbbc" ~~ /ab*bc/ && $/.from), 0, 're_tests 20/0 (#34)'); 
    8364# 25: .{1}      abbbbc  y       $&      a 
    8465# 26: .{1}      abbbbc  y       $-[0]   0 
    8566# 27: .{1}      abbbbc  y       $+[0]   1 # SKIP 
    86 is(eval '"abbbbc" ~~ rx:perl5/.{1}/ && $0', "a", 're_tests 21/0 (#35)', :todo); 
    87 is(eval '"abbbbc" ~~ rx:perl5/.{1}/ && getpos($/, 0)', 0, 're_tests 21/0 (#36)', :todo); 
    88 is(eval '"abbbbc" ~~ rx/\N**{1}/ && $0', "a", 're_tests 22/0 (#37)', :todo); 
    89 is(eval '"abbbbc" ~~ rx/\N**{1}/ && getpos($/, 0)', 0, 're_tests 22/0 (#38)', :todo); 
     67is(("abbbbc" ~~ /\N**{1}/ && $0), "a", 're_tests 22/0 (#37)'); 
     68is(("abbbbc" ~~ /\N**{1}/ && $/.from), 0, 're_tests 22/0 (#38)'); 
    9069# 28: .{3,4}    abbbbc  y       $&      abbb 
    9170# 29: .{3,4}    abbbbc  y       $-[0]   0 
    9271# 30: .{3,4}    abbbbc  y       $+[0]   4 # SKIP 
    93 is(eval '"abbbbc" ~~ rx:perl5/.{3,4}/ && $0', "abbb", 're_tests 23/0 (#39)', :todo); 
    94 is(eval '"abbbbc" ~~ rx:perl5/.{3,4}/ && getpos($/, 0)', 0, 're_tests 23/0 (#40)', :todo); 
    95 is(eval '"abbbbc" ~~ rx/\N**{3..4}/ && $0', "abbb", 're_tests 24/0 (#41)', :todo); 
    96 is(eval '"abbbbc" ~~ rx/\N**{3..4}/ && getpos($/, 0)', 0, 're_tests 24/0 (#42)', :todo); 
     72is(("abbbbc" ~~ /\N**{3..4}/ && $0), "abbb", 're_tests 24/0 (#41)'); 
     73is(("abbbbc" ~~ /\N**{3..4}/ && $/.from), 0, 're_tests 24/0 (#42)'); 
    9774# 31: ab{0,}bc  abbbbc  y       $&      abbbbc 
    9875# 32: ab{0,}bc  abbbbc  y       $-[0]   0 
    9976# 33: ab{0,}bc  abbbbc  y       $+[0]   6 # SKIP 
    100 is(eval '"abbbbc" ~~ rx:perl5/ab{0,}bc/ && $0', "abbbbc", 're_tests 25/0 (#43)', :todo); 
    101 is(eval '"abbbbc" ~~ rx:perl5/ab{0,}bc/ && getpos($/, 0)', 0, 're_tests 25/0 (#44)', :todo); 
    102 is(eval '"abbbbc" ~~ rx/ab**{0...}bc/ && $0', "abbbbc", 're_tests 26/0 (#45)', :todo); 
    103 is(eval '"abbbbc" ~~ rx/ab**{0...}bc/ && getpos($/, 0)', 0, 're_tests 26/0 (#46)', :todo); 
     77is(("abbbbc" ~~ /ab**{0...}bc/ && $0), "abbbbc", 're_tests 26/0 (#45)'); 
     78is(("abbbbc" ~~ /ab**{0...}bc/ && $/.from), 0, 're_tests 26/0 (#46)'); 
    10479# 34: ab+bc     abbc    y       $&      abbc 
    10580# 35: ab+bc     abbc    y       $-[0]   0 
    10681# 36: ab+bc     abbc    y       $+[0]   4 # SKIP 
    107 is(eval '"abbc" ~~ rx:perl5/ab+bc/ && $0', "abbc", 're_tests 27/0 (#47)', :todo); 
    108 is(eval '"abbc" ~~ rx:perl5/ab+bc/ && getpos($/, 0)', 0, 're_tests 27/0 (#48)', :todo); 
    109 is(eval '"abbc" ~~ rx/ab+bc/ && $0', "abbc", 're_tests 28/0 (#49)', :todo); 
    110 is(eval '"abbc" ~~ rx/ab+bc/ && getpos($/, 0)', 0, 're_tests 28/0 (#50)', :todo); 
     82is(("abbc" ~~ /ab+bc/ && $0), "abbc", 're_tests 28/0 (#49)'); 
     83is(("abbc" ~~ /ab+bc/ && $/.from), 0, 're_tests 28/0 (#50)'); 
    11184# 37: ab+bc     abc     n       -       - 
    112 ok(eval 'not ("abc" ~~ rx:perl5/ab+bc/)', 're_tests 29  (#51)', :todo); 
    113 ok(eval 'not ("abc" ~~ rx/ab+bc/)', 're_tests 30  (#52)', :todo); 
     85ok((not ("abc" ~~ /ab+bc/)), 're_tests 30  (#52)'); 
    11486# 38: ab+bc     abq     n       -       - 
    115 ok(eval 'not ("abq" ~~ rx:perl5/ab+bc/)', 're_tests 31  (#53)', :todo); 
    116 ok(eval 'not ("abq" ~~ rx/ab+bc/)', 're_tests 32  (#54)', :todo); 
     87ok((not ("abq" ~~ /ab+bc/)), 're_tests 32  (#54)'); 
    11788# 39: ab{1,}bc  abq     n       -       - 
    118 ok(eval 'not ("abq" ~~ rx:perl5/ab{1,}bc/)', 're_tests 33  (#55)', :todo); 
    119 ok(eval 'not ("abq" ~~ rx/ab**{1...}bc/)', 're_tests 34  (#56)', :todo); 
     89ok((not ("abq" ~~ /ab**{1...}bc/)), 're_tests 34  (#56)'); 
    12090# 40: ab+bc     abbbbc  y       $&      abbbbc 
    12191# 41: ab+bc     abbbbc  y       $-[0]   0 
    12292# 42: ab+bc     abbbbc  y       $+[0]   6 # SKIP 
    123 is(eval '"abbbbc" ~~ rx:perl5/ab+bc/ && $0', "abbbbc", 're_tests 35/0 (#57)', :todo); 
    124 is(eval '"abbbbc" ~~ rx:perl5/ab+bc/ && getpos($/, 0)', 0, 're_tests 35/0 (#58)', :todo); 
    125 is(eval '"abbbbc" ~~ rx/ab+bc/ && $0', "abbbbc", 're_tests 36/0 (#59)', :todo); 
    126 is(eval '"abbbbc" ~~ rx/ab+bc/ && getpos($/, 0)', 0, 're_tests 36/0 (#60)', :todo); 
     93is(("abbbbc" ~~ /ab+bc/ && $0), "abbbbc", 're_tests 36/0 (#59)'); 
     94is(("abbbbc" ~~ /ab+bc/ && $/.from), 0, 're_tests 36/0 (#60)'); 
    12795# 43: ab{1,}bc  abbbbc  y       $&      abbbbc 
    12896# 44: ab{1,}bc  abbbbc  y       $-[0]   0 
    12997# 45: ab{1,}bc  abbbbc  y       $+[0]   6 # SKIP 
    130 is(eval '"abbbbc" ~~ rx:perl5/ab{1,}bc/ && $0', "abbbbc", 're_tests 37/0 (#61)', :todo); 
    131 is(eval '"abbbbc" ~~ rx:perl5/ab{1,}bc/ && getpos($/, 0)', 0, 're_tests 37/0 (#62)', :todo); 
    132 is(eval '"abbbbc" ~~ rx/ab**{1...}bc/ && $0', "abbbbc", 're_tests 38/0 (#63)', :todo); 
    133 is(eval '"abbbbc" ~~ rx/ab**{1...}bc/ && getpos($/, 0)', 0, 're_tests 38/0 (#64)', :todo); 
     98is(("abbbbc" ~~ /ab**{1...}bc/ && $0), "abbbbc", 're_tests 38/0 (#63)'); 
     99is(("abbbbc" ~~ /ab**{1...}bc/ && $/.from), 0, 're_tests 38/0 (#64)'); 
    134100# 46: ab{1,3}bc abbbbc  y       $&      abbbbc 
    135101# 47: ab{1,3}bc abbbbc  y       $-[0]   0 
    136102# 48: ab{1,3}bc abbbbc  y       $+[0]   6 # SKIP 
    137 is(eval '"abbbbc" ~~ rx:perl5/ab{1,3}bc/ && $0', "abbbbc", 're_tests 39/0 (#65)', :todo); 
    138 is(eval '"abbbbc" ~~ rx:perl5/ab{1,3}bc/ && getpos($/, 0)', 0, 're_tests 39/0 (#66)', :todo); 
    139 is(eval '"abbbbc" ~~ rx/ab**{1..3}bc/ && $0', "abbbbc", 're_tests 40/0 (#67)', :todo); 
    140 is(eval '"abbbbc" ~~ rx/ab**{1..3}bc/ && getpos($/, 0)', 0, 're_tests 40/0 (#68)', :todo); 
     103is(("abbbbc" ~~ /ab**{1..3}bc/ && $0), "abbbbc", 're_tests 40/0 (#67)'); 
     104is(("abbbbc" ~~ /ab**{1..3}bc/ && $/.from), 0, 're_tests 40/0 (#68)'); 
    141105# 49: ab{3,4}bc abbbbc  y       $&      abbbbc 
    142106# 50: ab{3,4}bc abbbbc  y       $-[0]   0 
    143107# 51: ab{3,4}bc abbbbc  y       $+[0]   6 # SKIP 
    144 is(eval '"abbbbc" ~~ rx:perl5/ab{3,4}bc/ && $0', "abbbbc", 're_tests 41/0 (#69)', :todo); 
    145 is(eval '"abbbbc" ~~ rx:perl5/ab{3,4}bc/ && getpos($/, 0)', 0, 're_tests 41/0 (#70)', :todo); 
    146 is(eval '"abbbbc" ~~ rx/ab**{3..4}bc/ && $0', "abbbbc", 're_tests 42/0 (#71)', :todo); 
    147 is(eval '"abbbbc" ~~ rx/ab**{3..4}bc/ && getpos($/, 0)', 0, 're_tests 42/0 (#72)', :todo); 
     108is(("abbbbc" ~~ /ab**{3..4}bc/ && $0), "abbbbc", 're_tests 42/0 (#71)'); 
     109is(("abbbbc" ~~ /ab**{3..4}bc/ && $/.from), 0, 're_tests 42/0 (#72)'); 
    148110# 52: ab{4,5}bc abbbbc  n       -       - 
    149 ok(eval 'not ("abbbbc" ~~ rx:perl5/ab{4,5}bc/)', 're_tests 43  (#73)', :todo); 
    150 ok(eval 'not ("abbbbc" ~~ rx/ab**{4..5}bc/)', 're_tests 44  (#74)', :todo); 
     111ok((not ("abbbbc" ~~ /ab**{4..5}bc/)), 're_tests 44  (#74)'); 
    151112# 53: ab?bc     abbc    y       $&      abbc 
    152 is(eval '"abbc" ~~ rx:perl5/ab?bc/ && $0', "abbc", 're_tests 45/0 (#75)', :todo); 
    153 is(eval '"abbc" ~~ rx/ab?bc/ && $0', "abbc", 're_tests 46/0 (#76)', :todo); 
     113is(("abbc" ~~ /ab?bc/ && $0), "abbc", 're_tests 46/0 (#76)'); 
    154114# 54: ab?bc     abc     y       $&      abc 
    155 is(eval '"abc" ~~ rx:perl5/ab?bc/ && $0', "abc", 're_tests 47/0 (#77)', :todo); 
    156 is(eval '"abc" ~~ rx/ab?bc/ && $0', "abc", 're_tests 48/0 (#78)', :todo); 
     115is(("abc" ~~ /ab?bc/ && $0), "abc", 're_tests 48/0 (#78)'); 
    157116# 55: ab{0,1}bc abc     y       $&      abc 
    158 is(eval '"abc" ~~ rx:perl5/ab{0,1}bc/ && $0', "abc", 're_tests 49/0 (#79)', :todo); 
    159 is(eval '"abc" ~~ rx/ab**{0..1}bc/ && $0', "abc", 're_tests 50/0 (#80)', :todo); 
     117is(("abc" ~~ /ab**{0..1}bc/ && $0), "abc", 're_tests 50/0 (#80)'); 
    160118# 56: ab?bc     abbbbc  n       -       - 
    161 ok(eval 'not ("abbbbc" ~~ rx:perl5/ab?bc/)', 're_tests 51  (#81)', :todo); 
    162 ok(eval 'not ("abbbbc" ~~ rx/ab?bc/)', 're_tests 52  (#82)', :todo); 
     119ok((not ("abbbbc" ~~ /ab?bc/)), 're_tests 52  (#82)'); 
    163120# 57: ab?c      abc     y       $&      abc 
    164 is(eval '"abc" ~~ rx:perl5/ab?c/ && $0', "abc", 're_tests 53/0 (#83)', :todo); 
    165 is(eval '"abc" ~~ rx/ab?c/ && $0', "abc", 're_tests 54/0 (#84)', :todo); 
     121is(("abc" ~~ /ab?c/ && $0), "abc", 're_tests 54/0 (#84)'); 
    166122# 58: ab{0,1}c  abc     y       $&      abc 
    167 is(eval '"abc" ~~ rx:perl5/ab{0,1}c/ && $0', "abc", 're_tests 55/0 (#85)', :todo); 
    168 is(eval '"abc" ~~ rx/ab**{0..1}c/ && $0', "abc", 're_tests 56/0 (#86)', :todo); 
     123is(("abc" ~~ /ab**{0..1}c/ && $0), "abc", 're_tests 56/0 (#86)'); 
    169124# 59: ^abc$     abc     y       $&      abc 
    170 is(eval '"abc" ~~ rx:perl5/^abc$/ && $0', "abc", 're_tests 57/0 (#87)', :todo); 
    171 is(eval '"abc" ~~ rx/^abc$/ && $0', "abc", 're_tests 58/0 (#88)', :todo); 
     125is(("abc" ~~ /^abc$/ && $0), "abc", 're_tests 58/0 (#88)'); 
    172126# 60: ^abc$     abcc    n       -       - 
    173 ok(eval 'not ("abcc" ~~ rx:perl5/^abc$/)', 're_tests 59  (#89)', :todo); 
    174 ok(eval 'not ("abcc" ~~ rx/^abc$/)', 're_tests 60  (#90)', :todo); 
     127ok((not ("abcc" ~~ /^abc$/)), 're_tests 60  (#90)'); 
    175128# 61: ^abc      abcc    y       $&      abc 
    176 is(eval '"abcc" ~~ rx:perl5/^abc/ && $0', "abc", 're_tests 61/0 (#91)', :todo); 
    177 is(eval '"abcc" ~~ rx/^abc/ && $0', "abc", 're_tests 62/0 (#92)', :todo); 
     129is(("abcc" ~~ /^abc/ && $0), "abc", 're_tests 62/0 (#92)'); 
    178130# 62: ^abc$     aabc    n       -       - 
    179 ok(eval 'not ("aabc" ~~ rx:perl5/^abc$/)', 're_tests 63  (#93)', :todo); 
    180 ok(eval 'not ("aabc" ~~ rx/^abc$/)', 're_tests 64  (#94)', :todo); 
     131ok((not ("aabc" ~~ /^abc$/)), 're_tests 64  (#94)'); 
    181132# 63: abc$      aabc    y       $&      abc 
    182 is(eval '"aabc" ~~ rx:perl5/abc$/ && $0', "abc", 're_tests 65/0 (#95)', :todo); 
    183 is(eval '"aabc" ~~ rx/abc$/ && $0', "abc", 're_tests 66/0 (#96)', :todo); 
     133is(("aabc" ~~ /abc$/ && $0), "abc", 're_tests 66/0 (#96)'); 
    184134# 64: abc$      aabcd   n       -       - 
    185 ok(eval 'not ("aabcd" ~~ rx:perl5/abc$/)', 're_tests 67  (#97)', :todo); 
    186 ok(eval 'not ("aabcd" ~~ rx/abc$/)', 're_tests 68  (#98)', :todo); 
     135ok((not ("aabcd" ~~ /abc$/)), 're_tests 68  (#98)'); 
    187136# 65: ^ abc     y       $&       
    188 is(eval '"abc" ~~ rx:perl5/^/ && $0', "", 're_tests 69/0 (#99)', :todo); 
    189 is(eval '"abc" ~~ rx/^/ && $0', "", 're_tests 70/0 (#100)', :todo); 
     137is(("abc" ~~ /^/ && $0), "", 're_tests 70/0 (#100)'); 
    190138# 66: $ abc     y       $&       
    191 is(eval '"abc" ~~ rx:perl5/$/ && $0', "", 're_tests 71/0 (#101)', :todo); 
    192 is(eval '"abc" ~~ rx/$/ && $0', "", 're_tests 72/0 (#102)', :todo); 
     139is(("abc" ~~ /$/ && $0), "", 're_tests 72/0 (#102)'); 
    193140# 67: a.c       abc     y       $&      abc 
    194 is(eval '"abc" ~~ rx:perl5/a.c/ && $0', "abc", 're_tests 73/0 (#103)', :todo); 
    195 is(eval '"abc" ~~ rx/a\Nc/ && $0', "abc", 're_tests 74/0 (#104)', :todo); 
     141is(("abc" ~~ /a\Nc/ && $0), "abc", 're_tests 74/0 (#104)'); 
    196142# 68: a.c       axc     y       $&      axc 
    197 is(eval '"axc" ~~ rx:perl5/a.c/ && $0', "axc", 're_tests 75/0 (#105)', :todo); 
    198 is(eval '"axc" ~~ rx/a\Nc/ && $0', "axc", 're_tests 76/0 (#106)', :todo); 
     143is(("axc" ~~ /a\Nc/ && $0), "axc", 're_tests 76/0 (#106)'); 
    199144# 69: a.*c      axyzc   y       $&      axyzc 
    200 is(eval '"axyzc" ~~ rx:perl5/a.*c/ && $0', "axyzc", 're_tests 77/0 (#107)', :todo); 
    201 is(eval '"axyzc" ~~ rx/a\N*c/ && $0', "axyzc", 're_tests 78/0 (#108)', :todo); 
     145is(("axyzc" ~~ /a\N*c/ && $0), "axyzc", 're_tests 78/0 (#108)'); 
    202146# 70: a.*c      axyzd   n       -       - 
    203 ok(eval 'not ("axyzd" ~~ rx:perl5/a.*c/)', 're_tests 79  (#109)', :todo); 
    204 ok(eval 'not ("axyzd" ~~ rx/a\N*c/)', 're_tests 80  (#110)', :todo); 
     147ok((not ("axyzd" ~~ /a\N*c/)), 're_tests 80  (#110)'); 
    205148# 71: a[bc]d    abc     n       -       - 
    206 ok(eval 'not ("abc" ~~ rx:perl5/a[bc]d/)', 're_tests 81  (#111)', :todo); 
    207 ok(eval 'not ("abc" ~~ rx/a<[bc]>d/)', 're_tests 82  (#112)', :todo); 
     149ok((not ("abc" ~~ /a<[bc]>d/)), 're_tests 82  (#112)'); 
    208150# 72: a[bc]d    abd     y       $&      abd 
    209 is(eval '"abd" ~~ rx:perl5/a[bc]d/ && $0', "abd", 're_tests 83/0 (#113)', :todo); 
    210 is(eval '"abd" ~~ rx/a<[bc]>d/ && $0', "abd", 're_tests 84/0 (#114)', :todo); 
     151is(("abd" ~~ /a<[bc]>d/ && $0), "abd", 're_tests 84/0 (#114)'); 
    211152# 73: a[b-d]e   abd     n       -       - 
    212 ok(eval 'not ("abd" ~~ rx:perl5/a[b-d]e/)', 're_tests 85  (#115)', :todo); 
    213 ok(eval 'not ("abd" ~~ rx/a<[b-d]>e/)', 're_tests 86  (#116)', :todo); 
     153ok((not ("abd" ~~ /a<[b-d]>e/)), 're_tests 86  (#116)'); 
    214154# 74: a[b-d]e   ace     y       $&      ace 
    215 is(eval '"ace" ~~ rx:perl5/a[b-d]e/ && $0', "ace", 're_tests 87/0 (#117)', :todo); 
    216 is(eval '"ace" ~~ rx/a<[b-d]>e/ && $0', "ace", 're_tests 88/0 (#118)', :todo); 
     155is(("ace" ~~ /a<[b-d]>e/ && $0), "ace", 're_tests 88/0 (#118)'); 
    217156# 75: a[b-d]    aac     y       $&      ac 
    218 is(eval '"aac" ~~ rx:perl5/a[b-d]/ && $0', "ac", 're_tests 89/0 (#119)', :todo); 
    219 is(eval '"aac" ~~ rx/a<[b-d]>/ && $0', "ac", 're_tests 90/0 (#120)', :todo); 
     157is(("aac" ~~ /a<[b-d]>/ && $0), "ac", 're_tests 90/0 (#120)'); 
    220158# 76: a[-b]     a-      y       $&      a- 
    221 is(eval '"a-" ~~ rx:perl5/a[-b]/ && $0', "a-", 're_tests 91/0 (#121)', :todo); 
    222 is(eval '"a-" ~~ rx/a<[-b]>/ && $0', "a-", 're_tests 92/0 (#122)', :todo); 
     159is(("a-" ~~ /a<[-b]>/ && $0), "a-", 're_tests 92/0 (#122)'); 
    223160# 77: a[b-]     a-      y       $&      a- 
    224 is(eval '"a-" ~~ rx:perl5/a[b-]/ && $0', "a-", 're_tests 93/0 (#123)', :todo); 
    225 is(eval '"a-" ~~ rx/a<[b-]>/ && $0', "a-", 're_tests 94/0 (#124)', :todo); 
     161is(("a-" ~~ /a<[b-]>/ && $0), "a-", 're_tests 94/0 (#124)'); 
    226162# 78: a[b-a]    -       c       -       Invalid [] range "b-a" 
    227163# -- SKIPPED - TESTS ERROR MESSAGE 
     
    231167# -- SKIPPED - TESTS ERROR MESSAGE 
    232168# 81: a]        a]      y       $&      a] 
    233 is(eval '"a]" ~~ rx:perl5/a]/ && $0', "a]", 're_tests 95/0 (#125)', :todo); 
    234 is(eval '"a]" ~~ rx/a]/ && $0', "a]", 're_tests 96/0 (#126)', :todo); 
     169is(("a]" ~~ /a]/ && $0), "a]", 're_tests 96/0 (#126)'); 
    235170# 82: a[]]b     a]b     y       $&      a]b 
    236 is(eval '"a]b" ~~ rx:perl5/a[]]b/ && $0', "a]b", 're_tests 97/0 (#127)', :todo); 
    237 is(eval '"a]b" ~~ rx/a<[]>]b/ && $0', "a]b", 're_tests 98/0 (#128)', :todo); 
     171is(("a]b" ~~ /a<[]>]b/ && $0), "a]b", 're_tests 98/0 (#128)'); 
    238172# 83: a[^bc]d   aed     y       $&      aed 
    239 is(eval '"aed" ~~ rx:perl5/a[^bc]d/ && $0', "aed", 're_tests 99/0 (#129)', :todo); 
    240 is(eval '"aed" ~~ rx/a<[^bc]>d/ && $0', "aed", 're_tests 100/0 (#130)', :todo); 
     173is(("aed" ~~ /a<[^bc]>d/ && $0), "aed", 're_tests 100/0 (#130)'); 
    241174# 84: a[^bc]d   abd     n       -       - 
    242 ok(eval 'not ("abd" ~~ rx:perl5/a[^bc]d/)', 're_tests 101  (#131)', :todo); 
    243 ok(eval 'not ("abd" ~~ rx/a<[^bc]>d/)', 're_tests 102  (#132)', :todo); 
     175ok((not ("abd" ~~ /a<[^bc]>d/)), 're_tests 102  (#132)'); 
    244176# 85: a[^-b]c   adc     y       $&      adc 
    245 is(eval '"adc" ~~ rx:perl5/a[^-b]c/ && $0', "adc", 're_tests 103/0 (#133)', :todo); 
    246 is(eval '"adc" ~~ rx/a<[^-b]>c/ && $0', "adc", 're_tests 104/0 (#134)', :todo); 
     177is(("adc" ~~ /a<[^-b]>c/ && $0), "adc", 're_tests 104/0 (#134)'); 
    247178# 86: a[^-b]c   a-c     n       -       - 
    248 ok(eval 'not ("a-c" ~~ rx:perl5/a[^-b]c/)', 're_tests 105  (#135)', :todo); 
    249 ok(eval 'not ("a-c" ~~ rx/a<[^-b]>c/)', 're_tests 106  (#136)', :todo); 
     179ok((not ("a-c" ~~ /a<[^-b]>c/)), 're_tests 106  (#136)'); 
    250180# 87: a[^]b]c   a]c     n       -       - 
    251 ok(eval 'not ("a]c" ~~ rx:perl5/a[^]b]c/)', 're_tests 107  (#137)', :todo); 
    252 ok(eval 'not ("a]c" ~~ rx/a<[^]>b]c/)', 're_tests 108  (#138)', :todo); 
     181ok((not ("a]c" ~~ /a<[^]>b]c/)), 're_tests 108  (#138)'); 
    253182# 88: a[^]b]c   adc     y       $&      adc 
    254 is(eval '"adc" ~~ rx:perl5/a[^]b]c/ && $0', "adc", 're_tests 109/0 (#139)', :todo); 
    255 is(eval '"adc" ~~ rx/a<[^]>b]c/ && $0', "adc", 're_tests 110/0 (#140)', :todo); 
     183is(("adc" ~~ /a<[^]>b]c/ && $0), "adc", 're_tests 110/0 (#140)'); 
    256184# 89: \ba\b     a-      y       -       - 
    257 ok(eval '"a-" ~~ rx:perl5/\ba\b/', 're_tests 111  (#141)', :todo); 
    258 ok(eval '"a-" ~~ rx/\ba\b/', 're_tests 112  (#142)', :todo); 
     185ok(("a-" ~~ /\ba\b/), 're_tests 112  (#142)'); 
    259186# 90: \ba\b     -a      y       -       - 
    260 ok(eval '"-a" ~~ rx:perl5/\ba\b/', 're_tests 113  (#143)', :todo); 
    261 ok(eval '"-a" ~~ rx/\ba\b/', 're_tests 114  (#144)', :todo); 
     187ok(("-a" ~~ /\ba\b/), 're_tests 114  (#144)'); 
    262188# 91: \ba\b     -a-     y       -       - 
    263 ok(eval '"-a-" ~~ rx:perl5/\ba\b/', 're_tests 115  (#145)', :todo); 
    264 ok(eval '"-a-" ~~ rx/\ba\b/', 're_tests 116  (#146)', :todo); 
     189ok(("-a-" ~~ /\ba\b/), 're_tests 116  (#146)'); 
    265190# 92: \by\b     xy      n       -       - 
    266 ok(eval 'not ("xy" ~~ rx:perl5/\by\b/)', 're_tests 117  (#147)', :todo); 
    267 ok(eval 'not ("xy" ~~ rx/\by\b/)', 're_tests 118  (#148)', :todo); 
     191ok((not ("xy" ~~ /\by\b/)), 're_tests 118  (#148)'); 
    268192# 93: \by\b     yz      n       -       - 
    269 ok(eval 'not ("yz" ~~ rx:perl5/\by\b/)', 're_tests 119  (#149)', :todo); 
    270 ok(eval 'not ("yz" ~~ rx/\by\b/)', 're_tests 120  (#150)', :todo); 
     193ok((not ("yz" ~~ /\by\b/)), 're_tests 120  (#150)'); 
    271194# 94: \by\b     xyz     n       -       - 
    272 ok(eval 'not ("xyz" ~~ rx:perl5/\by\b/)', 're_tests 121  (#151)', :todo); 
    273 ok(eval 'not ("xyz" ~~ rx/\by\b/)', 're_tests 122  (#152)', :todo); 
     195ok((not ("xyz" ~~ /\by\b/)), 're_tests 122  (#152)'); 
    274196# 95: \Ba\B     a-      n       -       - 
    275 ok(eval 'not ("a-" ~~ rx:perl5/\Ba\B/)', 're_tests 123  (#153)', :todo); 
    276 ok(eval 'not ("a-" ~~ rx/\Ba\B/)', 're_tests 124  (#154)', :todo); 
     197ok((not ("a-" ~~ /\Ba\B/)), 're_tests 124  (#154)'); 
    277198# 96: \Ba\B     -a      n       -       - 
    278 ok(eval 'not ("-a" ~~ rx:perl5/\Ba\B/)', 're_tests 125  (#155)', :todo); 
    279 ok(eval 'not ("-a" ~~ rx/\Ba\B/)', 're_tests 126  (#156)', :todo); 
     199ok((not ("-a" ~~ /\Ba\B/)), 're_tests 126  (#156)'); 
    280200# 97: \Ba\B     -a-     n       -       - 
    281 ok(eval 'not ("-a-" ~~ rx:perl5/\Ba\B/)', 're_tests 127  (#157)', :todo); 
    282 ok(eval 'not ("-a-" ~~ rx/\Ba\B/)', 're_tests 128  (#158)', :todo); 
     201ok((not ("-a-" ~~ /\Ba\B/)), 're_tests 128  (#158)'); 
    283202# 98: \By\b     xy      y       -       - 
    284 ok(eval '"xy" ~~ rx:perl5/\By\b/', 're_tests 129  (#159)', :todo); 
    285 ok(eval '"xy" ~~ rx/\By\b/', 're_tests 130  (#160)', :todo); 
     203ok(("xy" ~~ /\By\b/), 're_tests 130  (#160)'); 
    286204# 99: \By\b     xy      y       $-[0]   1 
    287205# 100: \By\b    xy      y       $+[0]   2 # SKIP 
    288 is(eval '"xy" ~~ rx:perl5/\By\b/ && getpos($/, 0)', 1, 're_tests 131/0 (#161)', :todo); 
    289 is(eval '"xy" ~~ rx/\By\b/ && getpos($/, 0)', 1, 're_tests 132/0 (#162)', :todo); 
     206is(("xy" ~~ /\By\b/ && $/.from), 1, 're_tests 132/0 (#162)'); 
    290207# 101: \By\b    xy      y       -       - 
    291 ok(eval '"xy" ~~ rx:perl5/\By\b/', 're_tests 133  (#163)', :todo); 
    292 ok(eval '"xy" ~~ rx/\By\b/', 're_tests 134  (#164)', :todo); 
     208ok(("xy" ~~ /\By\b/), 're_tests 134  (#164)'); 
    293209# 102: \by\B    yz      y       -       - 
    294 ok(eval '"yz" ~~ rx:perl5/\by\B/', 're_tests 135  (#165)', :todo); 
    295 ok(eval '"yz" ~~ rx/\by\B/', 're_tests 136  (#166)', :todo); 
     210ok(("yz" ~~ /\by\B/), 're_tests 136  (#166)'); 
    296211# 103: \By\B    xyz     y       -       - 
    297 ok(eval '"xyz" ~~ rx:perl5/\By\B/', 're_tests 137  (#167)', :todo); 
    298 ok(eval '"xyz" ~~ rx/\By\B/', 're_tests 138  (#168)', :todo); 
     212ok(("xyz" ~~ /\By\B/), 're_tests 138  (#168)'); 
    299213# 104: \w       a       y       -       - 
    300 ok(eval '"a" ~~ rx:perl5/\w/', 're_tests 139  (#169)', :todo); 
    301 ok(eval '"a" ~~ rx/\w/', 're_tests 140  (#170)', :todo); 
     214ok(("a" ~~ /\w/), 're_tests 140  (#170)'); 
    302215# 105: \w       -       n       -       - 
    303 ok(eval 'not ("-" ~~ rx:perl5/\w/)', 're_tests 141  (#171)', :todo); 
    304 ok(eval 'not ("-" ~~ rx/\w/)', 're_tests 142  (#172)', :todo); 
     216ok((not ("-" ~~ /\w/)), 're_tests 142  (#172)'); 
    305217# 106: \W       a       n       -       - 
    306 ok(eval 'not ("a" ~~ rx:perl5/\W/)', 're_tests 143  (#173)', :todo); 
    307 ok(eval 'not ("a" ~~ rx/\W/)', 're_tests 144  (#174)', :todo); 
     218ok((not ("a" ~~ /\W/)), 're_tests 144  (#174)'); 
    308219# 107: \W       -       y       -       - 
    309 ok(eval '"-" ~~ rx:perl5/\W/', 're_tests 145  (#175)', :todo); 
    310 ok(eval '"-" ~~ rx/\W/', 're_tests 146  (#176)', :todo); 
     220ok(("-" ~~ /\W/), 're_tests 146  (#176)'); 
    311221# 108: a\sb     a b     y       -       - 
    312 ok(eval '"a b" ~~ rx:perl5/a\sb/', 're_tests 147  (#177)', :todo); 
    313 ok(eval '"a b" ~~ rx/a\sb/', 're_tests 148  (#178)', :todo); 
     222ok(("a b" ~~ /a\sb/), 're_tests 148  (#178)'); 
    314223# 109: a\sb     a-b     n       -       - 
    315 ok(eval 'not ("a-b" ~~ rx:perl5/a\sb/)', 're_tests 149  (#179)', :todo); 
    316 ok(eval 'not ("a-b" ~~ rx/a\sb/)', 're_tests 150  (#180)', :todo); 
     224ok((not ("a-b" ~~ /a\sb/)), 're_tests 150  (#180)'); 
    317225# 110: a\Sb     a b     n       -       - 
    318 ok(eval 'not ("a b" ~~ rx:perl5/a\Sb/)', 're_tests 151  (#181)', :todo); 
    319 ok(eval 'not ("a b" ~~ rx/a\Sb/)', 're_tests 152  (#182)', :todo); 
     226ok((not ("a b" ~~ /a\Sb/)), 're_tests 152  (#182)'); 
    320227# 111: a\Sb     a-b     y       -       - 
    321 ok(eval '"a-b" ~~ rx:perl5/a\Sb/', 're_tests 153  (#183)', :todo); 
    322 ok(eval '"a-b" ~~ rx/a\Sb/', 're_tests 154  (#184)', :todo); 
     228ok(("a-b" ~~ /a\Sb/), 're_tests 154  (#184)'); 
    323229# 112: \d       1       y       -       - 
    324 ok(eval '"1" ~~ rx:perl5/\d/', 're_tests 155  (#185)', :todo); 
    325 ok(eval '"1" ~~ rx/\d/', 're_tests 156  (#186)', :todo); 
     230ok(("1" ~~ /\d/), 're_tests 156  (#186)'); 
    326231# 113: \d       -       n       -       - 
    327 ok(eval 'not ("-" ~~ rx:perl5/\d/)', 're_tests 157  (#187)', :todo); 
    328 ok(eval 'not ("-" ~~ rx/\d/)', 're_tests 158  (#188)', :todo); 
     232ok((not ("-" ~~ /\d/)), 're_tests 158  (#188)'); 
    329233# 114: \D       1       n       -       - 
    330 ok(eval 'not ("1" ~~ rx:perl5/\D/)', 're_tests 159  (#189)', :todo); 
    331 ok(eval 'not ("1" ~~ rx/\D/)', 're_tests 160  (#190)', :todo); 
     234ok((not ("1" ~~ /\D/)), 're_tests 160  (#190)'); 
    332235# 115: \D       -       y       -       - 
    333 ok(eval '"-" ~~ rx:perl5/\D/', 're_tests 161  (#191)', :todo); 
    334 ok(eval '"-" ~~ rx/\D/', 're_tests 162  (#192)', :todo); 
     236ok(("-" ~~ /\D/), 're_tests 162  (#192)'); 
    335237# 116: [\w]     a       y       -       - 
    336 ok(eval '"a" ~~ rx:perl5/[\w]/', 're_tests 163  (#193)', :todo); 
    337 ok(eval '"a" ~~ rx/<[\w]>/', 're_tests 164  (#194)', :todo); 
     238ok(("a" ~~ /<[\w]>/), 're_tests 164  (#194)'); 
    338239# 117: [\w]     -       n       -       - 
    339 ok(eval 'not ("-" ~~ rx:perl5/[\w]/)', 're_tests 165  (#195)', :todo); 
    340 ok(eval 'not ("-" ~~ rx/<[\w]>/)', 're_tests 166  (#196)', :todo); 
     240ok((not ("-" ~~ /<[\w]>/)), 're_tests 166  (#196)'); 
    341241# 118: [\W]     a       n       -       - 
    342 ok(eval 'not ("a" ~~ rx:perl5/[\W]/)', 're_tests 167  (#197)', :todo); 
    343 ok(eval 'not ("a" ~~ rx/<[\W]>/)', 're_tests 168  (#198)', :todo); 
     242ok((not ("a" ~~ /<[\W]>/)), 're_tests 168  (#198)'); 
    344243# 119: [\W]     -       y       -       - 
    345 ok(eval '"-" ~~ rx:perl5/[\W]/', 're_tests 169  (#199)', :todo); 
    346 ok(eval '"-" ~~ rx/<[\W]>/', 're_tests 170  (#200)', :todo); 
     244ok(("-" ~~ /<[\W]>/), 're_tests 170  (#200)'); 
    347245# 120: a[\s]b   a b     y       -       - 
    348 ok(eval '"a b" ~~ rx:perl5/a[\s]b/', 're_tests 171  (#201)', :todo); 
    349 ok(eval '"a b" ~~ rx/a<[\s]>b/', 're_tests 172  (#202)', :todo); 
     246ok(("a b" ~~ /a<[\s]>b/), 're_tests 172  (#202)'); 
    350247# 121: a[\s]b   a-b     n       -       - 
    351 ok(eval 'not ("a-b" ~~ rx:perl5/a[\s]b/)', 're_tests 173  (#203)', :todo); 
    352 ok(eval 'not ("a-b" ~~ rx/a<[\s]>b/)', 're_tests 174  (#204)', :todo); 
     248ok((not ("a-b" ~~ /a<[\s]>b/)), 're_tests 174  (#204)'); 
    353249# 122: a[\S]b   a b     n       -       - 
    354 ok(eval 'not ("a b" ~~ rx:perl5/a[\S]b/)', 're_tests 175  (#205)', :todo); 
    355 ok(eval 'not ("a b" ~~ rx/a<[\S]>b/)', 're_tests 176  (#206)', :todo); 
     250ok((not ("a b" ~~ /a<[\S]>b/)), 're_tests 176  (#206)'); 
    356251# 123: a[\S]b   a-b     y       -       - 
    357 ok(eval '"a-b" ~~ rx:perl5/a[\S]b/', 're_tests 177  (#207)', :todo); 
    358 ok(eval '"a-b" ~~ rx/a<[\S]>b/', 're_tests 178  (#208)', :todo); 
     252ok(("a-b" ~~ /a<[\S]>b/), 're_tests 178  (#208)'); 
    359253# 124: [\d]     1       y       -       - 
    360 ok(eval '"1" ~~ rx:perl5/[\d]/', 're_tests 179  (#209)', :todo); 
    361 ok(eval '"1" ~~ rx/<[\d]>/', 're_tests 180  (#210)', :todo); 
     254ok(("1" ~~ /<[\d]>/), 're_tests 180  (#210)'); 
    362255# 125: [\d]     -       n       -       - 
    363 ok(eval 'not ("-" ~~ rx:perl5/[\d]/)', 're_tests 181  (#211)', :todo); 
    364 ok(eval 'not ("-" ~~ rx/<[\d]>/)', 're_tests 182  (#212)', :todo); 
     256ok((not ("-" ~~ /<[\d]>/)), 're_tests 182  (#212)'); 
    365257# 126: [\D]     1       n       -       - 
    366 ok(eval 'not ("1" ~~ rx:perl5/[\D]/)', 're_tests 183  (#213)', :todo); 
    367 ok(eval 'not ("1" ~~ rx/<[\D]>/)', 're_tests 184  (#214)', :todo); 
     258ok((not ("1" ~~ /<[\D]>/)), 're_tests 184  (#214)'); 
    368259# 127: [\D]     -       y       -       - 
    369 ok(eval '"-" ~~ rx:perl5/[\D]/', 're_tests 185  (#215)', :todo); 
    370 ok(eval '"-" ~~ rx/<[\D]>/', 're_tests 186  (#216)', :todo); 
     260ok(("-" ~~ /<[\D]>/), 're_tests 186  (#216)'); 
    371261# 128: ab|cd    abc     y       $&      ab 
    372 is(eval '"abc" ~~ rx:perl5/ab|cd/ && $0', "ab", 're_tests 187/0 (#217)', :todo); 
    373 is(eval '"abc" ~~ rx/ab|cd/ && $0', "ab", 're_tests 188/0 (#218)', :todo); 
     262is(("abc" ~~ /ab|cd/ && $0), "ab", 're_tests 188/0 (#218)'); 
    374263# 129: ab|cd    abcd    y       $&      ab 
    375 is(eval '"abcd" ~~ rx:perl5/ab|cd/ && $0', "ab", 're_tests 189/0 (#219)', :todo); 
    376 is(eval '"abcd" ~~ rx/ab|cd/ && $0', "ab", 're_tests 190/0 (#220)', :todo); 
     264is(("abcd" ~~ /ab|cd/ && $0), "ab", 're_tests 190/0 (#220)'); 
    377265# 130: ()ef     def     y       $&-$1   ef- 
    378 is(eval '"def" ~~ rx:perl5/()ef/ && $0', "ef", 're_tests 191/0 (#221)', :todo); 
    379 is(eval '"def" ~~ rx:perl5/()ef/ && $1', "", 're_tests 191/1 (#222)', :todo); 
    380 is(eval '"def" ~~ rx/()ef/ && $0', "ef", 're_tests 192/0 (#223)', :todo); 
    381 is(eval '"def" ~~ rx/()ef/ && $1', "", 're_tests 192/1 (#224)', :todo); 
     266is(("def" ~~ /(<?null>)ef/ && $0), "ef", 're_tests 192/0 (#223)'); 
     267is(("def" ~~ /(<?null>)ef/ && $1), "", 're_tests 192/1 (#224)'); 
    382268# 131: ()ef     def     y       $-[0]   1 
    383269# 132: ()ef     def     y       $+[0]   3 # SKIP 
    384 is(eval '"def" ~~ rx:perl5/()ef/ && getpos($/, 0)', 1, 're_tests 193/0 (#225)', :todo); 
    385 is(eval '"def" ~~ rx/()ef/ && getpos($/, 0)', 1, 're_tests 194/0 (#226)', :todo); 
     270is(("def" ~~ /(<?null>)ef/ && $/.from), 1, 're_tests 194/0 (#226)'); 
    386271# 133: ()ef     def     y       $-[1]   1 
    387272# 134: ()ef     def     y       $+[1]   1 # SKIP 
    388 is(eval '"def" ~~ rx:perl5/()ef/ && getpos($/, 1)', 1, 're_tests 195/1 (#227)', :todo); 
    389 is(eval '"def" ~~ rx/()ef/ && getpos($/, 1)', 1, 're_tests 196/1 (#228)', :todo); 
     273is(("def" ~~ /(<?null>)ef/ && $/[0].from), 1, 're_tests 196/1 (#228)'); 
    390274# 135: *a       -       c       -       Quantifier follows nothing 
    391275# -- SKIPPED - TESTS ERROR MESSAGE 
     
    393277# -- SKIPPED - TESTS ERROR MESSAGE 
    394278# 137: $b       b       n       -       - 
    395 ok(eval 'not ("b" ~~ rx:perl5/$b/)', 're_tests 197  (#229)', :todo); 
    396 ok(eval 'not ("b" ~~ rx/$b/)', 're_tests 198  (#230)', :todo); 
     279my $b = 'x'; 
     280ok((not ("b" ~~ /$b/)), 're_tests 198  (#230)'); 
    397281# 138: a\       -       c       -       Search pattern not terminated 
    398282# -- SKIPPED - TESTS ERROR MESSAGE 
    399283# 139: a\(b     a(b     y       $&-$1   a(b- 
    400 is(eval '"a(b" ~~ rx:perl5/a\(b/ && $0', "a(b", 're_tests 199/0 (#231)', :todo); 
    401 is(eval '"a(b" ~~ rx:perl5/a\(b/ && $1', "", 're_tests 199/1 (#232)', :todo); 
    402 is(eval '"a(b" ~~ rx/a\(b/ && $0', "a(b", 're_tests 200/0 (#233)', :todo); 
    403 is(eval '"a(b" ~~ rx/a\(b/ && $1', "", 're_tests 200/1 (#234)', :todo); 
     284is(("a(b" ~~ /a\(b/ && $0), "a(b", 're_tests 200/0 (#233)'); 
     285is(("a(b" ~~ /a\(b/ && $1), "", 're_tests 200/1 (#234)'); 
    404286# 140: a\(*b    ab      y       $&      ab 
    405 is(eval '"ab" ~~ rx:perl5/a\(*b/ && $0', "ab", 're_tests 201/0 (#235)', :todo); 
    406 is(eval '"ab" ~~ r