From 651cfe9cedf7ea48fba6965e05d4b60f1f90d562 Mon Sep 17 00:00:00 2001 From: Sigmund Cherem Date: Thu, 16 Apr 2020 15:15:24 +0000 Subject: [PATCH] [dart2js] handle synthesized parameters in dump-info Fixes https://github.com/dart-lang/sdk/issues/41459 Change-Id: I70fbe7ebcc79a948d23846cdb756cde77e9db230 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/143720 Reviewed-by: Mayank Patke Commit-Queue: Sigmund Cherem --- pkg/compiler/lib/src/dump_info.dart | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkg/compiler/lib/src/dump_info.dart b/pkg/compiler/lib/src/dump_info.dart index 646cdeedfca..bc001f7576b 100644 --- a/pkg/compiler/lib/src/dump_info.dart +++ b/pkg/compiler/lib/src/dump_info.dart @@ -276,8 +276,10 @@ class ElementInfoCollector { }); int parameterIndex = 0; closedWorld.elementEnvironment.forEachParameter(function, (type, name, _) { - parameters.add(new ParameterInfo( - name, inferredParameterTypes[parameterIndex++], '$type')); + // Synthesized parameters have no name. This can happen on parameters of + // setters derived from lowering late fields. + parameters.add(new ParameterInfo(name ?? '#t${parameterIndex}', + inferredParameterTypes[parameterIndex++], '$type')); }); var functionType = environment.getFunctionType(function);