| 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 7d4c0ffc721dfd54d0322eda282f699d42cfd8d7..04b4ec872b08ca97c9830dbb99e087477b5bea21 100644
|
| --- a/compiler/java/com/google/dart/compiler/resolver/Resolver.java
|
| +++ b/compiler/java/com/google/dart/compiler/resolver/Resolver.java
|
| @@ -1331,7 +1331,8 @@ public class Resolver {
|
| }
|
| }
|
| // If constructor not found, try implicit default constructor of the default class.
|
| - if (constructor.getParameters().isEmpty()
|
| + if (Elements.isDefaultConstructor(constructor)
|
| + && (Elements.isSyntheticConstructor(constructor) || factoryImplementsInterface)
|
| && Elements.needsImplicitDefaultConstructor(defaultClass)) {
|
| return new SyntheticDefaultConstructorElement(null, defaultClass, typeProvider);
|
| }
|
|
|