Diff
Not logged in

Differences From Artifact [5b17369e97]:

To Artifact [387e7004c0]:


508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
expectMatch	9.35 EP		{a[\]]b}	a]b	a]b
expectNomatch	9.36 bE		{a[\]]b}	a]b
expectMatch	9.37 bE		{a[\]]b}	"a\\]b"	"a\\]b"
expectMatch	9.38 eE		{a[\]]b}	"a\\]b"	"a\\]b"
expectMatch	9.39 EP		{a[\\]b}	"a\\b"	"a\\b"
expectMatch	9.40 eE		{a[\\]b}	"a\\b"	"a\\b"
expectMatch	9.41 bE		{a[\\]b}	"a\\b"	"a\\b"
expectError	9.42 -		{a[\Z]b}	EESCAPE
expectMatch	9.43 &		{a[[b]c}	"a\[c"	"a\[c"
expectMatch	9.44 EMP*	{a[\xFE-\u0507][\xFF-\u0300]b} \
	"a\u0102\u02FFb"	"a\u0102\u02FFb"


doing 10 "anchors and newlines"
expectMatch	10.1  &		^a	a	a







|







508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
expectMatch	9.35 EP		{a[\]]b}	a]b	a]b
expectNomatch	9.36 bE		{a[\]]b}	a]b
expectMatch	9.37 bE		{a[\]]b}	"a\\]b"	"a\\]b"
expectMatch	9.38 eE		{a[\]]b}	"a\\]b"	"a\\]b"
expectMatch	9.39 EP		{a[\\]b}	"a\\b"	"a\\b"
expectMatch	9.40 eE		{a[\\]b}	"a\\b"	"a\\b"
expectMatch	9.41 bE		{a[\\]b}	"a\\b"	"a\\b"
expectError	9.42 -		{a[\z]b}	EESCAPE
expectMatch	9.43 &		{a[[b]c}	"a\[c"	"a\[c"
expectMatch	9.44 EMP*	{a[\xFE-\u0507][\xFF-\u0300]b} \
	"a\u0102\u02FFb"	"a\u0102\u02FFb"


doing 10 "anchors and newlines"
expectMatch	10.1  &		^a	a	a
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
expectNomatch	10.19 &N	{^$}	a
expectIndices	10.20 &nN	"^\$"	a\n\nb	{2 1}
expectMatch	10.21 N		{$^}	""	""
expectMatch	10.22 b		{$^}	"\$^"	"\$^"
expectMatch	10.23 P		{\Aa}	a	a
expectMatch	10.24 ^P	{\Aa}	a	a
expectNomatch	10.25 ^nP	{\Aa}	"b\na"
expectMatch	10.26 P		{a\Z}	a	a
expectMatch	10.27 \$P	{a\Z}	a	a
expectNomatch	10.28 \$nP	{a\Z}	"a\nb"
expectError	10.29 -		^*	BADRPT
expectError	10.30 -		{$*}	BADRPT
expectError	10.31 -		{\A*}	BADRPT
expectError	10.32 -		{\Z*}	BADRPT


doing 11 "boundary constraints"
expectMatch	11.1  &LP	{[[:<:]]a}	a	a
expectMatch	11.2  &LP	{[[:<:]]a}	-a	a
expectNomatch	11.3  &LP	{[[:<:]]a}	ba
expectMatch	11.4  &LP	{a[[:>:]]}	a	a







|
|
|



|







540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
expectNomatch	10.19 &N	{^$}	a
expectIndices	10.20 &nN	"^\$"	a\n\nb	{2 1}
expectMatch	10.21 N		{$^}	""	""
expectMatch	10.22 b		{$^}	"\$^"	"\$^"
expectMatch	10.23 P		{\Aa}	a	a
expectMatch	10.24 ^P	{\Aa}	a	a
expectNomatch	10.25 ^nP	{\Aa}	"b\na"
expectMatch	10.26 P		{a\z}	a	a
expectMatch	10.27 \$P	{a\z}	a	a
expectNomatch	10.28 \$nP	{a\z}	"a\nb"
expectError	10.29 -		^*	BADRPT
expectError	10.30 -		{$*}	BADRPT
expectError	10.31 -		{\A*}	BADRPT
expectError	10.32 -		{\z*}	BADRPT


doing 11 "boundary constraints"
expectMatch	11.1  &LP	{[[:<:]]a}	a	a
expectMatch	11.2  &LP	{[[:<:]]a}	-a	a
expectNomatch	11.3  &LP	{[[:<:]]a}	ba
expectMatch	11.4  &LP	{a[[:>:]]}	a	a
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
expectMatch	13.18 P		"a\\u00088x"	"a\b8x"	"a\b8x"
expectMatch	13.19 P		"a\\U00000008x"	"a\bx"	"a\bx"
expectMatch	13.20 P		{a\U0000008x}	"a\bx"	"a\bx"
expectMatch	13.21 P		"a\\vb"		"a\vb"	"a\vb"
expectMatch	13.22 MP	"a\\x08x"	"a\bx"	"a\bx"
expectError	13.23 -		{a\xq}		EESCAPE
expectMatch	13.24 MP	"a\\x08x"	"a\bx"	"a\bx"
expectError	13.25 -		{a\z}		EESCAPE
expectMatch	13.26 MP	"a\\010b"	"a\bb"	"a\bb"
expectMatch	13.27 P		"a\\U00001234x"	"a\u1234x"	"a\u1234x"
expectMatch	13.28 P		{a\U00001234x}	"a\u1234x"	"a\u1234x"
expectMatch	13.29 P		"a\\U0001234x"	"a\u1234x"	"a\u1234x"
expectMatch	13.30 P		{a\U0001234x}	"a\u1234x"	"a\u1234x"
expectMatch	13.31 P		"a\\U000012345x"	"a\u12345x"	"a\u12345x"
expectMatch	13.32 P		{a\U000012345x}	"a\u12345x"	"a\u12345x"







<







631
632
633
634
635
636
637

638
639
640
641
642
643
644
expectMatch	13.18 P		"a\\u00088x"	"a\b8x"	"a\b8x"
expectMatch	13.19 P		"a\\U00000008x"	"a\bx"	"a\bx"
expectMatch	13.20 P		{a\U0000008x}	"a\bx"	"a\bx"
expectMatch	13.21 P		"a\\vb"		"a\vb"	"a\vb"
expectMatch	13.22 MP	"a\\x08x"	"a\bx"	"a\bx"
expectError	13.23 -		{a\xq}		EESCAPE
expectMatch	13.24 MP	"a\\x08x"	"a\bx"	"a\bx"

expectMatch	13.26 MP	"a\\010b"	"a\bb"	"a\bb"
expectMatch	13.27 P		"a\\U00001234x"	"a\u1234x"	"a\u1234x"
expectMatch	13.28 P		{a\U00001234x}	"a\u1234x"	"a\u1234x"
expectMatch	13.29 P		"a\\U0001234x"	"a\u1234x"	"a\u1234x"
expectMatch	13.30 P		{a\U0001234x}	"a\u1234x"	"a\u1234x"
expectMatch	13.31 P		"a\\U000012345x"	"a\u12345x"	"a\u12345x"
expectMatch	13.32 P		{a\U000012345x}	"a\u12345x"	"a\u12345x"
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
    set pat {[^d]%$}
    set line "asd asd"
    # can only match after the end of the string
    set res [testregexp -xflags -- c $pat $line resvar]
    lappend res $resvar
} {0 7}
test reg-32.3.1 {canmatch functionality -- no match} testregexp {
    set pat {\Zx}
    set line "asd asd"
    # can match the last char, if followed by x
    set res [testregexp -xflags -- c $pat $line resvar]
    lappend res $resvar
} {0 -1}
test reg-32.4 {canmatch functionality -- last char} {knownBug testregexp} {
    set pat {.x}







|







979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
    set pat {[^d]%$}
    set line "asd asd"
    # can only match after the end of the string
    set res [testregexp -xflags -- c $pat $line resvar]
    lappend res $resvar
} {0 7}
test reg-32.3.1 {canmatch functionality -- no match} testregexp {
    set pat {\zx}
    set line "asd asd"
    # can match the last char, if followed by x
    set res [testregexp -xflags -- c $pat $line resvar]
    lappend res $resvar
} {0 -1}
test reg-32.4 {canmatch functionality -- last char} {knownBug testregexp} {
    set pat {.x}