X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Ftr%2Ftype_finalization.c;h=e9dac9d0e2f9ed558435b1282af411a12ad4de42;hb=b9a1bfdbce56c76bd4d5ff772963628523ecfc41;hp=64d8c564a8ba6ff67ce8ba34f2f47cc161c5dec5;hpb=9d564d6198d8a1e36a3a9c9ec9ca4d13c6acd153;p=libfirm diff --git a/ir/tr/type_finalization.c b/ir/tr/type_finalization.c index 64d8c564a..e9dac9d0e 100644 --- a/ir/tr/type_finalization.c +++ b/ir/tr/type_finalization.c @@ -22,7 +22,6 @@ * @brief Calculate finalization of classes and entities by * inspecting the class hierarchy. * @author Michael Beck - * @version $Id$ */ #include "config.h" @@ -34,8 +33,9 @@ DEBUG_ONLY(static firm_dbg_module_t *dbg;) -static void do_finalization(type_or_ent tore, void *env) { - ir_type *glob_tp = env; +static void do_finalization(type_or_ent tore, void *env) +{ + ir_type *glob_tp = (ir_type*)env; if (is_type(tore.typ)) { ir_type *cls = tore.typ; @@ -75,20 +75,15 @@ static void do_finalization(type_or_ent tore, void *env) { get_compound_name(owner), get_entity_name(ent))); } } -} /* do_finalization */ +} -/** - * If we have the closed world assumption, we can calculate the - * finalization of classes and entities by inspecting the class hierarchy. - * After this is done, all classes and entities that are not overridden - * anymore have the final property set. - */ -void types_calc_finalization(void) { - if (! get_opt_closed_world()) - return; +void types_calc_finalization(void) +{ + if (! get_opt_closed_world()) + return; FIRM_DBG_REGISTER(dbg, "firm.tr.finalization"); - /* types must be visited before it's entities */ + /* types must be visited before their entities */ type_walk(do_finalization, NULL, get_glob_type()); }