[Issue 17371] New: [REG 2.074.0] di generation broken for anonymous classes
via Digitalmars-d-bugs
digitalmars-d-bugs at puremagic.com
Fri May 5 05:59:23 PDT 2017
https://issues.dlang.org/show_bug.cgi?id=17371
Issue ID: 17371
Summary: [REG 2.074.0] di generation broken for anonymous
classes
Product: D
Version: D2
Hardware: All
OS: All
Status: NEW
Severity: regression
Priority: P1
Component: dmd
Assignee: nobody at puremagic.com
Reporter: doob at me.com
Generating a .di file with 2.074.0 from the following code generates a broken
file:
interface Foo {}
class Bar
{
this()
{
auto foo = new class () Foo {};
}
}
The generated result is:
interface Foo
{
}
class Bar
{
this()
{
auto foo = new class class __anonclass1 : Foo
{
}
;
}
}
The generated code for the anonymous class is clearly broken. With 2.073.1 the
following code is generated:
interface Foo
{
}
class Bar
{
this();
}
I suspect that generating the code for an anonymous class has always been
broken, as the following example shows, generated with 2.073.1:
Original code:
interface Foo
{
}
const foo = new class () Foo {};
Generated code:
interface Foo
{
}
const foo = new class class __anonclass1 : Foo
{
}
;
Not sure if this is technically a regression but it broke my code switching to
2.074.0.
--
More information about the Digitalmars-d-bugs
mailing list