[gcc r12-4159] [Ada] Add case to consider ENODEV a "file not found error"

Pierre-Marie de Rodat pmderodat@gcc.gnu.org
Tue Oct 5 08:23:20 GMT 2021


https://gcc.gnu.org/g:50524b0aa6ae0ffa1399851a19d6d97c867206a7

commit r12-4159-g50524b0aa6ae0ffa1399851a19d6d97c867206a7
Author: Corentin Gay <gay@adacore.com>
Date:   Thu Sep 9 11:57:06 2021 +0200

    [Ada] Add case to consider ENODEV a "file not found error"
    
    gcc/ada/
    
            * sysdep.c (__gnat_is_file_not_found_error): Add else if case.

Diff:
---
 gcc/ada/sysdep.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/gcc/ada/sysdep.c b/gcc/ada/sysdep.c
index ee951e31049..2c50b3621b5 100644
--- a/gcc/ada/sysdep.c
+++ b/gcc/ada/sysdep.c
@@ -907,6 +907,10 @@ __gnat_is_file_not_found_error (int errno_val)
     if (errno_val == ENOENT)
       return 1;
 #ifdef __vxworks
+    /* Starting with VxWorks 21.03, the fopen() function can set errno to
+     * ENODEV when the prefix of the path does not match any known device. */
+    else if (errno_val == ENODEV)
+      return 1;
     /* In the case of VxWorks, we also have to take into account various
      * filesystem-specific variants of this error.
      */


More information about the Gcc-cvs mailing list