| 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 3e148461f148d53196e35d7b8f19aaa6d21a513a..2381d64022b357abfcc46f8a1b83ca0e81f90309 100644
|
| --- a/pkg/compiler/lib/src/elements/modelx.dart
|
| +++ b/pkg/compiler/lib/src/elements/modelx.dart
|
| @@ -256,6 +256,8 @@ class ErroneousElementX extends ElementX implements ErroneousElement {
|
|
|
| bool get hasFunctionSignature => false;
|
|
|
| + bool get hasEffectiveTarget => true;
|
| +
|
| get effectiveTarget => this;
|
|
|
| computeEffectiveTargetType(InterfaceType newType) => unsupported();
|
| @@ -1391,6 +1393,11 @@ class VariableList implements DeclarationSite {
|
| abstract class ConstantVariableMixin implements VariableElement {
|
| ConstantExpression constantCache;
|
|
|
| + // TODO(johnniwinther): Update the on `constant = ...` when evaluation of
|
| + // constant expression can handle references to unanalyzed constant variables.
|
| + @override
|
| + bool get hasConstant => false;
|
| +
|
| ConstantExpression get constant {
|
| if (isPatch) {
|
| ConstantVariableMixin originVariable = origin;
|
| @@ -2199,6 +2206,8 @@ abstract class ConstructorElementX extends FunctionElementX
|
| DartType _effectiveTargetType;
|
| bool _isEffectiveTargetMalformed;
|
|
|
| + bool get hasEffectiveTarget => effectiveTargetInternal != null;
|
| +
|
| void setEffectiveTarget(ConstructorElement target, DartType type,
|
| {bool isMalformed: false}) {
|
| assert(invariant(this, target != null,
|
|
|