aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2023-12-13 13:10:51 +0000
committergingerBill <bill@gingerbill.org>2023-12-13 13:10:51 +0000
commite0652ee2f46284a21c1752f66e792b28d2c06871 (patch)
tree082f0db105435d520393763163cab7139ea13730 /src
parentbc99bacb2122f073133ddf6eeb31b4db56a99fa7 (diff)
Minor fix to call expr in tilde with variadic parameters
Diffstat (limited to 'src')
-rw-r--r--src/tilde_proc.cpp3
-rw-r--r--src/tilde_stmt.cpp2
-rw-r--r--src/tilde_type_info.cpp4
3 files changed, 2 insertions, 7 deletions
diff --git a/src/tilde_proc.cpp b/src/tilde_proc.cpp
index edd57f567..8e9b80144 100644
--- a/src/tilde_proc.cpp
+++ b/src/tilde_proc.cpp
@@ -861,7 +861,6 @@ gb_internal cgValue cg_build_call_expr_internal(cgProcedure *p, Ast *expr) {
}
GB_ASSERT(e->kind == Entity_Variable);
-
if (pt->variadic && pt->variadic_index == i) {
cgValue variadic_args = cg_const_nil(p, e->type);
auto variadic = slice(ce->split_args->positional, pt->variadic_index, ce->split_args->positional.count);
@@ -964,8 +963,8 @@ gb_internal cgValue cg_build_call_expr_internal(cgProcedure *p, Ast *expr) {
if (pt->variadic && param_index == pt->variadic_index) {
if (!is_c_vararg && args[arg_index].node == nullptr) {
args[arg_index++] = cg_const_nil(p, e->type);
+ continue;
}
- continue;
}
cgValue arg = args[arg_index];
diff --git a/src/tilde_stmt.cpp b/src/tilde_stmt.cpp
index 984fc1a0e..7c090064c 100644
--- a/src/tilde_stmt.cpp
+++ b/src/tilde_stmt.cpp
@@ -24,7 +24,7 @@ gb_internal TB_Node *cg_control_region(cgProcedure *p, char const *name) {
}
gb_internal cgValue cg_emit_load(cgProcedure *p, cgValue const &ptr, bool is_volatile) {
- GB_ASSERT(is_type_pointer(ptr.type));
+ GB_ASSERT_MSG(is_type_pointer(ptr.type), "%s", type_to_string(ptr.type));
Type *type = type_deref(ptr.type);
TB_DataType dt = cg_data_type(type);
diff --git a/src/tilde_type_info.cpp b/src/tilde_type_info.cpp
index ad219071f..2188f1cc2 100644
--- a/src/tilde_type_info.cpp
+++ b/src/tilde_type_info.cpp
@@ -119,10 +119,6 @@ gb_internal u64 cg_typeid_as_u64(cgModule *m, Type *type) {
data |= (reserved &~ (1ull<<1)) << 63ull; // reserved
}
- if (type == t_string) {
- gb_printf_err("%llu\n", data);
- }
-
return data;
}