/** general **/
/*******************************************************************/
-unsigned long entity_visited;
-
void
init_entity (void)
{
/** ENTITY **/
/*******************************************************************/
+INLINE type *get_entity_owner (entity *ent);
+
INLINE void insert_entity_in_owner (entity *ent) {
type *owner = ent->owner;
switch (get_type_tpop_code(owner)) {
/* Sets visited field in entity to entity_visited. */
void mark_entity_visited(entity *entity) {
assert (entity);
- entity->visit = entity_visited;
+ entity->visit = type_visited;
}
* In that case there nowhere exists code for this entity and this entity
* is never dynamically used in the code.
* Values: description, existent. Default: existent.
- * visited visited flag. Master flag is entity_visited.
+ * visited visited flag. Master flag is type_visited.
*
* These fields can only be accessed via access functions.
*
/*****/
-
-/****v* entity/visited
- *
- * NAME
- * entity_visited - visited flag to traverse the entity information
- * PURPOSE
- * Increase this flag by one before traversing the entity information.
- * Mark entity nodes as visited by set_entity_visited(entity, value) or
- * mark_entity_visited.
- * Check whether node was already visited by comparing get_entity_visited(entity)
- * and entity_visited.
- * Or use the function to walk all entities.
- * SEE ALSO
- * SOURCE
- */
-extern unsigned long entity_visited;
-/*****/
-
-
# endif /* _ENTITY_H_ */
typedef enum peculiarity {
description, /* Represents only a description. The entity/type is never
allocated, no code/data exists for this entity/type. */
- inherited, /* Describes explicitly that other entities are inherited
- to the owner of this entity. Overwrites must refer to
- at least one other entity. If this is a method entity
- there exists no irg for this entity, only for one of
- the overwritten ones. */
+ inherited, /* Describes explicitly that other entities are
+ inherited to the owner of this entity.
+ Overwrites must refer to at least one other
+ entity. If this is a method entity there exists
+ no irg for this entity, only for one of the
+ overwritten ones. */
existent /* The entity/type (can) exist. */
} peculiarity;