From ba00b7b7c4c5d3ab496f74b6183462ecd714af77 Mon Sep 17 00:00:00 2001 From: Andre Maroneze <andre.maroneze@cea.fr> Date: Wed, 1 Jun 2022 17:19:49 +0200 Subject: [PATCH] [Variadic] avoid musl-related test differences --- .../tests/defined/oracle/simple.0.res.oracle | 6 +++--- .../tests/defined/oracle/simple.1.res.oracle | 7 +++---- src/plugins/variadic/tests/defined/simple.c | 14 ++++++++++++-- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/src/plugins/variadic/tests/defined/oracle/simple.0.res.oracle b/src/plugins/variadic/tests/defined/oracle/simple.0.res.oracle index d682b185f8e..c1ce928d7fe 100644 --- a/src/plugins/variadic/tests/defined/oracle/simple.0.res.oracle +++ b/src/plugins/variadic/tests/defined/oracle/simple.0.res.oracle @@ -1,5 +1,5 @@ -[variadic] simple.c:9: Declaration of variadic function sum. -[variadic] simple.c:24: Generic translation of call to variadic function. +[variadic] simple.c:19: Declaration of variadic function sum. +[variadic] simple.c:34: Generic translation of call to variadic function. [eva] Analyzing a complete application starting at main [eva] Computing initial state [eva] Initial state computed @@ -12,7 +12,7 @@ [eva:final-states] Values at end of function main: /* Generated by Frama-C */ -#include "stdarg.h" +typedef void * const *va_list; /*@ requires n ≥ 0; */ int sum(int n, void * const *__va_params) { diff --git a/src/plugins/variadic/tests/defined/oracle/simple.1.res.oracle b/src/plugins/variadic/tests/defined/oracle/simple.1.res.oracle index 7b5221cf83d..c1ce928d7fe 100644 --- a/src/plugins/variadic/tests/defined/oracle/simple.1.res.oracle +++ b/src/plugins/variadic/tests/defined/oracle/simple.1.res.oracle @@ -1,5 +1,5 @@ -[variadic] simple.c:9: Declaration of variadic function sum. -[variadic] simple.c:24: Generic translation of call to variadic function. +[variadic] simple.c:19: Declaration of variadic function sum. +[variadic] simple.c:34: Generic translation of call to variadic function. [eva] Analyzing a complete application starting at main [eva] Computing initial state [eva] Initial state computed @@ -12,8 +12,7 @@ [eva:final-states] Values at end of function main: /* Generated by Frama-C */ -typedef void * const *__gnuc_va_list; -typedef __gnuc_va_list va_list; +typedef void * const *va_list; /*@ requires n ≥ 0; */ int sum(int n, void * const *__va_params) { diff --git a/src/plugins/variadic/tests/defined/simple.c b/src/plugins/variadic/tests/defined/simple.c index b2346a3f09c..617d61e4380 100644 --- a/src/plugins/variadic/tests/defined/simple.c +++ b/src/plugins/variadic/tests/defined/simple.c @@ -1,10 +1,20 @@ /* run.config -STDOPT: -STDOPT: #"-no-frama-c-stdlib -no-pp-annot" +STDOPT: #"-c11" +STDOPT: #"-no-frama-c-stdlib -no-pp-annot -c11" */ +/* The defines and typedefs below avoid issues with Musl: without them, + pretty-printing 'va_list' results in `typedef __gnuc_va_list va_list`, but + only on GNU libc-based systems (and not on Alpine Linux, which is based on + musl). */ +#define __GNUC_VA_LIST +#define __va_list__ +typedef void *__builtin_va_list; +typedef __builtin_va_list va_list; #include <stdarg.h> + + /*@ requires n>= 0; */ int sum(int n, ...){ int ret = 0; -- GitLab