* Search downwards in overwritten tree. */
entity *resolve_ent_polymorphy(type *dynamic_class, entity* static_ent) {
entity *res = resolve_ent_polymorphy2(dynamic_class, static_ent);
+ if (!res) {
+ printf(" Could not find entity "); DDME(static_ent);
+ printf(" in class"); DDMT(dynamic_class);
+ printf("\n");
+ dump_entity(static_ent);
+ dump_type(get_entity_owner(static_ent));
+ dump_type(dynamic_class);
+
+ }
assert(res);
return res;
}
else
{ printf ("\n irg = NULL"); }
}
+ printf("\n\n");
}
#undef X
#else /* DEBUG_libfirm */
void dump_type (type *tp) {
int i;
- printf("%s type %s (%ld)\n", get_tpop_name(get_type_tpop(tp)), get_type_name(tp), get_type_nr(tp));
+ printf("%s type %s (%ld)", get_tpop_name(get_type_tpop(tp)), get_type_name(tp), get_type_nr(tp));
switch (get_type_tpop_code(tp)) {
case tpo_class: {
- printf(" members: ");
+ printf("\n members: ");
for (i = 0; i < get_class_n_members(tp); ++i) {
entity *mem = get_class_member(tp, i);
printf("\n (%2d) %s:\t %s",
get_entity_offset(mem), get_type_name(get_entity_type(mem)), get_entity_name(mem));
}
+ printf("\n suptertypes: ");
+ for (i = 0; i < get_class_n_supertypes(tp); ++i) {
+ type *stp = get_class_supertype(tp, i);
+ printf("\n %s", get_type_name(stp));
+ }
+ printf("\n subtypes: ");
+ for (i = 0; i < get_class_n_subtypes(tp); ++i) {
+ type *stp = get_class_subtype(tp, i);
+ printf("\n %s", get_type_name(stp));
+ }
+
+ printf("\n peculiarity: %s", get_peculiarity_string(get_class_peculiarity(tp)));
} break;
default:
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: ARRAY-STACK_EXAMPLE_main
+name: main
ld_name: ARRAY-STACK_EXAMPLE_main
offset: -1
irg = g33"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: GlobalType_OO_PROGRAM_EXAMPLE_main
+name: OO_PROGRAM_EXAMPLE_main
ld_name: GlobalType_OO_PROGRAM_EXAMPLE_main
offset: -1
irg = g35"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: GlobalType_OO_PROGRAM_EXAMPLE_main
+name: OO_PROGRAM_EXAMPLE_main
ld_name: GlobalType_OO_PROGRAM_EXAMPLE_main
offset: -1
irg = g35"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: GlobalType_OO_PROGRAM_EXAMPLE_main
+name: OO_PROGRAM_EXAMPLE_main
ld_name: GlobalType_OO_PROGRAM_EXAMPLE_main
offset: -1
irg = g35"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: GlobalType_OO_PROGRAM_EXAMPLE_main
+name: OO_PROGRAM_EXAMPLE_main
ld_name: GlobalType_OO_PROGRAM_EXAMPLE_main
offset: -1
irg = g35"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_INLINE_set_a
+name: set_a
ld_name: PRIMA_INLINE_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_INLINE_c
+name: c
ld_name: PRIMA_INLINE_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_INLINE_set_a
+name: set_a
ld_name: PRIMA_INLINE_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_INLINE_c
+name: c
ld_name: PRIMA_INLINE_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_INLINE_set_a
+name: set_a
ld_name: PRIMA_INLINE_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_INLINE_c
+name: c
ld_name: PRIMA_INLINE_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_set_a
+name: set_a
ld_name: PRIMA_set_a
offset: -1
irg = g68"
variability: variability_constant
volatility: volatility_non_volatile
peculiarity: peculiarity_existent
-name: PRIMA_c
+name: c
ld_name: PRIMA_c
offset: -1
irg = g90"