Thread overview | |||||
---|---|---|---|---|---|
|
September 08, 2013 [Issue 10993] New: mangling of voldemort types with lambdas changes during return type inference | ||||
---|---|---|---|---|
| ||||
http://d.puremagic.com/issues/show_bug.cgi?id=10993 Summary: mangling of voldemort types with lambdas changes during return type inference Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nobody@puremagic.com ReportedBy: r.sagitario@gmx.de --- Comment #0 from Rainer Schuetze <r.sagitario@gmx.de> 2013-09-08 01:55:52 PDT --- Reduced from the cartesianProduct unittests: module test3; //import std.traits; auto foo(T)(T a) { static immutable typeof(a) q; pragma(msg, "foo: " ~ typeof(q).mangleof); return q; } struct test(alias fn) { bool ini = true; void* p; } auto fun() { auto x = foo!()(test!(a=>a)()); pragma(msg, "fun: " ~ typeof(x).mangleof); return x; //typeid(x); } void main() { const x = fun(); pragma(msg, "x : " ~ typeof(x).mangleof); auto y = cast()x; pragma(msg, "y : " ~ typeof(y).mangleof); } compile with "dmd test3.d" yields: foo: yS5test33fun32__T4testS205test33fun9__lambda2Z4test fun: yS5test33fun32__T4testS205test33fun9__lambda2Z4test x : yS5test33fun32__T4testS205test33fun9__lambda2Z4test y : S5test33funFZyS5test33fun32__T4testS205test33fun9__lambda2Z4test32__T4testS 205test33fun9__lambda2Z4test i.e. casting away immutable leads to a completely new mangling while it should have removed the 'y' at the start only. This causes link errors when trying to produce complete TypeInfo data. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
September 23, 2013 [Issue 10993] mangling of voldemort types with lambdas changes during return type inference | ||||
---|---|---|---|---|
| ||||
Posted in reply to Rainer Schuetze | http://d.puremagic.com/issues/show_bug.cgi?id=10993 --- Comment #1 from github-bugzilla@puremagic.com 2013-09-22 22:02:44 PDT --- Commit pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/be57510ce308da696ed293d4acc4b233f3258b30 Merge pull request #2585 from rainers/issue10993 fix Issue 10993: mangling of voldemort types with lambdas changes during return type inference -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
September 23, 2013 [Issue 10993] mangling of voldemort types with lambdas changes during return type inference | ||||
---|---|---|---|---|
| ||||
Posted in reply to Rainer Schuetze | http://d.puremagic.com/issues/show_bug.cgi?id=10993 Kenji Hara <k.hara.pg@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |pull, wrong-code Status|NEW |RESOLVED Resolution| |FIXED -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
Copyright © 1999-2021 by the D Language Foundation