**
*/
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
# include <stdlib.h>
+# include <stddef.h>
# include "entity_t.h"
# include "entity.h"
# include "mangle.h"
res->visit = 0;
- /* add entity to the list of entities of the owner. */
- // res->owner->member[res->owner->n_members] = res;
- // res->owner->n_members ++;
+ switch (get_kind(owner)) {
+ case k_type_class: {
+ add_class_member ((type_class *) owner, res);
+ } break;
+ case k_type_strct: {
+ add_strct_member ((type_strct *) owner, res);
+ } break;
+ case k_type_union: {
+ /* not implemented */
+ } break;
+ case k_type_method: {
+ /* not implemented */
+ } break;
+ default: ;
+ }
return res;
}
-#if 0
-inline char *
+inline const char *
get_entity_name (entity *ent) {
assert (ent);
return id_to_str(get_entity_ident(ent));
- /* GL:
- entity.c:52: warning: return discards `const' from pointer target type
- -- ned so guud
- */
}
-#endif
ident *
get_entity_ident (entity *ent) {
ent->type = type;
}
+inline int
+get_entity_offset (entity *ent) {
+ return ent->offset;
+}
+
+inline void
+set_entity_offset (entity *ent, int offset) {
+ ent->offset = offset;
+}
+
inline ir_graph *
get_entity_irg(entity *ent) {
assert (ent);