summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/atomic.h4
-rw-r--r--include/bits/xopen_lim.h2
-rw-r--r--include/caller.h2
-rw-r--r--include/ctype.h2
-rw-r--r--include/dirent.h17
-rw-r--r--include/dlfcn.h13
-rw-r--r--include/fcntl.h7
-rw-r--r--include/features.h21
-rw-r--r--include/fenv.h2
-rw-r--r--include/gnu-versions.h2
-rw-r--r--include/gnu/libc-version.h2
-rw-r--r--include/ifunc-impl-list.h2
-rw-r--r--include/inline-hashtab.h2
-rw-r--r--include/libc-internal.h13
-rw-r--r--include/libc-symbols.h33
-rw-r--r--include/libio.h3
-rw-r--r--include/limits.h2
-rw-r--r--include/link.h6
-rw-r--r--include/list.h2
-rw-r--r--include/math.h6
-rw-r--r--include/nss.h13
-rw-r--r--include/programs/xmalloc.h2
-rw-r--r--include/pwd.h2
-rw-r--r--include/rounding-mode.h2
-rw-r--r--include/rpc/rpc.h2
-rw-r--r--include/scratch_buffer.h7
-rw-r--r--include/set-hooks.h2
-rw-r--r--include/setjmp.h6
-rw-r--r--include/shlib-compat.h2
-rw-r--r--include/signal.h5
-rw-r--r--include/stackinfo.h2
-rw-r--r--include/stap-probe.h14
-rw-r--r--include/stdc-predef.h14
-rw-r--r--include/stdlib.h23
-rw-r--r--include/string.h23
-rw-r--r--include/sys/mman.h4
-rw-r--r--include/sys/socket.h8
-rw-r--r--include/sys/stat.h3
-rw-r--r--include/sys/time.h2
-rw-r--r--include/sys/utsname.h4
-rw-r--r--include/unistd.h7
-rw-r--r--include/values.h2
-rw-r--r--include/wchar.h3
43 files changed, 172 insertions, 123 deletions
diff --git a/include/atomic.h b/include/atomic.h
index 221bea0ad3..5e8bfffa08 100644
--- a/include/atomic.h
+++ b/include/atomic.h
@@ -1,5 +1,5 @@
/* Internal macros for atomic operations for GNU C Library.
- Copyright (C) 2002-2015 Free Software Foundation, Inc.
+ Copyright (C) 2002-2016 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
@@ -47,7 +47,7 @@
#include <stdlib.h>
-#include <bits/atomic.h>
+#include <atomic-machine.h>
/* Wrapper macros to call pre_NN_post (mem, ...) where NN is the
bit width of *MEM. The calling macro puts parens around MEM
diff --git a/include/bits/xopen_lim.h b/include/bits/xopen_lim.h
index 10918f48d2..26b4fba970 100644
--- a/include/bits/xopen_lim.h
+++ b/include/bits/xopen_lim.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996-2015 Free Software Foundation, Inc.
+/* Copyright (C) 1996-2016 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
diff --git a/include/caller.h b/include/caller.h
index ed8cac823d..19c5c2661b 100644
--- a/include/caller.h
+++ b/include/caller.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2004-2015 Free Software Foundation, Inc.
+/* Copyright (C) 2004-2016 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
diff --git a/include/ctype.h b/include/ctype.h
index f3157b9e7d..ac6db790b7 100644
--- a/include/ctype.h
+++ b/include/ctype.h
@@ -21,7 +21,7 @@ extern int (__isctype) (int __c, int __mask);
NL_CURRENT_INDIRECT. */
# include "../locale/localeinfo.h"
-# include <bits/libc-tsd.h>
+# include <libc-tsd.h>
# ifndef CTYPE_EXTERN_INLINE /* Used by ctype/ctype-info.c, which see. */
# define CTYPE_EXTERN_INLINE extern inline
diff --git a/include/dirent.h b/include/dirent.h
index 258f2d0791..c792e53c96 100644
--- a/include/dirent.h
+++ b/include/dirent.h
@@ -16,7 +16,8 @@ struct scandir_cancel_struct
/* Now define the internal interfaces. */
extern DIR *__opendir (const char *__name);
-extern DIR *__opendirat (int dfd, const char *__name) internal_function;
+extern DIR *__opendirat (int dfd, const char *__name)
+ internal_function attribute_hidden;
extern DIR *__fdopendir (int __fd);
extern int __closedir (DIR *__dirp);
extern struct dirent *__readdir (DIR *__dirp);
@@ -35,9 +36,9 @@ extern __ssize_t __getdirentries (int __fd, char *__restrict __buf,
__off_t *__restrict __basep)
__THROW __nonnull ((2, 4));
extern __ssize_t __getdents (int __fd, char *__buf, size_t __nbytes)
- internal_function;
+ internal_function attribute_hidden;
extern __ssize_t __getdents64 (int __fd, char *__buf, size_t __nbytes)
- internal_function;
+ internal_function attribute_hidden;
extern int __alphasort64 (const struct dirent64 **a, const struct dirent64 **b)
__attribute_pure__;
extern int __versionsort64 (const struct dirent64 **a,
@@ -45,7 +46,7 @@ extern int __versionsort64 (const struct dirent64 **a,
__attribute_pure__;
extern DIR *__alloc_dir (int fd, bool close_fd, int flags,
const struct stat64 *statp)
- internal_function;
+ internal_function attribute_hidden;
extern __typeof (rewinddir) __rewinddir;
extern void __scandir_cancel_handler (void *arg) attribute_hidden;
@@ -74,6 +75,14 @@ libc_hidden_proto (__rewinddir)
extern __typeof (scandirat) __scandirat;
libc_hidden_proto (__scandirat)
libc_hidden_proto (scandirat64)
+
+# if IS_IN (rtld)
+extern __typeof (__closedir) __closedir attribute_hidden;
+extern __typeof (__fdopendir) __fdopendir attribute_hidden;
+extern __typeof (__readdir) __readdir attribute_hidden;
+extern __typeof (__readdir64) __readdir64 attribute_hidden;
+extern __typeof (__rewinddir) __rewinddir attribute_hidden;
+# endif
# endif
#endif
diff --git a/include/dlfcn.h b/include/dlfcn.h
index 0ce0af5276..2524292ebc 100644
--- a/include/dlfcn.h
+++ b/include/dlfcn.h
@@ -71,19 +71,6 @@ extern void *_dl_vsym (void *handle, const char *name, const char *version,
void *who)
internal_function;
-/* Call OPERATE, catching errors from `dl_signal_error'. If there is no
- error, *ERRSTRING is set to null. If there is an error, *ERRSTRING is
- set to a string constructed from the strings passed to _dl_signal_error,
- and the error code passed is the return value and *OBJNAME is set to
- the object name which experienced the problems. ERRSTRING if nonzero
- points to a malloc'ed string which the caller has to free after use.
- ARGS is passed as argument to OPERATE. MALLOCEDP is set to true only
- if the returned string is allocated using the libc's malloc. */
-extern int _dl_catch_error (const char **objname, const char **errstring,
- bool *mallocedp, void (*operate) (void *),
- void *args)
- internal_function;
-
/* Helper function for <dlfcn.h> functions. Runs the OPERATE function via
_dl_catch_error. Returns zero for success, nonzero for failure; and
arranges for `dlerror' to return the error details.
diff --git a/include/fcntl.h b/include/fcntl.h
index de2372883c..4168ee429f 100644
--- a/include/fcntl.h
+++ b/include/fcntl.h
@@ -8,7 +8,7 @@ libc_hidden_proto (__open64)
extern int __libc_open64 (const char *file, int oflag, ...);
extern int __libc_open (const char *file, int oflag, ...);
libc_hidden_proto (__libc_open)
-extern int __libc_fcntl (int fd, int cmd, ...);
+extern int __libc_fcntl (int fd, int cmd, ...) attribute_hidden;
#ifndef NO_CANCELLATION
extern int __fcntl_nocancel (int fd, int cmd, ...) attribute_hidden;
libc_hidden_proto (__libc_fcntl)
@@ -30,6 +30,11 @@ extern int __openat_2 (int __fd, const char *__path, int __oflag);
extern int __openat64_2 (int __fd, const char *__path, int __oflag);
+#if IS_IN (rtld)
+extern __typeof (__open) __open attribute_hidden;
+extern __typeof (__fcntl) __fcntl attribute_hidden;
+#endif
+
/* Flag determining whether the *at system calls are available. */
extern int __have_atfcts attribute_hidden;
diff --git a/include/features.h b/include/features.h
index bb8061073e..9514d35718 100644
--- a/include/features.h
+++ b/include/features.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-2015 Free Software Foundation, Inc.
+/* Copyright (C) 1991-2016 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
@@ -224,8 +224,9 @@
# undef _POSIX_C_SOURCE
# define _POSIX_C_SOURCE 200809L
#endif
-#if ((!defined __STRICT_ANSI__ || (_XOPEN_SOURCE - 0) >= 500) && \
- !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE)
+#if ((!defined __STRICT_ANSI__ \
+ || (defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) >= 500)) \
+ && !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE)
# define _POSIX_SOURCE 1
# if defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) < 500
# define _POSIX_C_SOURCE 2
@@ -239,7 +240,9 @@
# define __USE_POSIX_IMPLICITLY 1
#endif
-#if defined _POSIX_SOURCE || _POSIX_C_SOURCE >= 1 || defined _XOPEN_SOURCE
+#if (defined _POSIX_SOURCE \
+ || (defined _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 1) \
+ || defined _XOPEN_SOURCE)
# define __USE_POSIX 1
#endif
@@ -247,15 +250,15 @@
# define __USE_POSIX2 1
#endif
-#if (_POSIX_C_SOURCE - 0) >= 199309L
+#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 199309L
# define __USE_POSIX199309 1
#endif
-#if (_POSIX_C_SOURCE - 0) >= 199506L
+#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 199506L
# define __USE_POSIX199506 1
#endif
-#if (_POSIX_C_SOURCE - 0) >= 200112L
+#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 200112L
# define __USE_XOPEN2K 1
# undef __USE_ISOC95
# define __USE_ISOC95 1
@@ -263,7 +266,7 @@
# define __USE_ISOC99 1
#endif
-#if (_POSIX_C_SOURCE - 0) >= 200809L
+#if defined _POSIX_C_SOURCE && (_POSIX_C_SOURCE - 0) >= 200809L
# define __USE_XOPEN2K8 1
# undef _ATFILE_SOURCE
# define _ATFILE_SOURCE 1
@@ -354,7 +357,7 @@
/* Major and minor version number of the GNU C library package. Use
these macros to test for features in specific releases. */
#define __GLIBC__ 2
-#define __GLIBC_MINOR__ 22
+#define __GLIBC_MINOR__ 23
#define __GLIBC_PREREQ(maj, min) \
((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min))
diff --git a/include/fenv.h b/include/fenv.h
index 7070199ece..de4d46f8b7 100644
--- a/include/fenv.h
+++ b/include/fenv.h
@@ -13,7 +13,7 @@ extern int __fesetexceptflag (const fexcept_t *__flagp, int __excepts);
extern int __fegetenv (fenv_t *__envp);
extern int __fesetenv (const fenv_t *__envp);
extern int __feupdateenv (const fenv_t *__envp);
-extern __typeof (fegetround) __fegetround;
+extern __typeof (fegetround) __fegetround __attribute_pure__;
extern __typeof (feholdexcept) __feholdexcept;
extern __typeof (fesetround) __fesetround;
diff --git a/include/gnu-versions.h b/include/gnu-versions.h
index f451e3a86e..141a7116c7 100644
--- a/include/gnu-versions.h
+++ b/include/gnu-versions.h
@@ -1,5 +1,5 @@
/* Header with interface version macros for library pieces copied elsewhere.
- Copyright (C) 1995-2015 Free Software Foundation, Inc.
+ Copyright (C) 1995-2016 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
diff --git a/include/gnu/libc-version.h b/include/gnu/libc-version.h
index 55d8e35e22..780612eca3 100644
--- a/include/gnu/libc-version.h
+++ b/include/gnu/libc-version.h
@@ -1,5 +1,5 @@
/* Interface to GNU libc specific functions for version information.
- Copyright (C) 1998-2015 Free Software Foundation, Inc.
+ Copyright (C) 1998-2016 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
diff --git a/include/ifunc-impl-list.h b/include/ifunc-impl-list.h
index 93acceae1f..739d628f78 100644
--- a/include/ifunc-impl-list.h
+++ b/include/ifunc-impl-list.h
@@ -1,5 +1,5 @@
/* Internal header file for __libc_supported_implementations.
- Copyright (C) 2012-2015 Free Software Foundation, Inc.
+ Copyright (C) 2012-2016 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
diff --git a/include/inline-hashtab.h b/include/inline-hashtab.h
index defa0bf107..f7a003f9ae 100644
--- a/include/inline-hashtab.h
+++ b/include/inline-hashtab.h
@@ -1,5 +1,5 @@
/* Fully-inline hash table, used mainly for managing TLS descriptors.
- Copyright (C) 1999-2015 Free Software Foundation, Inc.
+ Copyright (C) 1999-2016 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Alexandre Oliva <aoliva@redhat.com>
diff --git a/include/libc-internal.h b/include/libc-internal.h
index b37388ecd7..7a185bbdc7 100644
--- a/include/libc-internal.h
+++ b/include/libc-internal.h
@@ -34,6 +34,10 @@ extern void __libc_thread_freeres (void);
/* Define and initialize `__progname' et. al. */
extern void __init_misc (int, char **, char **);
+# if IS_IN (rtld)
+extern __typeof (__profile_frequency) __profile_frequency attribute_hidden;
+# endif
+
/* 1 if 'type' is a pointer type, 0 otherwise. */
# define __pointer_type(type) (__builtin_classify_type ((type) 0) == 5)
@@ -107,13 +111,4 @@ extern void __init_misc (int, char **, char **);
#define DIAG_IGNORE_NEEDS_COMMENT(version, option) \
_Pragma (_DIAG_STR (GCC diagnostic ignored option))
-/* This mirrors the C11 max_align_t type provided by GCC, but it is
- also available in C99 mode. The aligned attributes are required
- because some ABIs have reduced alignment requirements for struct
- and union members. */
-typedef struct {
- long long ll __attribute__ ((__aligned__ (__alignof__ (long long))));
- long double ld __attribute__ ((__aligned__ (__alignof__ (long double))));
-} libc_max_align_t;
-
#endif /* _LIBC_INTERNAL */
diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index 743b6f6f5b..4548e097dc 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -1,6 +1,6 @@
/* Support macros for making weak and strong aliases for symbols,
and for using symbol sets and linker warnings with GNU ld.
- Copyright (C) 1995-2015 Free Software Foundation, Inc.
+ Copyright (C) 1995-2016 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
@@ -35,11 +35,9 @@
file in the C library by -imacros.
We include config.h which is generated by configure.
- It should define for us the following symbols:
+ It should define for us the following symbol:
* HAVE_ASM_SET_DIRECTIVE if we have `.set B, A' instead of `A = B'.
- * HAVE_ASM_WEAK_DIRECTIVE if we have weak symbols using `.weak'.
- * HAVE_ASM_WEAKEXT_DIRECTIVE if we have weak symbols using `.weakext'.
*/
@@ -80,10 +78,6 @@
/* The symbols in all the user (non-_) macros are C symbols. */
-#if !defined HAVE_ASM_WEAK_DIRECTIVE && !defined HAVE_ASM_WEAKEXT_DIRECTIVE
-# error "weak symbol support needed"
-#endif
-
#ifndef __SYMBOL_PREFIX
# define __SYMBOL_PREFIX
#endif
@@ -142,23 +136,13 @@
# define strong_data_alias(original, alias) strong_alias(original, alias)
# endif
-# ifdef HAVE_ASM_WEAKEXT_DIRECTIVE
-# define weak_alias(original, alias) \
- .weakext C_SYMBOL_NAME (alias), C_SYMBOL_NAME (original)
-# define weak_extern(symbol) \
- .weakext C_SYMBOL_NAME (symbol)
-
-# else /* ! HAVE_ASM_WEAKEXT_DIRECTIVE */
-
-# define weak_alias(original, alias) \
+# define weak_alias(original, alias) \
.weak C_SYMBOL_NAME (alias) ASM_LINE_SEP \
C_SYMBOL_NAME (alias) = C_SYMBOL_NAME (original)
-# define weak_extern(symbol) \
+# define weak_extern(symbol) \
.weak C_SYMBOL_NAME (symbol)
-# endif /* ! HAVE_ASM_WEAKEXT_DIRECTIVE */
-
#endif /* __ASSEMBLER__ */
/* On some platforms we can make internal function calls (i.e., calls of
@@ -175,15 +159,8 @@
/* When a reference to SYMBOL is encountered, the linker will emit a
warning message MSG. */
/* We want the .gnu.warning.SYMBOL section to be unallocated. */
-#ifdef HAVE_ASM_PREVIOUS_DIRECTIVE
-# define __make_section_unallocated(section_string) \
+#define __make_section_unallocated(section_string) \
asm (".section " section_string "\n\t.previous");
-#elif defined HAVE_ASM_POPSECTION_DIRECTIVE
-# define __make_section_unallocated(section_string) \
- asm (".pushsection " section_string "\n\t.popsection");
-#else
-# define __make_section_unallocated(section_string)
-#endif
/* Tacking on "\n\t#" to the section name makes gcc put it's bogus
section attributes on what looks like a comment to the assembler. */
diff --git a/include/libio.h b/include/libio.h
index 735941d230..97fc5b548b 100644
--- a/include/libio.h
+++ b/include/libio.h
@@ -1,3 +1,6 @@
+#if !defined _ISOMAC && defined _IO_MTSAFE_IO
+# include <stdio-lock.h>
+#endif
#include <libio/libio.h>
#ifndef _ISOMAC
diff --git a/include/limits.h b/include/limits.h
index 381b798931..5add8fceb9 100644
--- a/include/limits.h
+++ b/include/limits.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-2015 Free Software Foundation, Inc.
+/* Copyright (C) 1991-2016 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
diff --git a/include/link.h b/include/link.h
index 7e7eb79f10..32a7392f38 100644
--- a/include/link.h
+++ b/include/link.h
@@ -1,6 +1,6 @@
/* Data structure for communication from the run-time dynamic linker for
loaded ELF shared objects.
- Copyright (C) 1995-2015 Free Software Foundation, Inc.
+ Copyright (C) 1995-2016 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
@@ -39,11 +39,11 @@ extern unsigned int la_objopen (struct link_map *__map, Lmid_t __lmid,
#include <stdint.h>
#include <stddef.h>
-#include <bits/linkmap.h>
+#include <linkmap.h>
#include <dl-fileid.h>
#include <dl-lookupcfg.h>
#include <tls.h>
-#include <bits/libc-lock.h>
+#include <libc-lock.h>
/* Some internal data structures of the dynamic linker used in the
diff --git a/include/list.h b/include/list.h
index 7d5d9450fc..cf65d46382 100644
--- a/include/list.h
+++ b/include/list.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002-2015 Free Software Foundation, Inc.
+/* Copyright (C) 2002-2016 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
diff --git a/include/math.h b/include/math.h
index 42bb55eb98..ba7bba018a 100644
--- a/include/math.h
+++ b/include/math.h
@@ -6,6 +6,8 @@
/* Now define the internal interfaces. */
extern int __matherr (struct exception *__exc);
+extern int __signgam;
+
# if IS_IN (libc) || IS_IN (libm)
hidden_proto (__finite)
hidden_proto (__isinf)
@@ -35,9 +37,5 @@ libm_hidden_proto (__expl)
libm_hidden_proto (__expm1l)
# endif
-extern int __isinf_ns (double);
-extern int __isinf_nsf (float);
-extern int __isinf_nsl (long double);
-
#endif
#endif
diff --git a/include/nss.h b/include/nss.h
index 0541335c18..1e8cc3910d 100644
--- a/include/nss.h
+++ b/include/nss.h
@@ -1 +1,14 @@
+#ifndef _NSS_H
#include <nss/nss.h>
+
+#define NSS_INVALID_FIELD_CHARACTERS ":\n"
+extern const char __nss_invalid_field_characters[] attribute_hidden;
+
+_Bool __nss_valid_field (const char *value)
+ attribute_hidden internal_function;
+_Bool __nss_valid_list_field (char **list)
+ attribute_hidden internal_function;
+const char *__nss_rewrite_field (const char *value, char **to_be_freed)
+ attribute_hidden internal_function;
+
+#endif /* _NSS_H */
diff --git a/include/programs/xmalloc.h b/include/programs/xmalloc.h
index e792ffed1d..c795c7f41f 100644
--- a/include/programs/xmalloc.h
+++ b/include/programs/xmalloc.h
@@ -1,5 +1,5 @@
/* Memory related definitions for program modules.
- Copyright (C) 1998-2015 Free Software Foundation, Inc.
+ Copyright (C) 1998-2016 Free Software Foundation, Inc.
This file is part of the GNU C Library.
This program is free software; you can redistribute it and/or modify
diff --git a/include/pwd.h b/include/pwd.h
index bd7fecc16e..3b0f72540c 100644
--- a/include/pwd.h
+++ b/include/pwd.h
@@ -24,7 +24,7 @@ extern int __fgetpwent_r (FILE * __stream, struct passwd *__resultbuf,
char *__buffer, size_t __buflen,
struct passwd **__result);
-#include <nss/nss.h>
+#include <nss.h>
struct parser_data;
extern int _nss_files_parse_pwent (char *line, struct passwd *result,
diff --git a/include/rounding-mode.h b/include/rounding-mode.h
index 18682e6c98..3e085d938b 100644
--- a/include/rounding-mode.h
+++ b/include/rounding-mode.h
@@ -1,5 +1,5 @@
/* Handle floating-point rounding mode within libc.
- Copyright (C) 2012-2015 Free Software Foundation, Inc.
+ Copyright (C) 2012-2016 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
diff --git a/include/rpc/rpc.h b/include/rpc/rpc.h
index d2f3013114..58bdef3cc9 100644
--- a/include/rpc/rpc.h
+++ b/include/rpc/rpc.h
@@ -1,6 +1,6 @@
#ifndef _RPC_RPC_H
#include <sunrpc/rpc/rpc.h>
-#include <bits/libc-tsd.h>
+#include <libc-tsd.h>
/* Now define the internal interfaces. */
extern unsigned long _create_xid (void);
diff --git a/include/scratch_buffer.h b/include/scratch_buffer.h
index 6f92694bb8..c59e143d77 100644
--- a/include/scratch_buffer.h
+++ b/include/scratch_buffer.h
@@ -1,5 +1,5 @@
/* Variable-sized buffer with on-stack default allocation.
- Copyright (C) 2015 Free Software Foundation, Inc.
+ Copyright (C) 2015-2016 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
@@ -58,17 +58,16 @@
*/
#include <stdbool.h>
+#include <stddef.h>
#include <stdlib.h>
-#include <libc-internal.h>
-
/* Scratch buffer. Must be initialized with scratch_buffer_init
before its use. */
struct scratch_buffer {
void *data; /* Pointer to the beginning of the scratch area. */
size_t length; /* Allocated space at the data pointer, in bytes. */
char __space[1024]
- __attribute__ ((aligned (__alignof__ (libc_max_align_t))));
+ __attribute__ ((aligned (__alignof__ (max_align_t))));
};
/* Initializes *BUFFER so that BUFFER->data points to BUFFER->__space
diff --git a/include/set-hooks.h b/include/set-hooks.h
index c19dc11b43..f129cbfd8e 100644
--- a/include/set-hooks.h
+++ b/include/set-hooks.h
@@ -1,5 +1,5 @@
/* Macros for using symbol sets for running lists of functions.
- Copyright (C) 1994-2015 Free Software Foundation, Inc.
+ Copyright (C) 1994-2016 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
diff --git a/include/setjmp.h b/include/setjmp.h
index 622bb319f3..90f46976e3 100644
--- a/include/setjmp.h
+++ b/include/setjmp.h
@@ -6,7 +6,7 @@
/* Internal machine-dependent function to restore context sans signal mask. */
extern void __longjmp (__jmp_buf __env, int __val)
- __attribute__ ((__noreturn__));
+ __attribute__ ((__noreturn__)) attribute_hidden;
/* Internal function to possibly save the current mask of blocked signals
in ENV, and always set the flag saying whether or not it was saved.
@@ -24,6 +24,10 @@ libc_hidden_proto (__libc_longjmp)
libc_hidden_proto (_setjmp)
libc_hidden_proto (__sigsetjmp)
+
+# if IS_IN (rtld)
+extern __typeof (__sigsetjmp) __sigsetjmp attribute_hidden;
+# endif
#endif
#endif
diff --git a/include/shlib-compat.h b/include/shlib-compat.h
index ad1c47cde3..c1c5e2c3b1 100644
--- a/include/shlib-compat.h
+++ b/include/shlib-compat.h
@@ -1,5 +1,5 @@
/* Macros for managing ABI-compatibility definitions using ELF symbol versions.
- Copyright (C) 2000-2015 Free Software Foundation, Inc.
+ Copyright (C) 2000-2016 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
diff --git a/include/signal.h b/include/signal.h
index b69de03ff6..276a99d80a 100644
--- a/include/signal.h
+++ b/include/signal.h
@@ -61,6 +61,11 @@ extern int __xpg_sigpause (int sig);
/* Allocate real-time signal with highest/lowest available priority. */
extern int __libc_allocate_rtsig (int __high);
+
+# if IS_IN (rtld)
+extern __typeof (__sigaction) __sigaction attribute_hidden;
+extern __typeof (__libc_sigaction) __libc_sigaction attribute_hidden;
+# endif
# endif
#endif
#endif
diff --git a/include/stackinfo.h b/include/stackinfo.h
index fe50dd5b80..5f548c78f9 100644
--- a/include/stackinfo.h
+++ b/include/stackinfo.h
@@ -1,5 +1,5 @@
/* Details about the machine's stack: wrapper header.
- Copyright (C) 2014-2015 Free Software Foundation, Inc.
+ Copyright (C) 2014-2016 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
diff --git a/include/stap-probe.h b/include/stap-probe.h
index 433b8fd38f..d653b45bcc 100644
--- a/include/stap-probe.h
+++ b/include/stap-probe.h
@@ -1,5 +1,5 @@
/* Macros for defining Systemtap <sys/sdt.h> static probe points.
- Copyright (C) 2012-2015 Free Software Foundation, Inc.
+ Copyright (C) 2012-2016 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
@@ -57,13 +57,13 @@
# ifndef __ASSEMBLER__
/* Evaluate all the arguments and verify that N matches their number. */
-#define LIBC_PROBE(name, n, ...) STAP_PROBE##n (__VA_ARGS__)
+# define LIBC_PROBE(name, n, ...) STAP_PROBE##n (__VA_ARGS__)
-#define STAP_PROBE0()
-#define STAP_PROBE1(a1)
-#define STAP_PROBE2(a1, a2)
-#define STAP_PROBE3(a1, a2, a3)
-#define STAP_PROBE4(a1, a2, a3, a4)
+# define STAP_PROBE0()
+# define STAP_PROBE1(a1)
+# define STAP_PROBE2(a1, a2)
+# define STAP_PROBE3(a1, a2, a3)
+# define STAP_PROBE4(a1, a2, a3, a4)
# else
# define LIBC_PROBE(name, n, ...) /* Nothing. */
diff --git a/include/stdc-predef.h b/include/stdc-predef.h
index e5f1139003..f9f7f731d1 100644
--- a/include/stdc-predef.h
+++ b/include/stdc-predef.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-2015 Free Software Foundation, Inc.
+/* Copyright (C) 1991-2016 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
@@ -49,14 +49,10 @@
# define __STDC_IEC_559_COMPLEX__ 1
#endif
-/* wchar_t uses Unicode 7.0.0. Version 7.0 of the Unicode Standard is
- synchronized with ISO/IEC 10646:2012, plus Amendments 1 (published
- on April, 2013) and 2 (not yet published as of February, 2015).
- Additionally, it includes the accelerated publication of U+20BD
- RUBLE SIGN. Therefore Unicode 7.0.0 is between 10646:2012 and
- 10646:2014, and so we use the date ISO/IEC 10646:2012 Amd.1 was
- published. */
-#define __STDC_ISO_10646__ 201304L
+/* wchar_t uses Unicode 8.0.0. Version 8.0 of the Unicode Standard is
+ synchronized with ISO/IEC 10646:2014, plus Amendment 1 (published
+ 2015-05-15). */
+#define __STDC_ISO_10646__ 201505L
/* We do not support C11 <threads.h>. */
#define __STDC_NO_THREADS__ 1
diff --git a/include/stdlib.h b/include/stdlib.h
index 992b87793c..352339e859 100644
--- a/include/stdlib.h
+++ b/include/stdlib.h
@@ -203,6 +203,24 @@ libc_hidden_proto (strtoll)
libc_hidden_proto (strtoul)
libc_hidden_proto (strtoull)
+extern float __strtof_nan (const char *, char **, char) internal_function;
+extern double __strtod_nan (const char *, char **, char) internal_function;
+extern long double __strtold_nan (const char *, char **, char)
+ internal_function;
+extern float __wcstof_nan (const wchar_t *, wchar_t **, wchar_t)
+ internal_function;
+extern double __wcstod_nan (const wchar_t *, wchar_t **, wchar_t)
+ internal_function;
+extern long double __wcstold_nan (const wchar_t *, wchar_t **, wchar_t)
+ internal_function;
+
+libc_hidden_proto (__strtof_nan)
+libc_hidden_proto (__strtod_nan)
+libc_hidden_proto (__strtold_nan)
+libc_hidden_proto (__wcstof_nan)
+libc_hidden_proto (__wcstod_nan)
+libc_hidden_proto (__wcstold_nan)
+
extern char *__ecvt (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign);
extern char *__fcvt (double __value, int __ndigit, int *__restrict __decpt,
@@ -242,6 +260,11 @@ struct abort_msg_s
extern struct abort_msg_s *__abort_msg;
libc_hidden_proto (__abort_msg)
+# if IS_IN (rtld)
+extern __typeof (unsetenv) unsetenv attribute_hidden;
+extern __typeof (__strtoul_internal) __strtoul_internal attribute_hidden;
+# endif
+
__END_DECLS
#endif
diff --git a/include/string.h b/include/string.h
index c57671ea63..e145bfdb4c 100644
--- a/include/string.h
+++ b/include/string.h
@@ -46,6 +46,9 @@ extern int __ffs (int __i) __attribute__ ((const));
extern char *__strerror_r (int __errnum, char *__buf, size_t __buflen);
#endif
+/* Get _STRING_ARCH_unaligned. */
+#include <string_private.h>
+
/* Now the real definitions. We do this here since some of the functions
above are defined as macros in the headers. */
#include <string/string.h>
@@ -118,6 +121,26 @@ libc_hidden_builtin_proto (strspn)
libc_hidden_builtin_proto (strstr)
libc_hidden_builtin_proto (ffs)
+#if IS_IN (rtld)
+extern __typeof (__stpcpy) __stpcpy attribute_hidden;
+extern __typeof (__strdup) __strdup attribute_hidden;
+extern __typeof (__strerror_r) __strerror_r attribute_hidden;
+extern __typeof (__strsep_g) __strsep_g attribute_hidden;
+
+extern __typeof (memchr) memchr attribute_hidden;
+extern __typeof (memcmp) memcmp attribute_hidden;
+extern __typeof (memcpy) memcpy attribute_hidden;
+extern __typeof (memmove) memmove attribute_hidden;
+extern __typeof (memset) memset attribute_hidden;
+extern __typeof (rawmemchr) rawmemchr attribute_hidden;
+extern __typeof (stpcpy) stpcpy attribute_hidden;
+extern __typeof (strchr) strchr attribute_hidden;
+extern __typeof (strcmp) strcmp attribute_hidden;
+extern __typeof (strlen) strlen attribute_hidden;
+extern __typeof (strnlen) strnlen attribute_hidden;
+extern __typeof (strsep) strsep attribute_hidden;
+#endif
+
#if (!IS_IN (libc) || !defined SHARED) \
&& !defined NO_MEMPCPY_STPCPY_REDIRECT
/* Redirect calls to __builtin_mempcpy and __builtin_stpcpy to call
diff --git a/include/sys/mman.h b/include/sys/mman.h
index fd125ecb9c..7026f69f42 100644
--- a/include/sys/mman.h
+++ b/include/sys/mman.h
@@ -16,6 +16,10 @@ libc_hidden_proto (__madvise)
/* This one is Linux specific. */
extern void *__mremap (void *__addr, size_t __old_len,
size_t __new_len, int __flags, ...);
+
+# if IS_IN (rtld)
+# include <dl-mman.h>
+# endif
#endif
#endif
diff --git a/include/sys/socket.h b/include/sys/socket.h
index 2f4bfd3a93..a00ab3cf93 100644
--- a/include/sys/socket.h
+++ b/include/sys/socket.h
@@ -154,13 +154,5 @@ libc_hidden_proto (__libc_sa_len)
# define SA_LEN(_x) __libc_sa_len((_x)->sa_family)
#endif
-#ifdef SOCK_CLOEXEC
-extern int __have_sock_cloexec attribute_hidden;
-/* At lot of other functionality became available at the same time as
- SOCK_CLOEXEC. Avoid defining separate variables for all of them
- unless it is really necessary. */
-# define __have_paccept __have_sock_cloexec
-#endif
-
#endif
#endif
diff --git a/include/sys/stat.h b/include/sys/stat.h
index 873562a99d..4f31c00eca 100644
--- a/include/sys/stat.h
+++ b/include/sys/stat.h
@@ -35,6 +35,9 @@ libc_hidden_proto (__xmknodat)
libc_hidden_proto (__fxstatat)
libc_hidden_proto (__fxstatat64)
+# if IS_IN (rtld)
+extern __typeof (__fxstatat64) __fxstatat64 attribute_hidden;
+# endif
/* The `stat', `fstat', `lstat' functions have to be handled special since
even while not compiling the library with optimization calls to these
diff --git a/include/sys/time.h b/include/sys/time.h
index ffaad5dae4..41bf458141 100644
--- a/include/sys/time.h
+++ b/include/sys/time.h
@@ -1,5 +1,5 @@
/* Time function internal interfaces.
- Copyright (C) 1997-2015 Free Software Foundation, Inc.
+ Copyright (C) 1997-2016 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
diff --git a/include/sys/utsname.h b/include/sys/utsname.h
index 66a5289638..14f4247dd4 100644
--- a/include/sys/utsname.h
+++ b/include/sys/utsname.h
@@ -6,5 +6,9 @@ extern int __uname (struct utsname *__name);
libc_hidden_proto (uname)
libc_hidden_proto (__uname)
+
+# if IS_IN (rtld)
+extern __typeof (__uname) __uname attribute_hidden;
+# endif
#endif
#endif
diff --git a/include/unistd.h b/include/unistd.h
index fbba3938ea..5152f64f91 100644
--- a/include/unistd.h
+++ b/include/unistd.h
@@ -158,7 +158,7 @@ rtld_hidden_proto (__libc_enable_secure)
/* Various internal function. */
-extern void __libc_check_standard_fds (void);
+extern void __libc_check_standard_fds (void) attribute_hidden;
/* Internal name for fork function. */
@@ -170,13 +170,16 @@ extern int __libc_pause (void);
/* Not cancelable variant. */
extern int __pause_nocancel (void) attribute_hidden;
-extern int __have_sock_cloexec attribute_hidden;
extern int __have_pipe2 attribute_hidden;
extern int __have_dup3 attribute_hidden;
extern int __getlogin_r_loginuid (char *name, size_t namesize)
attribute_hidden;
+# if IS_IN (rtld)
+# include <dl-unistd.h>
+# endif
+
__END_DECLS
# endif
diff --git a/include/values.h b/include/values.h
index a002960732..5ae2ead1d7 100644
--- a/include/values.h
+++ b/include/values.h
@@ -1,5 +1,5 @@
/* Old compatibility names for <limits.h> and <float.h> constants.
- Copyright (C) 1995-2015 Free Software Foundation, Inc.
+ Copyright (C) 1995-2016 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
diff --git a/include/wchar.h b/include/wchar.h
index 67d0248f00..0f33d094ed 100644
--- a/include/wchar.h
+++ b/include/wchar.h
@@ -52,6 +52,9 @@ extern unsigned long long int __wcstoull_internal (const wchar_t *
__restrict __endptr,
int __base,
int __group) __THROW;
+extern unsigned long long int ____wcstoull_l_internal (const wchar_t *,
+ wchar_t **, int, int,
+ __locale_t);
libc_hidden_proto (__wcstof_internal)
libc_hidden_proto (__wcstod_internal)
libc_hidden_proto (__wcstold_internal)