summaryrefslogtreecommitdiff
path: root/system/musl/0005-stdlib-Ensure-C11-fns-are-only-visible-in-C11.patch
blob: 53235e0ddbd36dd8a37b97e70453ab4bfaf1f29d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
From 36e0a4286937ccb25bc78392a679f496029765b0 Mon Sep 17 00:00:00 2001
From: "A. Wilcox" <AWilcox@Wilcox-Tech.com>
Date: Tue, 17 Apr 2018 20:54:59 -0500
Subject: [PATCH 5/7] stdlib: Ensure C11 fns are only visible in C11

aligned_alloc, at_quick_exit, and quick_exit are new in C11 and C++11.
Only make these symbols visible in those versions, to avoid polluting
the namespace of C99 and POSIX 2008 sources.
---
 include/stdlib.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/include/stdlib.h b/include/stdlib.h
index d1f99fe1..4bbaded0 100644
--- a/include/stdlib.h
+++ b/include/stdlib.h
@@ -39,14 +39,18 @@ void *malloc (size_t);
 void *calloc (size_t, size_t);
 void *realloc (void *, size_t);
 void free (void *);
+#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L
 void *aligned_alloc(size_t, size_t);
+#endif
 
 _Noreturn void abort (void);
 int atexit (void (*) (void));
 _Noreturn void exit (int);
 _Noreturn void _Exit (int);
+#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L
 int at_quick_exit (void (*) (void));
 _Noreturn void quick_exit (int);
+#endif
 
 char *getenv (const char *);
 
-- 
2.15.0