From 1be75e7451b00aca32ed96be43223ee67d163429 Mon Sep 17 00:00:00 2001 From: Piotr Trojanek Date: Thu, 15 Apr 2021 23:22:32 +0200 Subject: [PATCH] [Ada] Do not expect execv to return 0 gcc/ada/ * adaint.c (__gnat_portable_spawn): Do not expect execv to return 0. (__gnat_portable_no_block_spawn): Likewise. --- gcc/ada/adaint.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/gcc/ada/adaint.c b/gcc/ada/adaint.c index 60cfa932990a..6781728f45e2 100644 --- a/gcc/ada/adaint.c +++ b/gcc/ada/adaint.c @@ -2424,8 +2424,10 @@ __gnat_portable_spawn (char *args[] ATTRIBUTE_UNUSED) if (pid == 0) { /* The child. */ - if (execv (args[0], MAYBE_TO_PTR32 (args)) != 0) - _exit (1); + execv (args[0], MAYBE_TO_PTR32 (args)); + + /* execv() returns only on error */ + _exit (1); } /* The parent. */ @@ -2822,8 +2824,10 @@ __gnat_portable_no_block_spawn (char *args[] ATTRIBUTE_UNUSED) if (pid == 0) { /* The child. */ - if (execv (args[0], MAYBE_TO_PTR32 (args)) != 0) - _exit (1); + execv (args[0], MAYBE_TO_PTR32 (args)); + + /* execv() returns only on error */ + _exit (1); } return pid; -- 2.47.2