regcomp.c AOK Strange *+?{} on zero-length expression [S_study_chunk] /(?=a)?/ %.*s matches null string many times [S_regpiece] $a = "ABC123" ; $a =~ /(?=a)*/' /%.127s/: Unrecognized escape \\%c passed through [S_regatom] $x = '\m' ; /$x/ Character class [:%.*s:] unknown [S_regpposixcc] Character class syntax [%c %c] belongs inside character classes [S_checkposixcc] /%.127s/: false [] range \"%*.*s\" in regexp [S_regclass] /%.127s/: false [] range \"%*.*s\" in regexp [S_regclassutf8] /%.127s/: Unrecognized escape \\%c in character class passed through" [S_regclass] /%.127s/: Unrecognized escape \\%c in character class passed through" [S_regclassutf8] __END__ # regcomp.c [S_regpiece] use warnings 'regexp' ; my $a = "ABC123" ; $a =~ /(?=a)*/ ; no warnings 'regexp' ; $a =~ /(?=a)*/ ; EXPECT (?=a)* matches null string many times at 3 } use warnings 'regexp' ; $_ = "" ; /[:alpha:]/; /[:zog:]/; /[[:zog:]]/; no warnings 'regexp' ; /[:alpha:]/; /[:zog:]/; /[[:zog:]]/; EXPECT POSIX syntax [: :] belongs inside character classes at 3 } use warnings 'regexp' ; $_ = "" ; /[.zog.]/; no warnings 'regexp' ; /[.zog.]/; EXPECT POSIX syntax [. .] belongs inside character classes at 3 } use warnings 'regexp' ; $_ = "" ; /[[.zog.]]/; no warnings 'regexp' ; /[[.zog.]]/; EXPECT POSIX syntax [. .] is reserved for future extensions at