Changeset 56e490c901bf7fa247d234373d597fb8deb48642
- Timestamp:
- 04/27/10 17:13:49 (2 years ago)
- Author:
- Philip Herron <redbrain@…>
- Parents:
- 8104e2d8423c4bdc9b20f14cc57bb02d1ad39e7e
- Children:
- b8cdd65fab4ae4d9db3e64af3aa7c0a672dde108
- git-committer:
- Philip Herron <redbrain@omicron.(none)> / 2010-04-27T17:13:49Z+0100
- Message:
-
garbage collection on object definitions bug fix
- Location:
- src
- Files:
-
Legend:
- Unmodified
- Added
- Removed
-
|
r02929e7
|
r56e490c
|
|
| 141 | 141 | if( sym ) |
| 142 | 142 | { |
| 143 | | crl_debug("deleting object <%p>!\n", (void *) sym ); |
| | 143 | crl_debug("deleting object <%p>!\n", (void *) (*sym) ); |
| 144 | 144 | |
| 145 | 145 | if( (*sym)->identifier ) |
| … |
… |
|
| 182 | 182 | if( (*sym)->op_a.object_def ) |
| 183 | 183 | { |
| 184 | | printf("shit son!\n"); |
| 185 | 184 | struct crl_type_obj_def_t * o = (*sym)->op_a.object_def; |
| | 185 | crl_debug("freeing object definition <%s>!\n", o->identifier ); |
| 186 | 186 | crl_free( o->identifier ); |
| 187 | 187 | crl_garbage_free_context_branch( &(o->context) ); |
-
|
r10ff89c
|
r56e490c
|
|
| 133 | 133 | init->op_a.integer = mpfr_get_si( z, GMP_RNDU ); |
| 134 | 134 | |
| 135 | | mpfr_clear( x ); |
| 136 | | mpfr_clear( y ); |
| 137 | | mpfr_clear( z ); |
| | 135 | mpfr_clears (x, y, z, (mpfr_ptr) 0); |
| 138 | 136 | |
| 139 | 137 | retval = crl_obj_integer_init( init, o1->definition ); |
-
|
r8104e2d
|
r56e490c
|
|
| 390 | 390 | |
| 391 | 391 | obj->type = STRUCTURE_OBJECT_DEF; |
| 392 | | obj->type = STRUCTURE_OBJECT_DEF; |
| | 392 | obj->op_a_t = STRUCTURE_OBJECT_DEF; |
| 393 | 393 | obj->op_a.object_def = obj_def; |
| 394 | 394 | |
| 395 | | printf("trying to insert object def <%s> <0x%x>!\n", object_def->identifier, (void *) obj ); |
| | 395 | printf("trying to insert object def <%s> <%p>!\n", object_def->identifier, (void *) obj ); |
| 396 | 396 | crl_symbol_obj **s= crl_dd_hash_insert( crl_dd_hash_hash( object_def->identifier ), |
| 397 | 397 | obj, ((*context)->curr->object_table) ); |
-
|
r10ff89c
|
r56e490c
|
|
| 143 | 143 | else { len--; } |
| 144 | 144 | } |
| 145 | | if( !f ) |
| | 145 | if( !f ) { |
| 146 | 146 | crl_fatal("unable to find valid return address!\n"); |
| | 147 | } |
| 147 | 148 | |
| 148 | 149 | return retval; |