digitalmars.D.bugs - [Issue 406] New: std.loader is broken on linux
- d-bugmail puremagic.com (25/25) Oct 07 2006 http://d.puremagic.com/issues/show_bug.cgi?id=406
- d-bugmail puremagic.com (9/9) Jul 30 2007 http://d.puremagic.com/issues/show_bug.cgi?id=406
http://d.puremagic.com/issues/show_bug.cgi?id=406 Summary: std.loader is broken on linux Product: D Version: 0.168 Platform: PC OS/Version: Linux Status: NEW Keywords: link-failure, patch Severity: normal Priority: P2 Component: DMD AssignedTo: bugzilla digitalmars.com ReportedBy: h3r3tic mat.uni.torun.pl There are three problems with std.loader: 1. It's not compiled into libphobos.a 2. When compiled-in, gcc complains about a duplicate RTLD_NOW symbol, the second instance exists in std.c.linux.linux. 3. When the conflicting symbols are resolved (e.g. by replacing the RTLD_NOW usage in std.loader to its numeric value, 0x00002), lib loading doesn't work in linux because of the line 339 in loader.d: ExeModuleInfo mi = s_modules[moduleName]; it should be changed to: ExeModuleInfo* mi_p = moduleName in s_modules; ExeModuleInfo mi = mi_p is null ? null : *mi_p; --
Oct 07 2006
http://d.puremagic.com/issues/show_bug.cgi?id=406 bugzilla digitalmars.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED Fixed DMD 1.019 and 2.003 --
Jul 30 2007