[Ada] Add case to consider ENODEV a "file not found error"
authorCorentin Gay <gay@adacore.com>
Thu, 9 Sep 2021 09:57:06 +0000 (11:57 +0200)
committerPierre-Marie de Rodat <derodat@adacore.com>
Tue, 5 Oct 2021 08:20:02 +0000 (08:20 +0000)
gcc/ada/

* sysdep.c (__gnat_is_file_not_found_error): Add else if case.

gcc/ada/sysdep.c

index ee951e3..2c50b36 100644 (file)
@@ -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.
      */