DDK asserts on the following. DDC does not. In the constructor of C, the CFE is instantiating B with Null (causing the error). The analyzer with T (which works).
class A<T> {
const A();
}
class B<T> implements A<T> {
const B();
}
class C<T> {
final _a;
const C([A<T> a = const B()]) : _a = a;
}
void main() {
var c = new C<String>();
print(c._a.runtimeType);
assert(c._a is! A<Null>);
}
The result with DDK is:
B<Null>
Assertion failed: is not true Error
@a-siva is hitting this in package:collection.
@kmillikin
DDK asserts on the following. DDC does not. In the constructor of
C, the CFE is instantiatingBwithNull(causing the error). The analyzer withT(which works).The result with DDK is:
@a-siva is hitting this in
package:collection.@kmillikin