Closed
Description
Trying to run
dart migrate pkg/kernel --skip-import-check
in the Dart repo - on top of the changes in https://dart-review.googlesource.com/c/sdk/+/171945 - leads to this crash:
Migrating c:\src\dart-repo1b\sdk\pkg\kernel
See https://dart.dev/go/null-safety-migration for a migration guide.
Analyzing project...
[----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|]
Continuing due to the presence of `--skip-import-check`. To see a complete
list of the unmigrated dependencies, re-run without the `--skip-import-check`
flag.
No analysis issues found.
Generating migration suggestions...
[-----------------------------------------------------------\ ]
bug in the migration tool. Please consider filing a bug report at:
https://github.com/dart-lang/sdk/issues/new
Please include the SDK version (2.12.0-edge.a39ea2562720724ac61772c1a3bc4f63dc32f490) in your bug report.
To attempt to perform migration anyway, you may re-run with
--ignore-exceptions.
Exception details:
Bad state: Unrelated types: abstract class List<E> implements EfficientLengthIterable<E> and class Tuple2<T1, T2>
#0 DecoratedClassHierarchy.getDecoratedSupertype (package:nnbd_migration/src/decorated_class_hierarchy.dart:67:10)
#1 DecoratedClassHierarchy.asInstanceOf (package:nnbd_migration/src/decorated_class_hierarchy.dart:38:18)
#2 EdgeBuilder.getOrComputeElementType (package:nnbd_migration/src/edge_builder.dart:248:16)
#3 EdgeBuilder._handlePropertyAccess (package:nnbd_migration/src/edge_builder.dart:2914:20)
#4 EdgeBuilder.visitPrefixedIdentifier (package:nnbd_migration/src/edge_builder.dart:1361:14)
#5 PrefixedIdentifierImpl.accept (package:analyzer/src/dart/ast/ast.dart:8207:49)
#6 EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2143:22)
#7 EdgeBuilder._handleAssignment (package:nnbd_migration/src/edge_builder.dart:2257:20)
#8 EdgeBuilder.visitExpressionFunctionBody (package:nnbd_migration/src/edge_builder.dart:781:5)
#9 ExpressionFunctionBodyImpl.accept (package:analyzer/src/dart/ast/ast.dart:3494:15)
#10 EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2143:22)
#11 EdgeBuilder.visitFunctionExpression.<anonymous closure> (package:nnbd_migration/src/edge_builder.dart:900:25)
#12 ScopedSet.doScoped (package:nnbd_migration/src/utilities/scoped_set.dart:44:13)
#13 EdgeBuilder.visitFunctionExpression (package:nnbd_migration/src/edge_builder.dart:898:28)
#14 FunctionExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:4970:49)
#15 EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2143:22)
#16 EdgeBuilder._handleAssignment (package:nnbd_migration/src/edge_builder.dart:2257:20)
#17 EdgeBuilder._handleInvocationArguments (package:nnbd_migration/src/edge_builder.dart:2851:7)
#18 EdgeBuilder.visitInstanceCreationExpression (package:nnbd_migration/src/edge_builder.dart:1106:5)
#19 InstanceCreationExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:6087:15)
#20 EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2143:22)
#21 EdgeBuilder._handleAssignment (package:nnbd_migration/src/edge_builder.dart:2257:20)
#22 EdgeBuilder.visitVariableDeclarationList (package:nnbd_migration/src/edge_builder.dart:1873:11)
#23 VariableDeclarationListImpl.accept (package:analyzer/src/dart/ast/ast.dart:10593:15)
#24 EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2143:22)
#25 EdgeBuilder.visitNode (package:nnbd_migration/src/edge_builder.dart:1296:9)
#26 GeneralizingAstVisitor.visitAnnotatedNode (package:analyzer/dart/ast/visitor.dart:137:47)
#27 GeneralizingAstVisitor.visitDeclaration (package:analyzer/dart/ast/visitor.dart:230:43)
#28 GeneralizingAstVisitor.visitCompilationUnitMember (package:analyzer/dart/ast/visitor.dart:205:7)
#29 GeneralizingAstVisitor.visitTopLevelVariableDeclaration (package:analyzer/dart/ast/visitor.dart:554:7)
#30 TopLevelVariableDeclarationImpl.accept (package:analyzer/src/dart/ast/ast.dart:9858:15)
#31 EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2143:22)
#32 EdgeBuilder.visitNode (package:nnbd_migration/src/edge_builder.dart:1296:9)
#33 GeneralizingAstVisitor.visitCompilationUnit (package:analyzer/dart/ast/visitor.dart:202:51)
#34 CompletenessTracker.visitCompilationUnit.<anonymous closure> (package:nnbd_migration/src/utilities/completeness_tracker.dart:52:24)
#35 PermissiveModeVisitor.reportExceptionsIfPermissive (package:nnbd_migration/src/utilities/permissive_mode.dart:26:24)
#36 CompletenessTracker.visitCompilationUnit (package:nnbd_migration/src/utilities/completeness_tracker.dart:43:5)
#37 CompilationUnitImpl.accept (package:analyzer/src/dart/ast/ast.dart:2113:49)
#38 NullabilityMigrationImpl.processInput (package:nnbd_migration/src/nullability_migration_impl.dart:244:12)
#39 NonNullableFix.processUnit (package:nnbd_migration/src/front_end/non_nullable_fix.dart:153:15)
#40 _FixCodeProcessor.runLaterPhases.<anonymous closure> (package:nnbd_migration/migration_cli.dart:1123:19)
#41 _FixCodeProcessor.runLaterPhases.<anonymous closure> (package:nnbd_migration/migration_cli.dart:1121:28)
#42 _FixCodeProcessor.processResources (package:nnbd_migration/migration_cli.dart:1050:30)
<asynchronous suspension>
#43 _FixCodeProcessor.runLaterPhases (package:nnbd_migration/migration_cli.dart:1121:5)
<asynchronous suspension>
#44 MigrationCliRunner.run (package:nnbd_migration/migration_cli.dart:727:24)
<asynchronous suspension>
#45 MigrateCommand.run (package:nnbd_migration/migration_cli.dart:185:7)
<asynchronous suspension>
#46 CommandRunner.runCommand (package:args/command_runner.dart:197:13)
<asynchronous suspension>
#47 DartdevRunner.runCommand (package:dartdev/dartdev.dart:249:24)
<asynchronous suspension>
#48 runDartdev (package:dartdev/dartdev.dart:112:14)
<asynchronous suspension>
#49 main (file:///c:/src/dart-repo1b/sdk/pkg/dartdev/bin/dartdev.dart:11:3)
<asynchronous suspension>