Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | closes [cc1e91552c]: fixes lrange instruction on empty not canonical list (and acc. within expansion also) |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | core-8-6-branch |
Files: | files | file ages | folders |
SHA3-256: |
9d24a1b9db1ebb4578efde008c2c7f72 |
User & Date: | sebres 2019-01-09 10:01:35 |
References
2019-01-11
| ||
14:57 | • Ticket [cc1e91552c] Regression in list expansion status still Closed with 6 other changes artifact: 5ac1153c80 user: oehhar | |
Context
2019-01-11
| ||
14:35 | Fix crash reported by reported by François Vogel related to: [cc1e91552c0ca1817292d951f8c694b28c2b2... check-in: 58c46e74b9 user: jan.nijtmans tags: core-8-6-branch | |
2019-01-10
| ||
14:43 | merge 8.6 check-in: 1de35d1115 user: sebres tags: sebres-8-6-clock-speedup-cr2 | |
2019-01-09
| ||
10:10 | merge 8.6 (regression bug-[cc1e91552c], etc) check-in: f9979ea137 user: sebres tags: core-8-branch | |
10:01 | closes [cc1e91552c]: fixes lrange instruction on empty not canonical list (and acc. within expansion... check-in: 9d24a1b9db user: sebres tags: core-8-6-branch | |
2019-01-08
| ||
18:15 | fixed missing dependency in test-cases "*io-60.1" (constraint-related) - missed load of tcltest-libr... check-in: 1688d8f73e user: sebres tags: core-8-6-branch | |
14:39 | amend to [a87460dbd4], added clean-up to avoid error {can't set "a(x)": variable isn't array} on nex... Closed-Leaf check-in: 098e8b701a user: sebres tags: bug-cc1e91552c | |
Changes
Changes to generic/tclExecute.c.
︙ | ︙ | |||
5233 5234 5235 5236 5237 5238 5239 | if (*(pc+9) == INST_POP) { NEXT_INST_F(10, 1, 0); } #endif /* Every range of an empty list is an empty list */ if (objc == 0) { | > > | | > > | 5233 5234 5235 5236 5237 5238 5239 5240 5241 5242 5243 5244 5245 5246 5247 5248 5249 5250 5251 5252 | if (*(pc+9) == INST_POP) { NEXT_INST_F(10, 1, 0); } #endif /* Every range of an empty list is an empty list */ if (objc == 0) { /* avoid return of not canonical list (e. g. spaces in string repr.) */ if (ListObjIsCanonical(valuePtr)) { TRACE_APPEND(("\n")); NEXT_INST_F(9, 0, 0); } goto emptyList; } /* Decode index value operands. */ /* assert ( toIdx != TCL_INDEX_AFTER); * |
︙ | ︙ |
Changes to tests/basic.test.
︙ | ︙ | |||
957 958 959 960 961 962 963 964 965 966 967 968 969 970 | lappend res $t lappend res [catch { run { {*}{error Hejsan} } } err] lappend res $err } -cleanup { unset res t } -result {0 10 1 Hejsan} } ;# End of noComp loop test basic-49.1 {Tcl_EvalEx: verify TCL_EVAL_GLOBAL operation} testevalex { set ::x global namespace eval ns { variable x namespace | > > > > > > | 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 | lappend res $t lappend res [catch { run { {*}{error Hejsan} } } err] lappend res $err } -cleanup { unset res t } -result {0 10 1 Hejsan} test basic-48.24.$noComp {expansion: empty not canonical list, regression test, bug [cc1e91552c]} -constraints $constraints -setup { unset -nocomplain a } -body { run {list [list {*}{ }] [list {*}[format %c 32]] [list {*}[set a { }]]} } -result [lrepeat 3 {}] -cleanup {unset -nocomplain a} } ;# End of noComp loop test basic-49.1 {Tcl_EvalEx: verify TCL_EVAL_GLOBAL operation} testevalex { set ::x global namespace eval ns { variable x namespace |
︙ | ︙ |
Changes to tests/lrange.test.
︙ | ︙ | |||
103 104 105 106 107 108 109 110 111 112 113 114 115 116 | test lrange-3.5 {compiled with calculated indices, start out of range (negative)} { list [lrange {a b c} -1 1] [lrange {a b c} -1+0 end-1] [lrange {a b c} -2 1] [lrange {a b c} -2+0 0+1] } [lrepeat 4 {a b}] test lrange-3.6 {compiled with calculated indices, end out of range (after end)} { list [lrange {a b c} 1 end+1] [lrange {a b c} 1+0 2+1] [lrange {a b c} 1 end+1] [lrange {a b c} end-1 3+1] } [lrepeat 4 {b c}] # cleanup ::tcltest::cleanupTests return # Local Variables: | > > > > > > > > > > | 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 | test lrange-3.5 {compiled with calculated indices, start out of range (negative)} { list [lrange {a b c} -1 1] [lrange {a b c} -1+0 end-1] [lrange {a b c} -2 1] [lrange {a b c} -2+0 0+1] } [lrepeat 4 {a b}] test lrange-3.6 {compiled with calculated indices, end out of range (after end)} { list [lrange {a b c} 1 end+1] [lrange {a b c} 1+0 2+1] [lrange {a b c} 1 end+1] [lrange {a b c} end-1 3+1] } [lrepeat 4 {b c}] test lrange-3.7a {compiled on empty not canonical list (with static and dynamic indices), regression test, bug [cc1e91552c]} { list [lrange { } 0 1] [lrange [format %c 32] 0 1] [lrange [set a { }] 0 1] \ [lrange { } 0-1 end+1] [lrange [format %c 32] 0-1 end+1] [lrange $a 0-1 end+1] } [lrepeat 6 {}] test lrange-3.7b {not compiled on empty not canonical list (with static and dynamic indices), regression test, bug [cc1e91552c]} { set cmd lrange list [$cmd { } 0 1] [$cmd [format %c 32] 0 1] [$cmd [set a { }] 0 1] \ [$cmd { } 0-1 end+1] [$cmd [format %c 32] 0-1 end+1] [$cmd $a 0-1 end+1] } [lrepeat 6 {}] # cleanup ::tcltest::cleanupTests return # Local Variables: |
︙ | ︙ |