From ec5e5948315c856077861b06162ffbc4a83c5b79 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 20 Nov 2018 13:54:12 +0100 Subject: [PATCH] basic/main-func: unify the two macros No functional change. --- src/basic/main-func.h | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/src/basic/main-func.h b/src/basic/main-func.h index caa5885e8b..9dfcea9296 100644 --- a/src/basic/main-func.h +++ b/src/basic/main-func.h @@ -5,23 +5,21 @@ #include "static-destruct.h" -/* Negative return values from impl are mapped to EXIT_FAILURE, and - * everything else means success! */ -#define DEFINE_MAIN_FUNCTION(impl) \ +#define _DEFINE_MAIN_FUNCTION(impl, ret) \ int main(int argc, char *argv[]) { \ int r; \ r = impl(argc, argv); \ static_destruct(); \ - return r < 0 ? EXIT_FAILURE : EXIT_SUCCESS; \ + return ret; \ } +/* Negative return values from impl are mapped to EXIT_FAILURE, and + * everything else means success! */ +#define DEFINE_MAIN_FUNCTION(impl) \ + _DEFINE_MAIN_FUNCTION(impl, r < 0 ? EXIT_FAILURE : EXIT_SUCCESS) + /* Zero is mapped to EXIT_SUCCESS, and both negative and positive values * are mapped to EXIT_FAILURE. * Note: this means "true" maps to EXIT_FAILURE. */ #define DEFINE_MAIN_FUNCTION_WITH_POSITIVE_FAILURE(impl) \ - int main(int argc, char *argv[]) { \ - int r; \ - r = impl(argc, argv); \ - static_destruct(); \ - return r != 0 ? EXIT_FAILURE : EXIT_SUCCESS; \ - } + _DEFINE_MAIN_FUNCTION(impl, r != 0 ? EXIT_FAILURE : EXIT_SUCCESS) -- 2.25.1