| Index: pkg/analyzer/lib/src/summary/link.dart
|
| diff --git a/pkg/analyzer/lib/src/summary/link.dart b/pkg/analyzer/lib/src/summary/link.dart
|
| index 342db57695c77c0be3b1d3110681d57205abfeac..28930fc20225b214648e446eea47b0723fc320d4 100644
|
| --- a/pkg/analyzer/lib/src/summary/link.dart
|
| +++ b/pkg/analyzer/lib/src/summary/link.dart
|
| @@ -570,12 +570,19 @@ class ConstConstructorNode extends ConstNode {
|
| // we'll evaluate calls to this constructor without having to refer to
|
| // any other constants. So we don't need to report any dependencies.
|
| } else {
|
| + ClassElementForLink superClass = enclosingClass.supertype?.element;
|
| bool superInvocationFound = false;
|
| for (UnlinkedConstructorInitializer constructorInitializer
|
| in constructorElement._unlinkedExecutable.constantInitializers) {
|
| if (constructorInitializer.kind ==
|
| UnlinkedConstructorInitializerKind.superInvocation) {
|
| superInvocationFound = true;
|
| + if (superClass != null && !superClass.isObject) {
|
| + ConstructorElementForLink constructor = superClass
|
| + .getContainedName(constructorInitializer.name)
|
| + .asConstructor;
|
| + safeAddDependency(constructor?._constNode);
|
| + }
|
| }
|
| CompilationUnitElementForLink compilationUnit =
|
| constructorElement.enclosingElement.enclosingElement;
|
| @@ -588,7 +595,6 @@ class ConstConstructorNode extends ConstNode {
|
| if (!superInvocationFound) {
|
| // No explicit superconstructor invocation found, so we need to
|
| // manually insert a reference to the implicit superconstructor.
|
| - ClassElementForLink superClass = enclosingClass.supertype?.element;
|
| if (superClass != null && !superClass.isObject) {
|
| ConstructorElementForLink unnamedConstructor =
|
| superClass.unnamedConstructor;
|
|
|