Bug 4439 – The declaration of the in6addr_* in druntime is wrong.

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
druntime
Product
D
Version
D2
Platform
x86
OS
Linux
Creation time
2010-07-08T15:52:00Z
Last change time
2011-02-06T15:50:25Z
Assigned to
sean
Creator
satoru.hosotani

Comments

Comment #0 by satoru.hosotani — 2010-07-08T15:52:06Z
The following code cannot be compiled. --- prog.d import std.c.linux.socket; void main() { auto a = in6addr_loopback.s6_addr; } --- And compilation message is below. $ dmd prog.d /usr/lib/gcc/x86_64-pc-linux-gnu/4.4.3/../../../../x86_64-pc-linux-gnu/bin/ld: in6addr_loopback: TLS reference in prog.o mismatches non-TLS definition in /lib32/libc.so.6 section .rodata /lib32/libc.so.6: could not read symbols: Bad value collect2: ld returned 1 exit status --- errorlevel 1 core.sys.posix.netinet.in_.in6addr_* should be declared as shared. But it is not declared so.
Comment #1 by braddr — 2011-02-06T15:40:44Z
Mass migration of bugs marked as x86-64 to just x86. The platform run on isn't what's relevant, it's if the app is a 32 or 64 bit app.
Comment #2 by braddr — 2011-02-06T15:50:25Z
This was fixed back in Oct 2010 from the looks of it.