aboutsummaryrefslogtreecommitdiff
path: root/src/check_type.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/check_type.cpp')
-rw-r--r--src/check_type.cpp23
1 files changed, 10 insertions, 13 deletions
diff --git a/src/check_type.cpp b/src/check_type.cpp
index cb6222be8..81bc7a0d1 100644
--- a/src/check_type.cpp
+++ b/src/check_type.cpp
@@ -1709,17 +1709,16 @@ Type *type_to_abi_compat_param_type(gbAllocator a, Type *original_type) {
case Type_Pointer: break;
case Type_Proc: break; // NOTE(bill): Just a pointer
- // Odin only types
- case Type_Slice:
- case Type_DynamicArray:
- case Type_Map:
- break;
-
// Odin specific
+ case Type_Slice:
case Type_Array:
case Type_Vector:
+ case Type_DynamicArray:
+ case Type_Map:
+ case Type_Union:
// Could be in C too
- case Type_Struct: {
+ case Type_Struct:
+ {
i64 align = type_align_of(a, original_type);
i64 size = type_size_of(a, original_type);
switch (8*size) {
@@ -1752,15 +1751,13 @@ Type *type_to_abi_compat_param_type(gbAllocator a, Type *original_type) {
case Type_Pointer: break;
case Type_Proc: break; // NOTE(bill): Just a pointer
- // Odin only types
- case Type_Slice:
- case Type_DynamicArray:
- case Type_Map:
- break;
-
// Odin specific
+ case Type_Slice:
case Type_Array:
case Type_Vector:
+ case Type_DynamicArray:
+ case Type_Map:
+ case Type_Union:
// Could be in C too
case Type_Struct: {
i64 align = type_align_of(a, original_type);