* external_visible, external_allocated)
* variability A flag indicating the variability of this entity (values:
* uninitialized, initalized, part_constant, constant)
+ * volatility @@@
* offset The offset of the entity within the compound object. Only set
* if the owner in the state "layout_fixed".
* overwrites A list of entities overwritten by this entity. This list is only
be static_allocated. */
external_allocated /* The entity is defined and allocated externally. This compilation
must not allocate memory for this entity. The entity must
- be static_allocated. */
+ be static_allocated. This can also be an external defined
+ method. */
} ent_visibility;
ent_visibility get_entity_visibility (entity *ent);
* A fixed layout for enumeration types means that each enumeration
* is associated with an implementation value.
* visit A counter for walks of the type information.
- * link A void* to associate some additional inforamtion with the type.
+ * link A void* to associate some additional information with the type.
*
* These fields can only be accessed via access functions.
*
* peculiarity The peculiarity of this class. If the class is of peculiarity
* "description" it only is a description of requirememts to a class,
* as, e.g., a Java interface. The class will never be allocated.
- * Values: description, existent. Default: existent.
+ * Peculiatity inherited is only possible for entities. An entity
+ * is of peculiarity inherited if the compiler generated the entity
+ * to explicitly resolve inheritance. An inherited method entity has
+ * no value for irg.
+ * Values: description, existent, inherited. Default: existent.
*
* SOURCE
*/
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. */
existent /* The entity/type (can) exist. */
} peculiarity;