digitalmars.D.bugs - [Issue 11543] New: multiple definition of std.regex with shared library
- d-bugmail puremagic.com (31/31) Nov 18 2013 https://d.puremagic.com/issues/show_bug.cgi?id=11543
- d-bugmail puremagic.com (22/22) Nov 20 2013 https://d.puremagic.com/issues/show_bug.cgi?id=11543
- d-bugmail puremagic.com (34/34) Nov 20 2013 https://d.puremagic.com/issues/show_bug.cgi?id=11543
- d-bugmail puremagic.com (14/14) Dec 24 2013 https://d.puremagic.com/issues/show_bug.cgi?id=11543
- d-bugmail puremagic.com (11/11) Jan 12 2014 https://d.puremagic.com/issues/show_bug.cgi?id=11543
- d-bugmail puremagic.com (8/8) Jan 13 2014 https://d.puremagic.com/issues/show_bug.cgi?id=11543
- d-bugmail puremagic.com (10/10) Jan 27 2014 https://d.puremagic.com/issues/show_bug.cgi?id=11543
- d-bugmail puremagic.com (7/7) Feb 01 2014 https://d.puremagic.com/issues/show_bug.cgi?id=11543
- d-bugmail puremagic.com (10/10) Feb 01 2014 https://d.puremagic.com/issues/show_bug.cgi?id=11543
https://d.puremagic.com/issues/show_bug.cgi?id=11543 Summary: multiple definition of std.regex with shared library Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: regression Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: g.sayol yahoo.es test.d --- import std.net.curl; void main() { char[] a = get("http://dlang.org/index.html"); } --- If liking against phobos shared library, dmd v2.064.2 fails: $ dmd -L-lcurl -defaultlib=libphobos2.so -run test.d Fatal Error while loading '/usr/lib/x86_64-linux-gnu/libphobos2.so.0.64': The module 'std.regex' is already defined in 'test'. --- killed by signal 11 No problem if static linking. No problem with dmd v2.063.2 (static and shared linking). -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 18 2013
https://d.puremagic.com/issues/show_bug.cgi?id=11543 aneas <alexander.breckel gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |alexander.breckel gmail.com --- I get a similar error with: test.d --- import std.range; void main() { zip([0]); } --- $ dmd -defaultlib=libphobos2.so -run test.d Fatal Error while loading '/usr/lib/libphobos2.so.0.64': The module 'std.range' is already defined in './test'. Segmentation fault (core dumped) -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 20 2013
https://d.puremagic.com/issues/show_bug.cgi?id=11543 --- Here is another minimal test case: main.d --- import blubb; void main() { f!int(); } --- blubb.d --- void f(T)() { final switch(false) { case true: } } --- $ dmd -defaultlib= -shared -fPIC -oflibblubb.so blubb.d $ dmd -defaultlib=libphobos2.so -ofmain main.d -L-lblubb -L-L. $ LD_LIBRARY_PATH=. ./main Fatal Error while loading './libblubb.so': The module 'blubb' is already defined in './main'. I couldn't reduce the test case any further. Using a non-final switch or an if-statement does not trigger the error. Maybe the error message correlates with this: $ nm main ... 0000000000600f50 B _D5blubb12__ModuleInfoZ ... whereas an error-free version of main contains no blubb.__ModuleInfo -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 20 2013
https://d.puremagic.com/issues/show_bug.cgi?id=11543 This happens because of copy relocations, i.e. linker generates a copy of the ModuleInfo symbol in the executable's .bss section. This causes a false alarm in the druntime code that checks for duplicated ModuleInfos. There are two/three ways to fix this. - Make ModuleInfos immutable, which is something we should do anyhow. - Avoid references to foreign ModuleInfos, a bit more complex but necessary for https://github.com/D-Programming-Language/dmd/pull/2561. - Adapt the druntime code to detect this false error. Somewhat dirty hack. -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Dec 24 2013
https://d.puremagic.com/issues/show_bug.cgi?id=11543 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |bugzilla digitalmars.com 13:12:35 PST --- Is this really a regression? I don't think we had shared library support before 2.064. -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jan 12 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11543 Jordi Sayol <g.sayol yahoo.es> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|regression |major -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jan 13 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11543 Martin Nowak <code dawg.eu> changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P2 |P3 AssignedTo|nobody puremagic.com |code dawg.eu Severity|major |critical -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jan 27 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11543 As an intermediate workaround, it seems that this issue doesn't occur when building optimized binaries (-release -O -inline). -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Feb 01 2014
https://d.puremagic.com/issues/show_bug.cgi?id=11543 Only -release is needed. I think that is because non-release build reference other ModuleInfos for assert and bounds-checking, (see https://github.com/D-Programming-Language/dmd/pull/2561). Anyhow we should still make ModuleInfo read-only. -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Feb 01 2014