Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Add test cases for && and ||. Note that the LAND and LOR instructions are never generated, since they are intrinsically buggy. |
---|---|
Timelines: | family | ancestors | descendants | both | kbk-domain-check | notworking |
Files: | files | file ages | folders |
SHA3-256: |
67f26787c014af100c2caf6b29c6d8ab |
User & Date: | kbk 2018-03-26 02:36:40.087 |
Context
2018-03-26
| ||
03:21 | Comment out one crashing test case check-in: cbc4e47dbe user: kbk tags: kbk-domain-check, notworking | |
02:36 | Add test cases for && and ||. Note that the LAND and LOR instructions are never generated, since they are intrinsically buggy. check-in: 67f26787c0 user: kbk tags: kbk-domain-check, notworking | |
02:10 | Avoid type promotion on jumpTrue and jumpFalse. check-in: 5913b29fcd user: kbk tags: kbk-domain-check, notworking | |
Changes
Changes to demos/perftest/tester.tcl.
︙ | ︙ | |||
615 616 617 618 619 620 621 622 623 624 625 626 627 628 | proc nottest {val} { expr {!$val} } proc iftest {val} { if {$val} {return yes} {return no} } proc booltest {val} { set res {} if {[string is boolean -strict $val]} { lappend res ok } lappend res [string is boolean $val] | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 | proc nottest {val} { expr {!$val} } proc iftest {val} { if {$val} {return yes} {return no} } proc landtest {val} { expr {$val && $val} # Tcl 8.7 does not generate INST_LAND except when the bytecode assembler # requests it. If we wanted to test INST_LAND, we'd need a sequence like # # tcl::unsupported::assemble { # load val # load val # land # } } proc lortest {val} { expr {$val || $val} # Tcl 8.7 does not generate INST_LOR except when the bytecode assembler # requests it. If we wanted to test INST_LOR, we'd need a sequence like # # tcl::unsupported::assemble { # load val # load val # lor # } # # But that's not implemented in the code generator, and there's no # really good reason to implement it, since Tcl doesn't use it. } proc booltest {val} { set res {} if {[string is boolean -strict $val]} { lappend res ok } lappend res [string is boolean $val] |
︙ | ︙ | |||
1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 | {iftest yes} {iftest no} {iftest 1} {iftest 0} {iftest 0.0} {iftest 2.0} {list [catch {iftest fruitbat} stat] $stat} {list [booltest on] [booltest no] [booltest ""] [booltest fruitbat]} {stristest ""} {stristest x} {stristest 0} {stristest 1.2} {stristest 0xAB} # List operations (also see some [try] tests) | > > > > > > > > > > > > > > | 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 | {iftest yes} {iftest no} {iftest 1} {iftest 0} {iftest 0.0} {iftest 2.0} {list [catch {iftest fruitbat} stat] $stat} {landtest yes} {landtest no} {landtest 1} {landtest 0} {landtest 2.0} {landtest 0.0} {list [catch {landtest fruitbat} stat] $stat} {lortest yes} {lortest no} {lortest 1} {lortest 0} {lortest 2.0} {lortest 0.0} {list [catch {lortest fruitbat} stat] $stat} {list [booltest on] [booltest no] [booltest ""] [booltest fruitbat]} {stristest ""} {stristest x} {stristest 0} {stristest 1.2} {stristest 0xAB} # List operations (also see some [try] tests) |
︙ | ︙ | |||
2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 | matchtest replacing replacing2 replacing3 strclasstest jumptable concatenater nottest iftest booltest stristest regsubtest # Failure handling, [subst], [try] wideretest substtest substtest2 | > > | 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 | matchtest replacing replacing2 replacing3 strclasstest jumptable concatenater nottest iftest landtest lortest booltest stristest regsubtest # Failure handling, [subst], [try] wideretest substtest substtest2 |
︙ | ︙ |