summaryrefslogtreecommitdiff
path: root/packages/glibc/2.14/998-obstack-common.patch
blob: 4b95f0622f0f79f113db74b1087a74bf12c83b04 (plain)
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
commit 39b1f6172a2f9ddc74a8f82d6e84dd13b22dbaf2
Author: Peter Collingbourne <pcc@google.com>
Date:   Wed May 15 20:28:08 2013 +0200

    Move _obstack_compat out of common
    
    it is impossible to create an alias of a common symbol (as
    compat_symbol does), because common symbols do not have a section or
    an offset until linked.  GNU as tolerates aliases of common symbols by
    simply creating another common symbol, but other assemblers (notably
    LLVM's integrated assembler) are less tolerant.
    
    2013-05-15  Peter Collingbourne  <pcc@google.com>
    
            * malloc/obstack.c (_obstack_compat): Add initializer.
    -

diff --git a/malloc/obstack.c b/malloc/obstack.c
index 25a90514f7..c3c7db4a96 100644
--- a/malloc/obstack.c
+++ b/malloc/obstack.c
@@ -115,7 +115,7 @@ int obstack_exit_failure = EXIT_FAILURE;
 /* A looong time ago (before 1994, anyway; we're not sure) this global variable
    was used by non-GNU-C macros to avoid multiple evaluation.  The GNU C
    library still exports it because somebody might use it.  */
-struct obstack *_obstack_compat;
+struct obstack *_obstack_compat = 0;
 compat_symbol (libc, _obstack_compat, _obstack, GLIBC_2_0);
 #  endif
 # endif