+#endif
+int get_union_n_members (type *uni) {
+ assert(uni && (uni->type_op == type_union));
+ return (ARR_LEN (uni->attr.ua.members))-1;
+}
+void add_union_member (type *uni, entity *member) {
+ assert(uni && (uni->type_op == type_union));
+ ARR_APP1 (entity *, uni->attr.ua.members, member);
+}
+entity *get_union_member (type *uni, int pos) {
+ assert(uni && (uni->type_op == type_union));
+ return uni->attr.ua.members[pos+1];
+}
+void set_union_member (type *uni, int pos, entity *member) {
+ assert(uni && (uni->type_op == type_union));
+ uni->attr.ua.members[pos+1] = member;
+}