Skip to content

JS Symbols can't be used as Dart map keys #47670

@nex3

Description

@nex3

Passing an instance of JavaScript's Symbol class as a key to a Dart Map causes an error like the following:

Uncaught TypeError: J.getInterceptor$(...).get$hashCode is not a function
    at Object.get$hashCode$ (/home/nweiz/goog/sass/dart/build/npm/sass.dart.js:9370:42)
    at JsLinkedHashMap.internalComputeHashCode$1 (/home/nweiz/goog/sass/dart/build/npm/sass.dart.js:27589:16)
    at JsLinkedHashMap.internalSet$2 (/home/nweiz/goog/sass/dart/build/npm/sass.dart.js:27464:20)
    at JsLinkedHashMap.$indexSet (/home/nweiz/goog/sass/dart/build/npm/sass.dart.js:27454:15)
    at Object.fillLiteralMap (/home/nweiz/goog/sass/dart/build/npm/sass.dart.js:6698:16)
    at Object.LinkedHashMap_LinkedHashMap$_literal (/home/nweiz/goog/sass/dart/build/npm/sass.dart.js:13378:81)
    at Object.updateValuePrototype (/home/nweiz/goog/sass/dart/build/npm/sass.dart.js:5332:16)
    at Object.main (/home/nweiz/goog/sass/dart/build/npm/sass.dart.js:1890:9)
    at main1 (/home/nweiz/goog/sass/dart/build/npm/sass.dart.js:18701:9)

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-web-jsIssues related to JavaScript support for Dart Web, including DDC, dart2js, and JS interop.customer-dart-sasstype-bugIncorrect behavior (everything from a crash to more subtle misbehavior)web-js-interopIssues that impact all js interop

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions