| Index: pkg/analyzer/lib/src/dart/element/element.dart
|
| diff --git a/pkg/analyzer/lib/src/dart/element/element.dart b/pkg/analyzer/lib/src/dart/element/element.dart
|
| index c90c7c3b8f0a6b1846e33955b2158f2887a769ac..4753ba882eff8ffcaf169c369ef06b16ef9f0f27 100644
|
| --- a/pkg/analyzer/lib/src/dart/element/element.dart
|
| +++ b/pkg/analyzer/lib/src/dart/element/element.dart
|
| @@ -3882,7 +3882,8 @@ abstract class ExecutableElementImpl extends ElementImpl
|
| serializedExecutable.inferredReturnTypeSlot, typeParameterContext);
|
| _declaredReturnType = enclosingUnit.resynthesizerContext.resolveTypeRef(
|
| serializedExecutable.returnType, typeParameterContext,
|
| - defaultVoid: isSetter && context.analysisOptions.strongMode);
|
| + defaultVoid: isSetter && context.analysisOptions.strongMode,
|
| + declaredType: true);
|
| }
|
| return _returnType ?? _declaredReturnType;
|
| }
|
| @@ -4754,8 +4755,9 @@ class FunctionTypeAliasElementImpl extends ElementImpl
|
| @override
|
| DartType get returnType {
|
| if (_unlinkedTypedef != null && _returnType == null) {
|
| - _returnType = enclosingUnit.resynthesizerContext
|
| - .resolveTypeRef(_unlinkedTypedef.returnType, this);
|
| + _returnType = enclosingUnit.resynthesizerContext.resolveTypeRef(
|
| + _unlinkedTypedef.returnType, this,
|
| + declaredType: true);
|
| }
|
| return _returnType;
|
| }
|
| @@ -6901,8 +6903,9 @@ abstract class NonParameterVariableElementImpl extends VariableElementImpl {
|
| if (_unlinkedVariable != null && _declaredType == null && _type == null) {
|
| _type = enclosingUnit.resynthesizerContext.resolveLinkedType(
|
| _unlinkedVariable.inferredTypeSlot, typeParameterContext);
|
| - _declaredType = enclosingUnit.resynthesizerContext
|
| - .resolveTypeRef(_unlinkedVariable.type, typeParameterContext);
|
| + _declaredType = enclosingUnit.resynthesizerContext.resolveTypeRef(
|
| + _unlinkedVariable.type, typeParameterContext,
|
| + declaredType: true);
|
| }
|
| return super.type;
|
| }
|
| @@ -7389,8 +7392,9 @@ class ParameterElementImpl extends VariableElementImpl
|
| } else {
|
| _type = enclosingUnit.resynthesizerContext.resolveLinkedType(
|
| _unlinkedParam.inferredTypeSlot, typeParameterContext);
|
| - _declaredType = enclosingUnit.resynthesizerContext
|
| - .resolveTypeRef(_unlinkedParam.type, typeParameterContext);
|
| + _declaredType = enclosingUnit.resynthesizerContext.resolveTypeRef(
|
| + _unlinkedParam.type, typeParameterContext,
|
| + declaredType: true);
|
| }
|
| }
|
| }
|
| @@ -7948,7 +7952,9 @@ abstract class ResynthesizerContext {
|
| */
|
| DartType resolveTypeRef(
|
| EntityRef type, TypeParameterizedElementMixin typeParameterContext,
|
| - {bool defaultVoid: false, bool instantiateToBoundsAllowed: true});
|
| + {bool defaultVoid: false,
|
| + bool instantiateToBoundsAllowed: true,
|
| + bool declaredType: false});
|
| }
|
|
|
| /**
|
| @@ -8148,7 +8154,7 @@ class TypeParameterElementImpl extends ElementImpl
|
| }
|
| return _bound ??= enclosingUnit.resynthesizerContext.resolveTypeRef(
|
| _unlinkedTypeParam.bound, enclosingElement,
|
| - instantiateToBoundsAllowed: false);
|
| + instantiateToBoundsAllowed: false, declaredType: true);
|
| }
|
| return _bound;
|
| }
|
|
|