.scope=scope, .flag=ae_flag_check };
CHECK_BO(envset_push(&es, v->from->owner_class, v->from->owner))
(void)env_push(env, v->from->owner_class, v->from->owner);
+ SET_FLAG(func->def, typedef);
const m_bool ret = traverse_func_def(env, func->def);
if(es.run)
envset_pop(&es, v->from->owner_class);
const m_bool base = tmpl_base(f->base->tmpl);
const m_bool tmpl = GET_FLAG(overload, template);
if(isa(overload->type, env->gwion->type[et_function]) < 0 || is_fptr(env->gwion, overload->type)) {
- if(isa(overload->type, env->gwion->type[et_class]) < 0)
+ if(!GET_FLAG(f, typedef))
ERR_B(f->pos, _("function name '%s' is already used by another value"), overload->name)
}
if((!tmpl && base) || (tmpl && !base && !GET_FLAG(f, template)))