]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Separate out error_t definition
authorSamuel Thibault <samuel.thibault@ens-lyon.org>
Sun, 4 Mar 2018 02:15:49 +0000 (03:15 +0100)
committerSamuel Thibault <samuel.thibault@ens-lyon.org>
Sun, 4 Mar 2018 16:27:58 +0000 (17:27 +0100)
so interfaces needing it can get it.

* stdlib/errno.h (error_t): Move definition to...
* bits/types/error_t.h: ... new header.
* stdlib/Makefile (headers): Add bits/types/error_t.h.
* sysdeps/mach/hurd/bits/errno.h (error_t): Move definition to...
* sysdeps/mach/hurd/bits/types/error_t.h: ... new header.
* sysdeps/mach/hurd/errnos.awk (error_t): Likewise.
* hurd/hurd.h: Include <bits/types/error_t.h>
* hurd/hurd/fd.h: Include <bits/types/error_t.h>
* hurd/hurd/id.h: Include <errno.h> and <bits/types/error_t.h>
* hurd/hurd/lookup.h: Include <errno.h> and <bits/types/error_t.h>
* hurd/hurd/resource.h: Include <bits/types/error_t.h>
* hurd/hurd/signal.h: Include <bits/types/error_t.h>
* hurd/hurd/sigpreempt.h: Include <bits/types/error_t.h>

14 files changed:
ChangeLog
bits/types/error_t.h [new file with mode: 0644]
hurd/hurd.h
hurd/hurd/fd.h
hurd/hurd/id.h
hurd/hurd/lookup.h
hurd/hurd/resource.h
hurd/hurd/signal.h
hurd/hurd/sigpreempt.h
stdlib/Makefile
stdlib/errno.h
sysdeps/mach/hurd/bits/errno.h
sysdeps/mach/hurd/bits/types/error_t.h [new file with mode: 0644]
sysdeps/mach/hurd/errnos.awk

index 2810a9cb2894c78d0cbf71ab9ad262c23bfe272a..a2d8575c381dec87171254195d2f6c76a8d36cfb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
        Include <stddef.h> and <bits/types/sigset_t.h>
        (struct hurd_signal_preemptor, hurd_catch_signal): Use __sighandler_t
        instead of sighandler_t.
+       * stdlib/errno.h (error_t): Move definition to...
+       * bits/types/error_t.h: ... new header.
+       * stdlib/Makefile (headers): Add bits/types/error_t.h.
+       * sysdeps/mach/hurd/bits/errno.h (error_t): Move definition to...
+       * sysdeps/mach/hurd/bits/types/error_t.h: ... new header.
+       * sysdeps/mach/hurd/errnos.awk (error_t): Likewise.
+       * hurd/hurd.h: Include <bits/types/error_t.h>
+       * hurd/hurd/fd.h: Include <bits/types/error_t.h>
+       * hurd/hurd/id.h: Include <errno.h> and <bits/types/error_t.h>
+       * hurd/hurd/lookup.h: Include <errno.h> and <bits/types/error_t.h>
+       * hurd/hurd/resource.h: Include <bits/types/error_t.h>
+       * hurd/hurd/signal.h: Include <bits/types/error_t.h>
+       * hurd/hurd/sigpreempt.h: Include <bits/types/error_t.h>
 
 2018-03-03  Andreas Schwab  <schwab@linux-m68k.org>
 
diff --git a/bits/types/error_t.h b/bits/types/error_t.h
new file mode 100644 (file)
index 0000000..8ea7a81
--- /dev/null
@@ -0,0 +1,24 @@
+/* Define error_t.
+   Copyright (C) 1991-2018 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <http://www.gnu.org/licenses/>.  */
+
+#ifndef __error_t_defined
+# define __error_t_defined 1
+
+typedef int error_t;
+
+#endif
index 029a7ebc595b7bb49a789dc63021db0590db1327..d3c868928b44eaaa54f2759262e388f486da1d31 100644 (file)
@@ -41,6 +41,7 @@
 #include <hurd/port.h>
 
 #include <errno.h>
+#include <bits/types/error_t.h>
 #include <bits/types/sigset_t.h>
 
 #ifndef _HURD_H_EXTERN_INLINE
index 5a067d48884394047f16e548c2381434ea33f47e..af5fdcf75932145439d6e3c3e94c7724931bf45b 100644 (file)
@@ -142,6 +142,7 @@ _hurd_fd_get (int fd)
      __result; })
 \f
 #include <errno.h>
+#include <bits/types/error_t.h>
 
 /* Check if ERR should generate a signal.
    Returns the signal to take, or zero if none.  */
index 28563c96180e1d06f7afc2063f4671b94a0ad952..38988bfe72980b2242e0403e86045493e16b8134 100644 (file)
@@ -21,6 +21,8 @@
 #define        _HURD_ID_H      1
 #include <features.h>
 #include <hurd/hurd_types.h>
+#include <errno.h>
+#include <bits/types/error_t.h>
 
 #include <cthreads.h>          /* For `struct mutex'.  */
 
index 9a1f58058fd9f637e5d89aeef3a63bcee3878c5a..d0fa87b3d667ab73ed473e34bde6542f0ab70bfe 100644 (file)
@@ -19,6 +19,8 @@
 #ifndef _HURD_LOOKUP_H
 #define _HURD_LOOKUP_H 1
 
+#include <errno.h>
+#include <bits/types/error_t.h>
 #include <hurd/hurd_types.h>
 
 /* These functions all take two callback functions as the first two arguments.
index 23b795dce5a7b3b815aeb801e09e26ab72032be9..eb931107991c5a803dffb13a9a8fbe49c55dec97 100644 (file)
@@ -22,6 +22,7 @@
 #include <sys/types.h>
 #include <sys/resource.h>
 #include <errno.h>
+#include <bits/types/error_t.h>
 #include <hurd/process.h>
 
 /* This array contains the current resource limits for the process.  */
index 9cb5f3cfc4c2f83af67bd41ad4c2883d40ae9335..d4edf317a1d3c96eb912d267c448fa7e24df3cd0 100644 (file)
@@ -31,6 +31,7 @@
 #include <hurd/hurd_types.h>
 #include <signal.h>
 #include <errno.h>
+#include <bits/types/error_t.h>
 #include <bits/types/stack_t.h>
 #include <bits/types/sigset_t.h>
 #include <hurd/msg.h>
index d059408fb8d4ad8055e434c0b94b7bcde113b14d..a1df82e2c690318b0736fca40beed33476e45dbd 100644 (file)
@@ -22,6 +22,7 @@
 #define __need_size_t
 #include <stddef.h>
 #include <errno.h>
+#include <bits/types/error_t.h>
 #include <signal.h>            /* For sighandler_t, SIG_ERR.  */
 #include <bits/types/sigset_t.h>
 struct hurd_sigstate;          /* <hurd/signal.h> */
index 7c363a6e4d9f0d23f259c51832e428079796eac5..af1643c0c40fc16bb744116ebff3a7f299ce2d98 100644 (file)
@@ -25,7 +25,7 @@ include ../Makeconfig
 headers        := stdlib.h bits/stdlib.h bits/stdlib-ldbl.h bits/stdlib-float.h      \
           monetary.h bits/monetary-ldbl.h                                    \
           inttypes.h stdint.h bits/wordsize.h                                \
-          errno.h sys/errno.h bits/errno.h                                   \
+          errno.h sys/errno.h bits/errno.h bits/types/error_t.h              \
           ucontext.h sys/ucontext.h                                          \
           alloca.h fmtmsg.h                                                  \
           bits/stdlib-bsearch.h sys/random.h bits/stdint-intn.h              \
index e12fed60eaa05029f779a9fb1466c3c6a969989e..fc8b496faed19a40d33156d877b1974cb103d9e4 100644 (file)
@@ -45,12 +45,7 @@ extern int *__errno_location (void) __THROW __attribute_const__;
 extern char *program_invocation_name;
 extern char *program_invocation_short_name;
 
-/* bits/errno.h may have defined this type.  If it didn't, provide a
-   fallback definition.  */
-#  ifndef __error_t_defined
-#   define __error_t_defined 1
-typedef int error_t;
-#  endif
+#include <bits/types/error_t.h>
 
 # endif /* __USE_GNU */
 
index f0a11af9ea1f46756186de2b4ec13edb35fa8952..f16cd51a63d518c7270855a1d36b492f6e4eb43b 100644 (file)
@@ -215,14 +215,6 @@ enum __error_t_codes
   __FORCE_ERROR_T_CODES_SIGNED = -1
 };
 
-/* User-visible type of error codes.  It is ok to use 'int' or
-   'kern_return_t' for these, but with 'error_t' the debugger prints
-   symbolic values.  */
-# if !defined __error_t_defined && defined __USE_GNU
-#  define __error_t_defined 1
-typedef enum __error_t_codes error_t;
-# endif
-
 #endif /* not __ASSEMBLER__ */
 
 /* The C standard requires that all of the E-constants be
diff --git a/sysdeps/mach/hurd/bits/types/error_t.h b/sysdeps/mach/hurd/bits/types/error_t.h
new file mode 100644 (file)
index 0000000..286e5fd
--- /dev/null
@@ -0,0 +1,29 @@
+/* Define error_t.
+   Copyright (C) 1991-2018 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <http://www.gnu.org/licenses/>.  */
+
+#include <bits/errno.h>
+
+/* User-visible type of error codes.  It is ok to use 'int' or
+   'kern_return_t' for these, but with 'error_t' the debugger prints
+   symbolic values.  */
+#ifndef __error_t_defined
+# define __error_t_defined 1
+
+typedef enum __error_t_codes error_t;
+
+#endif
index bc69e06bf6b90c031cf7addcba2cd0410cdf1d2e..dc19350eb0b9a9b255803d59101a3872600d7930 100644 (file)
@@ -181,14 +181,6 @@ function print_errno_enum(maxseq)
   print "  __FORCE_ERROR_T_CODES_SIGNED = -1";
   print "};";
   print "";
-  print "/* User-visible type of error codes.  It is ok to use 'int' or";
-  print "   'kern_return_t' for these, but with 'error_t' the debugger prints";
-  print "   symbolic values.  */";
-  print "# if !defined __error_t_defined && defined __USE_GNU";
-  print "#  define __error_t_defined 1";
-  print "typedef enum __error_t_codes error_t;"
-  print "# endif";
-  print "";
   print "#endif /* not __ASSEMBLER__ */";
 }