Tcl Source Code

View Ticket
Login
Ticket UUID: 5773c78e86a515f9c981e990d1ec51d119f1024
Title: Small lrange of abstract list shimmers the source list to a non-abstract list
Type: Bug Version: 9.1a1
Submitter: apnadkarni Created on: 2025-06-06 14:38:13
Subsystem: - New Builtin Commands Assigned To: apnadkarni
Priority: 5 Medium Severity: Minor
Status: Closed Last Modified: 2025-08-16 06:09:26
Resolution: Fixed Closed By: apnadkarni
    Closed on: 2025-08-16 06:09:26
Description:

In the example below, there is no reason for the source type to be shimmered. It will result in functional correctness but memory bloat if the source list is large.

% set l [lrepeat 120 x]; 'rep $l
value is a repeatedList with a refcount of 3, object pointer at 0x1c6cb436830, internal representation 0x1c6cb40b1c0:0x78, no string representation
% lrange $l 1 10
x x x x x x x x x x
% 'rep $l
value is a list with a refcount of 3, object pointer at 0x1c6cb436830, internal representation 0x1c6ccc9f8a0:0x0, no string representation
User Comments: apnadkarni added on 2025-08-16 06:09:26:
Fixed with TIP 649 merge.

apnadkarni added on 2025-06-09 13:47:14:

This is fixed in the tip-649 branch. If that TIP does not pass, this is a reminder to cherrypick the fix.