zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

errno.c (1154B) - Raw


      1 /* Definition of `errno' variable.  Canonical version.
      2    Copyright (C) 2002-2025 Free Software Foundation, Inc.
      3    This file is part of the GNU C Library.
      4 
      5    The GNU C Library is free software; you can redistribute it and/or
      6    modify it under the terms of the GNU Lesser General Public
      7    License as published by the Free Software Foundation; either
      8    version 2.1 of the License, or (at your option) any later version.
      9 
     10    The GNU C Library is distributed in the hope that it will be useful,
     11    but WITHOUT ANY WARRANTY; without even the implied warranty of
     12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     13    Lesser General Public License for more details.
     14 
     15    You should have received a copy of the GNU Lesser General Public
     16    License along with the GNU C Library; if not, see
     17    <https://www.gnu.org/licenses/>.  */
     18 
     19 #include <errno.h>
     20 #include <tls.h>
     21 #include <dl-sysdep.h>
     22 #undef errno
     23 
     24 #if RTLD_PRIVATE_ERRNO
     25 
     26 /* Code compiled for rtld refers only to this name.  */
     27 int rtld_errno attribute_hidden;
     28 
     29 #else
     30 
     31 __thread int errno;
     32 extern __thread int __libc_errno __attribute__ ((alias ("errno")))
     33   attribute_hidden;
     34 
     35 #endif