Skip to content

Analyzer crash during code-generation #35643

Closed
@rrousselGit

Description

@rrousselGit

What I was doing

I started a flutter pub pub run build_runner watch.
The code-generation finished without issue and the output code is entirely valid.

Selecting the whole file, followed by a "cut" + "paste" fixes this issue. But it doesn't prevent it from happening again (I faced it a few time this day already).

Versions

  • Flutter SDK 1.1.10-pre.27
  • Visual Studio Code 1.30.2
  • Dart Code 2.21.1

Analyzer Info

The analyzer was launched using the arguments:

/Users/remirousselet/dev/libs/flutter/bin/cache/dart-sdk/bin/snapshots/analysis_server.dart.snapshot
--client-id=Dart-Code.dart-code
--client-version=2.21.1
--port=10000
--instrumentation-log-file=/Users/remirousselet/dev/analyzer-log.txt

Exception

Analysis failed: /Users/remirousselet/dev/flutter_suspense/example/lib/main.dart context: exception_20190113_051802_192

RangeError (index): Invalid value: Only valid value is 0: 2
#0      List.[] (dart:core/runtime/libarray.dart:12:52)
#1      _UnitResynthesizer.getReferenceInfo (package:analyzer/src/summary/resynthesize.dart:1461:43)
#2      _UnitResynthesizer.buildType (package:analyzer/src/summary/resynthesize.dart:1367:38)
#3      SummaryResynthesizerContext.resolveTypeRef (package:analyzer/src/summary/resynthesize.dart:472:30)
#4      ParameterElementImpl._resynthesizeTypeAndParameters (package:analyzer/src/dart/element/element.dart:7162:14)
#5      ParameterElementImpl.type (package:analyzer/src/dart/element/element.dart:7059:5)
#6      _FunctionTypeImplLazy._forEachParameterType (package:analyzer/src/dart/element/type.dart:3424:35)
#7      FunctionTypeImpl.namedParameterTypes (package:analyzer/src/dart/element/type.dart:562:5)
#8      ResolverVisitor.visitArgumentList (package:analyzer/src/generated/resolver.dart:4409:22)
#9      ArgumentListImpl.accept (package:analyzer/src/dart/ast/ast.dart:419:49)
#10     ResolverVisitor.visitInstanceCreationExpression (package:analyzer/src/generated/resolver.dart:5175:24)
#11     InstanceCreationExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:6534:15)
#12     NamedExpressionImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:8093:18)
#13     ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:5313:10)
#14     UnifyingAstVisitor.visitNamedExpression (package:analyzer/dart/ast/visitor.dart:3183:51)
#15     ResolverVisitor.visitNamedExpression (package:analyzer/src/generated/resolver.dart:5308:11)
#16     NamedExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:8088:49)
#17     NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:8372:20)
#18     ArgumentListImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:423:16)
#19     ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:5313:10)
#20     UnifyingAstVisitor.visitArgumentList (package:analyzer/dart/ast/visitor.dart:2966:45)
#21     ResolverVisitor.visitArgumentList (package:analyzer/src/generated/resolver.dart:4445:11)
#22     ArgumentListImpl.accept (package:analyzer/src/dart/ast/ast.dart:419:49)
#23     ResolverVisitor.visitInstanceCreationExpression (package:analyzer/src/generated/resolver.dart:5175:24)
#24     InstanceCreationExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:6534:15)
#25     ReturnStatementImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:9465:18)
#26     ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:5313:10)
#27     UnifyingAstVisitor.visitReturnStatement (package:analyzer/dart/ast/visitor.dart:3233:51)
#28     ResolverVisitor.visitReturnStatement (package:analyzer/src/generated/resolver.dart:5365:11)
#29     ReturnStatementImpl.accept (package:analyzer/src/dart/ast/ast.dart:9461:49)
#30     NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:8372:20)
#31     BlockImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:1254:17)
#32     ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:5313:10)
#33     UnifyingAstVisitor.visitBlock (package:analyzer/dart/ast/visitor.dart:2987:31)
#34     ScopedVisitor.visitBlock (package:analyzer/src/generated/resolver.dart:6213:13)
#35     BlockImpl.accept (package:analyzer/src/dart/ast/ast.dart:1250:49)
#36     BlockFunctionBodyImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:1199:13)
#37     ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:5313:10)
#38     UnifyingAstVisitor.visitBlockFunctionBody (package:analyzer/dart/ast/visitor.dart:2990:55)
#39     ScopedVisitor.visitBlockFunctionBody (package:analyzer/src/generated/resolver.dart:6224:13)
#40     ResolverVisitor.visitBlockFunctionBody (package:analyzer/src/generated/resolver.dart:4568:13)
#41     BlockFunctionBodyImpl.accept (package:analyzer/src/dart/ast/ast.dart:1195:49)
#42     MethodDeclarationImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:7739:12)
#43     ResolverVisitor.visitNode (package:analyzer/src/generated/resolver.dart:5313:10)
#44     UnifyingAstVisitor.visitMethodDeclaration (package:analyzer/dart/ast/visitor.dart:3174:55)
#45     ScopedVisitor.visitMethodDeclarationInScope (package:analyzer/src/generated/resolver.dart:6669:11)
#46     ResolverVisitor.visitMethodDeclarationInScope (package:analyzer/src/generated/resolver.dart:5263:11)
#47     ScopedVisitor.visitMethodDeclaration (package:analyzer/src/generated/resolver.dart:6662:7)
#48     ResolverVisitor.visitMethodDeclaration (package:analyzer/src/generated/resolver.dart:5254:13)
#49     MethodDeclarationImpl.accept (package:analyzer/src/dart/ast/ast.dart:7730:49)
#50     NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:8372:20)
#51     ScopedVisitor.visitClassMembersInScope (package:analyzer/src/generated/resolver.dart:6290:18)
#52     ScopedVisitor.visitClassDeclaration (package:analyzer/src/generated/resolver.dart:6268:11)
#53     ResolverVisitor.visitClassDeclaration (package:analyzer/src/generated/resolver.dart:4605:13)
#54     ClassDeclarationImpl.accept (package:analyzer/src/dart/ast/ast.dart:1765:49)
#55     ResolverVisitor.visitCompilationUnit (package:analyzer/src/generated/resolver.dart:4666:25)
#56     CompilationUnitImpl.accept (package:analyzer/src/dart/ast/ast.dart:2436:49)
#57     LibraryAnalyzer._resolveFile (package:analyzer/src/dart/analysis/library_analyzer.dart:623:10)
#58     LibraryAnalyzer.analyzeSync.<anonymous closure> (package:analyzer/src/dart/analysis/library_analyzer.dart:118:7)
#59     __InternalLinkedHashMap&_HashVMBase&MapMixin&_LinkedHashMapMixin.forEach (dart:collection/runtime/libcompact_hash.dart:367:8)
#60     LibraryAnalyzer.analyzeSync (package:analyzer/src/dart/analysis/library_analyzer.dart:117:11)
#61     LibraryAnalyzer.analyze.<anonymous closure> (package:analyzer/src/dart/analysis/library_analyzer.dart:91:14)
#62     _PerformanceTagImpl.makeCurrentWhile (package:analyzer/src/generated/utilities_general.dart:258:15)
#63     LibraryAnalyzer.analyze (package:analyzer/src/dart/analysis/library_analyzer.dart:90:43)
#64     AnalysisDriver._computeAnalysisResult.<anonymous closure> (package:analyzer/src/dart/analysis/driver.dart:1431:63)
#65     PerformanceLog.run (package:analyzer/src/dart/analysis/performance_logger.dart:34:15)
#66     AnalysisDriver._computeAnalysisResult (package:analyzer/src/dart/analysis/driver.dart:1409:20)
#67     AnalysisDriver.performWork (package:analyzer/src/dart/analysis/driver.dart:1203:17)
<asynchronous suspension>
#68     AnalysisDriverScheduler._run (package:analyzer/src/dart/analysis/driver.dart:2116:24)
<asynchronous suspension>
#69     AnalysisDriverScheduler.start (package:analyzer/src/dart/analysis/driver.dart:2057:5)
#70     new AnalysisServer (package:analysis_server/src/analysis_server.dart:236:29)
#71     SocketServer.createAnalysisServer (package:analysis_server/src/socket_server.dart:79:26)
#72     StdioAnalysisServer.serveStdio (package:analysis_server/src/server/stdio_server.dart:37:18)
#73     Driver.startAnalysisServer.<anonymous closure> (package:analysis_server/src/server/driver.dart:519:21)
#74     _rootRun (dart:async/zone.dart:1124:13)
#75     _CustomZone.run (dart:async/zone.dart:1021:19)
#76     _runZoned (dart:async/zone.dart:1516:10)
#77     runZoned (dart:async/zone.dart:1463:12)
#78     Driver._captureExceptions (package:analysis_server/src/server/driver.dart:585:12)
#79     Driver.startAnalysisServer (package:analysis_server/src/server/driver.dart:517:7)
#80     Driver.start (package:analysis_server/src/server/driver.dart:414:7)
#81     main (file:///b/rr/tmpeKZXk6/w/src/third_party/dart/pkg/analysis_server/bin/server.dart:12:11)
#82     _AsyncAwaitCompleter.start (dart:async/runtime/libasync_patch.dart:49:6)
#83     main (file:///b/rr/tmpeKZXk6/w/src/third_party/dart/pkg/analysis_server/bin/server.dart:10:10)
#84     _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:287:32)
#85     _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)

Diagnostics requested after the error occurred are:

[
    {
        "name": "/Users/remirousselet/dev/flutter_suspense",
        "explicitFileCount": 3,
        "implicitFileCount": 464,
        "workItemQueueLength": 0,
        "cacheEntryExceptions": []
    },
    {
        "name": "/Users/remirousselet/dev/flutter_suspense/example",
        "explicitFileCount": 2,
        "implicitFileCount": 605,
        "workItemQueueLength": 0,
        "cacheEntryExceptions": []
    }
]

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2A bug or feature request we're likely to work onlegacy-area-analyzerUse area-devexp instead.type-bugIncorrect behavior (everything from a crash to more subtle misbehavior)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions