diff options
Diffstat (limited to 'gc.cpp')
-rw-r--r-- | gc.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -77,9 +77,11 @@ GC::collect(const Roots& roots) break; case GC::TAG_AST: AST* ast = (AST*)*i; + if (!ast->to<AType*>()) { // FIXME (ast)->~AST(); free((char*)(*i) - sizeof(Object::Header)); _heap.erase(i); + } break; } } |