[Issue 1676] New: Undefined symbol at linking with circular import and enum
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Fri Nov 16 16:42:05 PST 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1676
Summary: Undefined symbol at linking with circular import and
enum
Product: D
Version: 1.023
Platform: PC
OS/Version: Windows
Status: NEW
Keywords: link-failure
Severity: regression
Priority: P2
Component: DMD
AssignedTo: bugzilla at digitalmars.com
ReportedBy: smjg at iname.com
----- linkfail_a.d -----
import linkfail_b;
void main() {}
enum Qwert : byte { YUIOP, ASDFG }
struct Hjkl {
Qwert zxcvb() {
return Qwert.YUIOP;
}
}
----- linkfail_b.d -----
import linkfail_a;
void nm() {
try {
qaz(Hjkl.init.zxcvb);
} catch (Object e) {}
}
void qaz(Qwert wsx) {}
const int[] edc = [ Qwert.YUIOP: 42, 105 ];
----------
Fails:
dmd -c linkfail_a.d
dmd -c linkfail_b.d
dmd linkfail_a.obj linkfail_b.obj
Fails:
dmd -c linkfail_b.d
dmd linkfail_a.d linkfail_b.obj
Works:
dmd linkfail_a.d linkfail_b.d
Both failure cases give the same error:
----------
d:\dmd\bin\..\..\dm\bin\link.exe linkfail_a+linkfail_b,,,user32+kernel32/noi;
OPTLINK (R) for Win32 Release 7.50B1
Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved
linkfail_b.obj(linkfail_b)
Error 42: Symbol Undefined _D10linkfail_a4Hjkl5zxcvbMFZE10linkfail_a5Qwert
--- errorlevel 1
----------
This bites the date/time code in my utility library. At least, I *think* this
is a regression....
--
More information about the Digitalmars-d-bugs
mailing list