Euphoria Ticket #775: Memory leak with native type tests

sequence s = "abc" 
? integer( s[1] ) 
? sequence( s[1] ) 
? atom( s[1] ) 
? object( s[1] ) 

Corresponding IL code:

SubProgram [bug.ex-<TopLevel>:00134] 
 
        [bug.ex:2]  (2) 
     1: 018 141 140                      # [LIT "abc":141] => [s:140] 
 
        [bug.ex:3]  (3) 
     4: 109 140                          # GLOBAL_INIT_CHECK: [s:140] 
     6: 025 140 136 142                  # RHS_SUBS: [s:140] sub [LIT 1:136] => [_temp_:142] 
    10: 094 142 143                      # IS_AN_INTEGER: [_temp_:142] [_temp_:143] 
    13: 036 136 143                      # QPRINT: [_temp_:143] 
 
        [bug.ex:4]  (4) 
    16: 109 140                          # GLOBAL_INIT_CHECK: [s:140] 
    18: 025 140 136 144                  # RHS_SUBS: [s:140] sub [LIT 1:136] => [_temp_:144] 
    22: 068 144 145                      # IS_A_SEQUENCE: [_temp_:144] [_temp_:145] 
    25: 036 136 145                      # QPRINT: [_temp_:145] 
 
        [bug.ex:5]  (5) 
    28: 109 140                          # GLOBAL_INIT_CHECK: [s:140] 
    30: 025 140 136 146                  # RHS_SUBS: [s:140] sub [LIT 1:136] => [_temp_:146] 
    34: 067 146 147                      # IS_AN_ATOM: [_temp_:146] [_temp_:147] 
    37: 036 136 147                      # QPRINT: [_temp_:147] 
 
        [bug.ex:6]  (6) 
    40: 109 140                          # GLOBAL_INIT_CHECK: [s:140] 
    42: 025 140 136 148                  # RHS_SUBS: [s:140] sub [LIT 1:136] => [_temp_:148] 
    46: 040 148 149                      # IS_AN_OBJECT: [_temp_:148] [_temp_:149] 
    49: 036 136 149                      # QPRINT: [_temp_:149] 
    52: 034                              # RETURNT: 
End SubProgram [<TopLevel>:00134] 

Note that none of [_temp_:142], [_temp_:144], [_temp_:146], [_temp_:148] are ever dereferenced.

Details

Type: Bug Report Severity: Blocking Category: Interpreter
Assigned To: mattlewis Status: Fixed Reported Release:
Fixed in SVN #: View VCS: none Milestone: 4.0.5

1. Comment by mattlewis Jul 26, 2012

See: hg:euphoria/rev/3e2f8ff51d74

changeset: 5611:3e2f8ff51d74 branch: 4.0 user: Matt Lewis date: Wed Jul 25 20:39:58 2012 -0400 files: docs/release/4.0.5.txt source/emit.e tests/t_delete.e description:

  • fix interpreter memory leak with native type check functions and temps
  • fixes ticket 775

2. Comment by mattlewis Jul 26, 2012

See: hg:euphoria/rev/93cf5cca154b

changeset: 5612:93cf5cca154b parent: 5608:1be9fc689c77 parent: 5611:3e2f8ff51d74 user: Matt Lewis date: Wed Jul 25 21:29:02 2012 -0400 files: docs/installing.txt docs/release/4.0.5.txt source/emit.e source/fwdref.e tests/t_delete.e description:

  • merge 4.0 branch into trunk
  • documentation fixes
  • ticket 775

Search



Quick Links

User menu

Not signed in.

Misc Menu