| Index: pkg/compiler/lib/src/elements/modelx.dart
|
| diff --git a/pkg/compiler/lib/src/elements/modelx.dart b/pkg/compiler/lib/src/elements/modelx.dart
|
| index 5ae07ffaace186de50c9b0a50544f2d7db5fbb5c..a8cea0a830b7cfa770d0d37477c68570c4e9d132 100644
|
| --- a/pkg/compiler/lib/src/elements/modelx.dart
|
| +++ b/pkg/compiler/lib/src/elements/modelx.dart
|
| @@ -2054,24 +2054,17 @@ class SynthesizedConstructorElementX extends ConstructorElementX {
|
| final ConstructorElement definingConstructor;
|
| final bool isDefaultConstructor;
|
|
|
| - SynthesizedConstructorElementX.notForDefault(String name,
|
| - this.definingConstructor,
|
| - Element enclosing)
|
| - : isDefaultConstructor = false,
|
| - super(name,
|
| + SynthesizedConstructorElementX(String name,
|
| + this.definingConstructor,
|
| + Element enclosing,
|
| + this.isDefaultConstructor)
|
| + : super(name,
|
| ElementKind.GENERATIVE_CONSTRUCTOR,
|
| Modifiers.EMPTY,
|
| - enclosing) ;
|
| + enclosing);
|
|
|
| - SynthesizedConstructorElementX.forDefault(this.definingConstructor,
|
| - Element enclosing)
|
| - : isDefaultConstructor = true,
|
| - super('',
|
| - ElementKind.GENERATIVE_CONSTRUCTOR,
|
| - Modifiers.EMPTY,
|
| - enclosing) {
|
| - typeCache = new FunctionType.synthesized(enclosingClass.thisType);
|
| - }
|
| + SynthesizedConstructorElementX.forDefault(superMember, Element enclosing)
|
| + : this('', superMember, enclosing, true);
|
|
|
| FunctionExpression parseNode(DiagnosticListener listener) => null;
|
|
|
| @@ -2083,21 +2076,11 @@ class SynthesizedConstructorElementX extends ConstructorElementX {
|
|
|
| bool get isSynthesized => true;
|
|
|
| - DartType get type {
|
| - if (isDefaultConstructor) {
|
| - return super.type;
|
| - } else {
|
| - // TODO(johnniwinther): Ensure that the function type substitutes type
|
| - // variables correctly.
|
| - return definingConstructor.type;
|
| - }
|
| - }
|
| -
|
| FunctionSignature computeSignature(compiler) {
|
| if (functionSignatureCache != null) return functionSignatureCache;
|
| if (isDefaultConstructor) {
|
| return functionSignatureCache = new FunctionSignatureX(
|
| - type: type);
|
| + type: new FunctionType(this, enclosingClass.thisType));
|
| }
|
| if (definingConstructor.isErroneous) {
|
| return functionSignatureCache =
|
|
|