Fix logic for comparisons of struct #raw_union types

This commit is contained in:
gingerBill
2020-11-23 16:19:26 +00:00
parent 4e370e6ed8
commit 67bc35e882
2 changed files with 5 additions and 1 deletions
+2 -1
View File
@@ -1207,7 +1207,7 @@ as_raw_data :: proc(a: any) -> (value: rawptr, valid: bool) {
return;
}
/*
not_equal :: proc(a, b: any) -> bool {
return !equal(a, b);
}
@@ -1284,3 +1284,4 @@ equal :: proc(a, b: any) -> bool {
return true;
}
*/
+3
View File
@@ -1919,6 +1919,9 @@ bool is_type_comparable(Type *t) {
return is_type_comparable(t->Opaque.elem);
case Type_Struct:
if (t->Struct.is_raw_union) {
return is_type_simple_compare(t);
}
for_array(i, t->Struct.fields) {
Entity *f = t->Struct.fields[i];
if (!is_type_comparable(f->type)) {