[Issue 10746] New: Win64: corrupt debug info with very long symbols
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Fri Aug 2 22:52:47 PDT 2013
http://d.puremagic.com/issues/show_bug.cgi?id=10746
Summary: Win64: corrupt debug info with very long symbols
Product: D
Version: D2
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: DMD
AssignedTo: nobody at puremagic.com
ReportedBy: r.sagitario at gmx.de
--- Comment #0 from Rainer Schuetze <r.sagitario at gmx.de> 2013-08-02 22:52:46 PDT ---
Here's some code to create a symbol name that is longer than 64kB:
module test;
template TypeTuple(TList...)
{
alias TList TypeTuple;
}
@property void assertCTFEable(alias dg)()
{
static assert({ dg(); return true; }());
dg();
}
alias TypeTuple!(0,1,2,3,4,5,6,7,8,9) T10;
alias TypeTuple!(T10,T10,T10,T10,T10,T10,T10,T10,T10,T10) T100;
alias TypeTuple!(T100,T100,T100,T100,T100,T100,T100,T100,T100,T100) T1000;
string to_string(string s) { return s; }
void foo()
{
assertCTFEable!(
//auto dg = (
{
foreach (i; TypeTuple!(T100,T100,T100,T100,T100,T100,T100,
T10,T10,T10,T10,T10,T10,
0))
{
assert(to_string("hello world") ==
to_string("hello world"));
}
});
}
void main() {}
build with "dmd -g -m64 test.d" to get
test.obj : fatal error LNK1103: debugging information corrupt; recompile module
--- errorlevel 1103
or with a slightly longer symbol:
LINK : fatal error LNK1318: Unexpected PDB error; RPC (23) '(0x000006BA)'
--- errorlevel 1318
This is a reduced test case from the std.string unittests.
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list