gingerBill 2 年之前
父節點
當前提交
64047cbf05
共有 1 個文件被更改,包括 4 次插入3 次删除
  1. 4 3
      core/reflect/reflect.odin

+ 4 - 3
core/reflect/reflect.odin

@@ -661,9 +661,10 @@ union_variant_typeid :: proc(a: any) -> typeid {
 		case: unimplemented()
 		}
 
-		if a.data != nil && tag != 0 {
-			i := tag if info.no_nil else tag-1
-			return info.variants[i].id
+		if info.no_nil {
+			return info.variants[tag].id
+		} else if tag != 0 {
+			return info.variants[tag-1].id
 		}
 
 		return nil