| Index: compiler/java/com/google/dart/compiler/resolver/Resolver.java
|
| diff --git a/compiler/java/com/google/dart/compiler/resolver/Resolver.java b/compiler/java/com/google/dart/compiler/resolver/Resolver.java
|
| index 7a376e56aceddda5c6c6eccb74c19853ddaf9ea4..439b59966967ce7f69e023ffe09eb90dacd8fdbc 100644
|
| --- a/compiler/java/com/google/dart/compiler/resolver/Resolver.java
|
| +++ b/compiler/java/com/google/dart/compiler/resolver/Resolver.java
|
| @@ -499,7 +499,10 @@ public class Resolver {
|
| ClassElement superElement = supertype.getElement();
|
| if (!superElement.isDynamic()) {
|
| ConstructorElement superCtor = Elements.lookupConstructor(superElement, "");
|
| - if (superCtor != null && !superCtor.getParameters().isEmpty()) {
|
| + boolean superHasDefaultCtor =
|
| + (superCtor != null && superCtor.getParameters().isEmpty())
|
| + || (superCtor == null && Elements.needsImplicitDefaultConstructor(superElement));
|
| + if (!superHasDefaultCtor) {
|
| onError(cls.getName(),
|
| ResolverErrorCode.CANNOT_RESOLVE_IMPLICIT_CALL_TO_SUPER_CONSTRUCTOR,
|
| cls.getSuperclass());
|
|
|