| Index: pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart
|
| diff --git a/pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart b/pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart
|
| index 5fa55bcbbc6fb585fdc88551ce80eb88167c7344..7e821365e698027c2de042914fc800e87390cf4b 100644
|
| --- a/pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart
|
| +++ b/pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart
|
| @@ -43,6 +43,7 @@ import 'kernel_builder.dart'
|
| ClassBuilder,
|
| ConstructorReferenceBuilder,
|
| KernelLibraryBuilder,
|
| + KernelNamedTypeBuilder,
|
| KernelProcedureBuilder,
|
| KernelTypeBuilder,
|
| LibraryBuilder,
|
| @@ -133,11 +134,18 @@ abstract class KernelClassBuilder
|
| assert(builder.actualBody == null);
|
| Builder targetBuilder = redirectionTarget.target;
|
| addRedirectingConstructor(builder, library);
|
| + Member target;
|
| if (targetBuilder is ProcedureBuilder) {
|
| - Member target = targetBuilder.target;
|
| - builder.body = new RedirectingFactoryBody(target);
|
| + target = targetBuilder.target;
|
| } else if (targetBuilder is DillMemberBuilder) {
|
| - builder.body = new RedirectingFactoryBody(targetBuilder.member);
|
| + target = targetBuilder.member;
|
| + }
|
| + if (target != null) {
|
| + builder.body = new RedirectingFactoryBody(
|
| + target,
|
| + new KernelNamedTypeBuilder.fromConstructorReference(
|
| + redirectionTarget)
|
| + .build(library));
|
| } else {
|
| var message = templateRedirectionTargetNotFound
|
| .withArguments(redirectionTarget.fullNameForErrors);
|
|
|