| Index: pkg/analyzer/lib/src/summary/resynthesize.dart
|
| diff --git a/pkg/analyzer/lib/src/summary/resynthesize.dart b/pkg/analyzer/lib/src/summary/resynthesize.dart
|
| index f037804d591b7142cee2990333f1cf6edfd1bc3c..e6ac50d7a5f8eaad703f43ab662cc4d17cf1252d 100644
|
| --- a/pkg/analyzer/lib/src/summary/resynthesize.dart
|
| +++ b/pkg/analyzer/lib/src/summary/resynthesize.dart
|
| @@ -2149,13 +2149,20 @@ class _UnitResynthesizer {
|
| FunctionElementImpl parameterTypeElement =
|
| new FunctionElementImpl('', -1);
|
| parameterTypeElement.synthetic = true;
|
| - parameterElement.parameters =
|
| - serializedParameter.parameters.map(buildParameter).toList();
|
| - parameterTypeElement.enclosingElement = parameterElement;
|
| - parameterTypeElement.shareParameters(parameterElement.parameters);
|
| + List<ParameterElement> subParameters = serializedParameter.parameters
|
| + .map((UnlinkedParam p) => buildParameter(p, synthetic: synthetic))
|
| + .toList();
|
| + if (synthetic) {
|
| + parameterTypeElement.parameters = subParameters;
|
| + } else {
|
| + parameterElement.parameters = subParameters;
|
| + parameterTypeElement.shareParameters(subParameters);
|
| + parameterTypeElement.enclosingElement = parameterElement;
|
| + }
|
| parameterTypeElement.returnType = buildType(serializedParameter.type);
|
| parameterElement.type = new FunctionTypeImpl.elementWithNameAndArgs(
|
| parameterTypeElement, null, getCurrentTypeArguments(), false);
|
| + parameterTypeElement.type = parameterElement.type;
|
| } else {
|
| if (serializedParameter.isInitializingFormal &&
|
| serializedParameter.type == null) {
|
|
|