[PATCH] include/obstack.h: do not hide _obstack_newchunk

Chris Zankel chris at zankel.net
Mon Nov 4 19:31:36 UTC 2013


Hi,

Sorry to bring this one up again, but binutils seems to fail under 
busybox and a uClibc snapshot:

tc-arm.o: In function `s_ltorg':
tc-arm.c:(.text+0x12b30): undefined reference to `_obstack_newchunk'
cond.o: In function `s_ifdef':
cond.c:(.text+0x1d4): undefined reference to `_obstack_newchunk'
.. (more follow) ...

What was the actual fix? The one proposed by Anthony doesn't seem to 
have made it into uClibc.

Thanks,
-Chris

On 6/29/13, 5:19 AM, Anthony G. Basile wrote:
> On 06/28/2013 09:27 AM, Bernhard Reutner-Fischer wrote:
>> On 24 June 2013 17:51, Bernhard Reutner-Fischer 
>> <rep.dot.nop at gmail.com> wrote:
>>> On 24 June 2013 15:25:20 "Anthony G. Basile" 
>>> <basile at opensource.dyc.edu>
>>> wrote:
>>>>
>>>> On 06/23/2013 05:25 PM, Anthony G. Basile wrote:
>>>>> On 06/23/2013 02:16 PM, Bernhard Reutner-Fischer wrote:
>>>>>> On 23 June 2013 18:14:08 "Anthony G. Basile"
>>>>>> <basile at opensource.dyc.edu>
>>>>>> wrote:
>>>>>>> From: "Anthony G. Basile" <blueness at gentoo.org>
>>>>>>>
>>>>>>> Programs using obstacks, like the suite of utilities provided by
>>>>>>> coreutils, need _obstack_newchunk so we unhide the symbol.
>>>>>>
>>>>>> Eh, that sounds pretty broken. Are you sure this is the right 
>>>>>> thing to
>>>>>> do? They should most likely obstack_*grow() instead.
>>>>
>>>> Actually its pretty clear what's going on here.  Many obstack 
>>>> functions
>>>> are implemented as macros around _obstack_newchunk, so "functions" 
>>>> like
>>>> obstack_*grow() are decls which expand to calls to 
>>>> _obstack_newchunk. Read
>>>> <obstack.h> around line 292.  Here's a simple poc:
>>>
>>> Right, completely forgot this.
>>> Thanks for the fix!
>>
>> There was a hidden_def but it was disabled (sloppy grep on my part),
>> pushed a fix for this now, thanks!
>>
>
> Thanks.  I tested and it works.
>



More information about the uClibc mailing list