return init_aop_type (ATK_STRUCT, 0, tag, -1);
}
+const struct aop_type *
+aop_t_struct_ptr (const char *tag)
+{
+ if (tag == NULL)
+ fatal_error ("(InterAspect) Must supply a non-NULL tag when specifying a"
+ " struct type.");
+
+ return init_aop_type (ATK_STRUCT, 1, tag, -1);
+}
+
const struct aop_type *
aop_t_union (const char *tag)
{
return init_aop_type (ATK_UNION, 0, tag, -1);
}
+const struct aop_type *
+aop_t_union_ptr (const char *tag)
+{
+ if (tag == NULL)
+ fatal_error ("(InterAspect) Must supply a non-NULL tag when specifying a"
+ " union type.");
+
+ return init_aop_type (ATK_UNION, 1, tag, -1);
+}
+
const struct aop_type *
aop_t_enum (const char *tag)
{
extern const struct aop_type *aop_t_float64 ();
extern const struct aop_type *aop_t_float128 ();
extern const struct aop_type *aop_t_struct (const char *tag);
+extern const struct aop_type *aop_t_struct_ptr (const char *tag);
extern const struct aop_type *aop_t_union (const char *tag);
+extern const struct aop_type *aop_t_union_ptr (const char *tag);
extern const struct aop_type *aop_t_enum (const char *tag);
extern const struct aop_type *aop_t_pointer_to (const struct aop_type *type);