feat: do not specialize functions inside functions marked with @[specialize]
This commit is contained in:
parent
53b1128491
commit
aa9080e9e7
1 changed files with 6 additions and 2 deletions
|
|
@ -1020,8 +1020,12 @@ pair<environment, comp_decls> specialize(environment env, comp_decls const & ds,
|
||||||
comp_decls r;
|
comp_decls r;
|
||||||
for (comp_decl const & d : ds) {
|
for (comp_decl const & d : ds) {
|
||||||
comp_decls new_ds;
|
comp_decls new_ds;
|
||||||
std::tie(env, new_ds) = specialize_core(env, d, cfg);
|
if (has_specialize_attribute(env, d.fst())) {
|
||||||
r = append(r, new_ds);
|
r = append(r, comp_decls(d));
|
||||||
|
} else {
|
||||||
|
std::tie(env, new_ds) = specialize_core(env, d, cfg);
|
||||||
|
r = append(r, new_ds);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return mk_pair(env, r);
|
return mk_pair(env, r);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue