Tcl Source Code

Ticket Change Details
Login
Overview

Artifact ID: 1c54641d9676c2385b169e66c1e81076b0f3d40c
Ticket: 9b352768e6d78c8dbf522a8d58b794b376187246
memleak in dict-20.16
User & Date: dgp 2014-07-11 14:29:43
Changes

  1. icomment:
    % proc demo {} {dict merge {a b c d} {e f g h i}}
    % tcl::unsupported::disassemble proc demo
    ByteCode 0x0x15c2cc10, refCt 1, epoch 15, interp 0x0x15bda5d0 (epoch 15)
      Source "dict merge {a b c d} {e f g h i}"
      Cmds 1, src 32, inst 79, litObjs 2, aux 0, stkDepth 3, code/src 0.00
      Proc 0x0x15c27a70, refCt 1, args 0, compiled locals 4
          slot 0, scalar, temp
          slot 1, scalar, temp
          slot 2, scalar, temp
          slot 3, scalar, temp
      Exception ranges 1, depth 1:
          0: level 0, catch, pc 12-50, catch 62
      Commands 1:
          1: pc 0-77, src 0-31
      Command 1: "dict merge {a b c d} {e f g h i}"
        (0) push1 0 	# "a b c d"
        (2) dup 
        (3) verifyDict 
        (4) storeScalar1 %v2 	# temp var 2
        (6) pop 
        (7) beginCatch4 0 
        (12) push1 1 	# "e f g h i"
        (14) dictFirst %v3 	# temp var 3
        (19) jumpTrue1 +24 	# pc 43
        (21) reverse 2 
        (26) dictSet 1 %v2 	# temp var 2
        (35) pop 
        (36) dictNext %v3 	# temp var 3
        (41) jumpFalse1 -20 	# pc 21
        (43) pop 
        (44) pop 
        (45) unsetScalar 0 %v3 	# temp var 3
        (51) endCatch 
        (52) loadScalar1 %v2 	# temp var 2
        (54) unsetScalar 0 %v2 	# temp var 2
        (60) jump1 +18 	# pc 78
        (62) pushReturnOpts 
        (63) pushResult 
        (64) endCatch 
        (65) unsetScalar 0 %v2 	# temp var 2
        (71) unsetScalar 0 %v3 	# temp var 3
        (77) returnStk 
        (78) done
    
  2. login: "dgp"
  3. mimetype: "text/plain"