https://issues.dlang.org/show_bug.cgi?id=24799
Issue ID: 24799
Summary: [Regression] Protected template constructors cannot be
accessed outside their module.
Product: D
Version: D2
Hardware: x86_64
OS: Linux
Status: NEW
Severity: regression
Priority: P1
Component: dmd
Assignee: [email protected]
Reporter: [email protected]
It used to work before, as ldc2 1.34 was able to build that code. However, now
neither ldc2 nor dmd can build that code. (This also prevents botan from being
built)
Basic reproducer :
base.d
```d
module base;
class Base {
protected:
this(T)(T) {
}
}
```
super_.d
```d
module super_;
import base;
class Derived: Base {
this() {
super("Example");
}
}
````
```
$ ldc2 -i ./super_.d
./source/super.d(7): Error: constructor `base.Base.__ctor!string.this` is not
accessible from module `super_`
```
--