call both raw and user free on pointer vars
parent
7193170455
commit
20106d54f5
|
|
@ -2638,12 +2638,13 @@ fn (mut g Gen) autofree_variable(v ast.Var) {
|
||||||
g.autofree_var_call('string_free', v)
|
g.autofree_var_call('string_free', v)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if sym.has_method('free') {
|
if g.pref.experimental && v.typ.is_ptr() && sym.name.after('.')[0].is_capital() {
|
||||||
g.autofree_var_call(free_fn, v)
|
|
||||||
} else if g.pref.experimental && v.typ.is_ptr() && sym.name.after('.')[0].is_capital() {
|
|
||||||
// Free user reference types
|
// Free user reference types
|
||||||
g.autofree_var_call('free', v)
|
g.autofree_var_call('free', v)
|
||||||
}
|
}
|
||||||
|
if sym.has_method('free') {
|
||||||
|
g.autofree_var_call(free_fn, v)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn (mut g Gen) autofree_var_call(free_fn_name string, v ast.Var) {
|
fn (mut g Gen) autofree_var_call(free_fn_name string, v ast.Var) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue