Tcl Source Code

Check-in [099cf26224]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:A bit more tidiness expressing the new test expression.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | core-8-4-branch
Files: files | file ages | folders
SHA1: 099cf2622456f82ee0934379a30398e3943eacd5
User & Date: dgp 2013-02-27 15:15:30
Context
2013-03-04
15:38
New scheme for keeping the per-process tcl_precision value in sync without the need for mutex locks ... check-in: 02ef6b18c8 user: dgp tags: core-8-4-branch
2013-02-27
15:18
Somewhat tidier, less daunting test. check-in: 4459688518 user: dgp tags: core-8-5-branch
15:15
A bit more tidiness expressing the new test expression. check-in: 099cf26224 user: dgp tags: core-8-4-branch
15:03
rejoin the branch check-in: 54451cd3a5 user: dgp tags: core-8-4-branch
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to tests/regexp.test.

637
638
639
640
641
642
643

644
645

































646
647
648
649
650
651
652
    # This will hang in interps where the bug is not fixed
    regexp ((((((((a)*)*)*)*)*)*)*)* a
} 1
test regexp-22.4 {Bug 3606139} -setup {
    interp alias {} a {} string repeat a
} -body {
    # This crashes in interps where the bug is not fixed

    set exp "[a 160]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 649]([a 55])[a 668]([a 55])[a 668]([a 55])[a 672]([a 55])[a 669]([a 55])[a 671]([a 55])[a 671]([a 55])[a 672]([a 55])[a 652]([a 55])[a 672]([a 55])[a 671]([a 55])[a 671]([a 55])[a 671]([a 55])[a 653]([a 55])[a 672]([a 55])[a 653]([a 55])[a 672]([a 55])[a 672]([a 55])[a 652]([a 55])[a 671]([a 55])[a 652]([a 55])[a 652]([a 55])[a 672]([a 55])[a 672]([a 55])[a 672]([a 55])[a 653]([a 55])[a 671]([a 55])[a 669]([a 55])[a 649]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 650]([a 55])[a 650]([a 55])[a 672]([a 55])[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 669]([a 55])[a 672]([a 55])[a 669]([a 55])[a 669]([a 55])[a 669]([a 55])[a 669]([a 55])[a 672]([a 55])[a 670]([a 55])[a 671]([a 55])[a 672]([a 55])[a 672]([a 55])[a 671]([a 55])[a 671]([a 55])[a 672]([a 55])[a 669]([a 55])[a 668]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 669]([a 55])[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 672]([a 55])[a 669]([a 55])[a 669]([a 55])[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 672]([a 55])[a 669]([a 55])[a 669]([a 55])[a 710]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 669]([a 55])[a 672]([a 55])[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 667]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 671]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 710]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 511]"
    regexp $exp a

































} -cleanup {
    rename a {}
} -returnCodes 1 -result {couldn't compile regular expression pattern: nfa has too many states}

# cleanup
::tcltest::cleanupTests
return







>
|
<
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







637
638
639
640
641
642
643
644
645

646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
    # This will hang in interps where the bug is not fixed
    regexp ((((((((a)*)*)*)*)*)*)*)* a
} 1
test regexp-22.4 {Bug 3606139} -setup {
    interp alias {} a {} string repeat a
} -body {
    # This crashes in interps where the bug is not fixed
    regexp [join [list [a 160]([a 55])[a 668]([a 55])[a 669]([a 55]) \
	[a 668]([a 55])[a 649]([a 55])[a 668]([a 55])[a 668]([a 55]) \

	[a 672]([a 55])[a 669]([a 55])[a 671]([a 55])[a 671]([a 55]) \
	[a 672]([a 55])[a 652]([a 55])[a 672]([a 55])[a 671]([a 55]) \
	[a 671]([a 55])[a 671]([a 55])[a 653]([a 55])[a 672]([a 55]) \
	[a 653]([a 55])[a 672]([a 55])[a 672]([a 55])[a 652]([a 55]) \
	[a 671]([a 55])[a 652]([a 55])[a 652]([a 55])[a 672]([a 55]) \
	[a 672]([a 55])[a 672]([a 55])[a 653]([a 55])[a 671]([a 55]) \
	[a 669]([a 55])[a 649]([a 55])[a 668]([a 55])[a 668]([a 55]) \
	[a 668]([a 55])[a 650]([a 55])[a 650]([a 55])[a 672]([a 55]) \
	[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 668]([a 55]) \
	[a 668]([a 55])[a 669]([a 55])[a 672]([a 55])[a 669]([a 55]) \
	[a 669]([a 55])[a 669]([a 55])[a 669]([a 55])[a 672]([a 55]) \
	[a 670]([a 55])[a 671]([a 55])[a 672]([a 55])[a 672]([a 55]) \
	[a 671]([a 55])[a 671]([a 55])[a 672]([a 55])[a 669]([a 55]) \
	[a 668]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55]) \
	[a 669]([a 55])[a 668]([a 55])[a 669]([a 55])[a 669]([a 55]) \
	[a 668]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55]) \
	[a 669]([a 55])[a 669]([a 55])[a 669]([a 55])[a 669]([a 55]) \
	[a 668]([a 55])[a 669]([a 55])[a 672]([a 55])[a 669]([a 55]) \
	[a 669]([a 55])[a 669]([a 55])[a 669]([a 55])[a 668]([a 55]) \
	[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 668]([a 55]) \
	[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55]) \
	[a 672]([a 55])[a 669]([a 55])[a 669]([a 55])[a 710]([a 55]) \
	[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55]) \
	[a 668]([a 55])[a 669]([a 55])[a 668]([a 55])[a 668]([a 55]) \
	[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 669]([a 55]) \
	[a 672]([a 55])[a 669]([a 55])[a 669]([a 55])[a 668]([a 55]) \
	[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 668]([a 55]) \
	[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 668]([a 55]) \
	[a 667]([a 55])[a 668]([a 55])[a 669]([a 55])[a 668]([a 55]) \
	[a 671]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55]) \
	[a 669]([a 55])[a 669]([a 55])[a 668]([a 55])[a 669]([a 55]) \
	[a 668]([a 55])[a 710]([a 55])[a 668]([a 55])[a 668]([a 55]) \
	[a 668]([a 55])[a 668]([a 55])[a 668]([a 55])[a 511]] {}] a
} -cleanup {
    rename a {}
} -returnCodes 1 -result {couldn't compile regular expression pattern: nfa has too many states}

# cleanup
::tcltest::cleanupTests
return