aboutsummaryrefslogtreecommitdiff
path: root/src/types.cpp
diff options
context:
space:
mode:
authorgingerBill <gingerBill@users.noreply.github.com>2026-01-15 18:03:09 +0000
committerGitHub <noreply@github.com>2026-01-15 18:03:09 +0000
commitfaacac33ab6c03266e2c1407f027be811e97e093 (patch)
tree48b83381b47c4ae73dd5e87d1a3c71629cf176e9 /src/types.cpp
parent7f509c01f1c912e2d4ccf5d8f1a029167fff107e (diff)
parent59ae82634ed69b019a8965d1120dd8c7c5a7a605 (diff)
Merge pull request #6135 from odin-lang/bill/must-tail
`#must_tail`
Diffstat (limited to 'src/types.cpp')
-rw-r--r--src/types.cpp38
1 files changed, 5 insertions, 33 deletions
diff --git a/src/types.cpp b/src/types.cpp
index 18e3b56ac..911cd4448 100644
--- a/src/types.cpp
+++ b/src/types.cpp
@@ -5210,40 +5210,12 @@ gb_internal gbString write_type_to_string(gbString str, Type *type, bool shortha
case Type_Proc:
str = gb_string_appendc(str, "proc");
- switch (type->Proc.calling_convention) {
- case ProcCC_Odin:
- if (default_calling_convention() != ProcCC_Odin) {
- str = gb_string_appendc(str, " \"odin\" ");
- }
- break;
- case ProcCC_Contextless:
- if (default_calling_convention() != ProcCC_Contextless) {
- str = gb_string_appendc(str, " \"contextless\" ");
- }
- break;
- case ProcCC_CDecl:
- str = gb_string_appendc(str, " \"c\" ");
- break;
- case ProcCC_StdCall:
- str = gb_string_appendc(str, " \"std\" ");
- break;
- case ProcCC_FastCall:
- str = gb_string_appendc(str, " \"fastcall\" ");
- break;
- break;
- case ProcCC_None:
- str = gb_string_appendc(str, " \"none\" ");
- break;
- case ProcCC_Naked:
- str = gb_string_appendc(str, " \"naked\" ");
- break;
- // case ProcCC_VectorCall:
- // str = gb_string_appendc(str, " \"vectorcall\" ");
- // break;
- // case ProcCC_ClrCall:
- // str = gb_string_appendc(str, " \"clrcall\" ");
- // break;
+ if (type->Proc.calling_convention != default_calling_convention()) {
+ str = gb_string_appendc(str, " \"");
+ str = gb_string_appendc(str, proc_calling_convention_strings[type->Proc.calling_convention]);
+ str = gb_string_appendc(str, "\" ");
}
+
str = gb_string_appendc(str, "(");
if (type->Proc.params) {
str = write_type_to_string(str, type->Proc.params, shorthand, allow_polymorphic);