Example #1
0
void fold_cleanup(fold_t *fold) {
    size_t i;

    for (i = 0; i < vec_size(fold->imm_float);  ++i) ast_delete(fold->imm_float[i]);
    for (i = 0; i < vec_size(fold->imm_vector); ++i) ast_delete(fold->imm_vector[i]);
    for (i = 0; i < vec_size(fold->imm_string); ++i) ast_delete(fold->imm_string[i]);

    vec_free(fold->imm_float);
    vec_free(fold->imm_vector);
    vec_free(fold->imm_string);

    util_htdel(fold->imm_string_untranslate);
    util_htdel(fold->imm_string_dotranslate);

    mem_d(fold);
}
Example #2
0
void code_cleanup(code_t *code) {
    vec_free(code->statements);
    vec_free(code->linenums);
    vec_free(code->columnnums);
    vec_free(code->defs);
    vec_free(code->fields);
    vec_free(code->functions);
    vec_free(code->globals);
    vec_free(code->chars);

    util_htdel(code->string_cache);

    mem_d(code);
}
Example #3
0
code_t::~code_t()
{
    util_htdel(string_cache);
}