Skip to content

DDC / Incremental Compilation problems #38102

@vsmenon

Description

@vsmenon

We still have several reports of errors in the wild where DDC (kernel-based) crashes on invalid kernel input when invoking initializeIncrementalCompiler:

RangeError (index): Index out of range: no indices are valid: 0
#0      Uint8List.[] (dart:typed_data-patch/typed_data_patch.dart:2188:7)
#1      BinaryBuilder.readByte (package:kernel/binary/ast_from_binary.dart:100:27)
#2      BinaryBuilder.readUint32 (package:kernel/binary/ast_from_binary.dart:120:13)
#3      BinaryBuilder.readComponent (package:kernel/binary/ast_from_binary.dart:440:17)
#4      ProcessedOptions.loadComponent (package:front_end/src/base/processed_options.dart:392:10)
#5      initializeIncrementalCompiler (package:front_end/src/api_unstable/ddc.dart:233:14)
<asynchronous suspension>

Or for example:

Bad state: Empty input given.
#0 BinaryBuilder._checkEmptyInput (package:kernel/binary/ast_from_binary.dart:457:29)
#1 BinaryBuilder.readComponent. (package:kernel/binary/ast_from_binary.dart:474:7)
#2 Timeline.timeSync (dart:developer/timeline.dart:161:22)
#3 BinaryBuilder.readComponent (package:kernel/binary/ast_from_binary.dart:472:21)
#4 ProcessedOptions.loadComponent (package:front_end/src/base/processed_options.dart:410:10)
#5 initializeIncrementalCompiler (package:front_end/src/api_unstable/modular_incremental_compilation.dart:207:29)

See dart-lang/build#2362

@natebosch @jakemac53 - should we catch and return a specific error code from DDC for this?

fyi @jensjoha

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2A bug or feature request we're likely to work onarea-web-jsIssues related to JavaScript support for Dart Web, including DDC, dart2js, and JS interop.web-dev-compiler

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions