union dynamic_prop_data data;
};
+/* Compare two dynamic_prop objects for equality. dynamic_prop
+ instances are equal iff they have the same type and storage. */
+extern bool operator== (const dynamic_prop &l, const dynamic_prop &r);
+
+/* Compare two dynamic_prop objects for inequality. */
+static inline bool operator!= (const dynamic_prop &l, const dynamic_prop &r)
+{
+ return !(l == r);
+}
+
/* * Define a type's dynamic property node kind. */
enum dynamic_prop_node_kind
{
int flag_bound_evaluated : 1;
};
+/* Compare two range_bounds objects for equality. Simply does
+ memberwise comparison. */
+extern bool operator== (const range_bounds &l, const range_bounds &r);
+
+/* Compare two range_bounds objects for inequality. */
+static inline bool operator!= (const range_bounds &l, const range_bounds &r)
+{
+ return !(l == r);
+}
+
union type_specific
{
/* * CPLUS_STUFF is for TYPE_CODE_STRUCT. It is initialized to
/* * Given a dynamic property PROP of a given KIND, add this dynamic
property to the given TYPE.
- This function assumes that TYPE is objfile-owned, and that OBJFILE
- is the TYPE's objfile. */
+ This function assumes that TYPE is objfile-owned. */
extern void add_dyn_prop
(enum dynamic_prop_node_kind kind, struct dynamic_prop prop,
- struct type *type, struct objfile *objfile);
+ struct type *type);
extern void remove_dyn_prop (enum dynamic_prop_node_kind prop_kind,
struct type *type);