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; |
} |