From 856da72d4190b42a012043a745dddc07a36c60c0 Mon Sep 17 00:00:00 2001 From: Michael Schmidt Date: Fri, 13 Jan 2023 12:27:36 +0100 Subject: Don't discard argument of `__builtin_va_end` Instead, evaluate it for the side effects it may contain. Fixes: #474 --- cfrontend/C2C.ml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cfrontend/C2C.ml b/cfrontend/C2C.ml index a23c3cdc..e709c082 100644 --- a/cfrontend/C2C.ml +++ b/cfrontend/C2C.ml @@ -930,8 +930,8 @@ let rec convertExpr env e = | C.ECall({edesc = C.EVar {name = "__builtin_va_arg"}}, [arg1; arg2]) -> make_builtin_va_arg env (convertTyp env e.etyp) (convertExpr env arg1) - | C.ECall({edesc = C.EVar {name = "__builtin_va_end"}}, _) -> - Ecast (ezero, Tvoid) + | C.ECall({edesc = C.EVar {name = "__builtin_va_end"}}, [arg]) -> + Ecast (convertExpr env arg, Tvoid) | C.ECall({edesc = C.EVar {name = "__builtin_va_copy"}}, [arg1; arg2]) -> let dst = convertExpr env arg1 in -- cgit