{"record":{"id":"b9b60f21af1c53be","repo":"swc-project/swc","slug":"swc-does-not-support-bind-expressions","errorCode":null,"errorMessage":"swc does not support bind expressions","messagePattern":"swc does not support bind expressions","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/swc_estree_compat/src/swcify/expr.rs","lineNumber":1106,"sourceCode":"        }\n    }\n}\n\nimpl Swcify for swc_estree_ast::JSXClosingFragment {\n    type Output = swc_ecma_ast::JSXClosingFragment;\n\n    fn swcify(self, ctx: &Context) -> Self::Output {\n        swc_ecma_ast::JSXClosingFragment {\n            span: ctx.span(&self.base),\n        }\n    }\n}\n\nimpl Swcify for BindExpression {\n    type Output = Never;\n\n    fn swcify(self, _: &Context) -> Self::Output {\n        panic!(\"swc does not support bind expressions\")\n    }\n}\n\nimpl Swcify for DoExpression {\n    type Output = Never;\n\n    fn swcify(self, _: &Context) -> Self::Output {\n        panic!(\"swc does not support do expressions\")\n    }\n}\n\nimpl Swcify for PipelinePrimaryTopicReference {\n    type Output = Never;\n\n    fn swcify(self, _: &Context) -> Self::Output {\n        panic!(\"swc does not support `PipelinePrimaryTopicReference`\")\n    }\n}","sourceCodeStart":1088,"sourceCodeEnd":1124,"githubUrl":"https://github.com/swc-project/swc/blob/5176682b65416c6b5de6b47379ae1588ea3ecb3f/crates/swc_estree_compat/src/swcify/expr.rs#L1088-L1124","documentation":"Raised in `Swcify for BindExpression` (swcify/expr.rs:1106). A BindExpression is the stage-0 `::` bind-operator proposal (`obj::method`); swc's AST has no node for it because the proposal never advanced. The implementation is a stub with `Never` output that unconditionally panics whenever a bind expression node reaches this swcify impl. The bind expression node in the Babel input is what triggers it.","triggerScenarios":"Thrown at crates/swc_estree_compat/src/swcify/expr.rs:1106 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Reject Babel ASTs containing bind expressions up front with a clear unsupported-syntax error","Transpile `a::b` to `b.bind(a)` in a preprocessing pass before swcification","Ensure the parser/plugin that produced the Babel AST has bind-expression syntax disabled"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5176682b65416c6b5de6b47379ae1588ea3ecb3f","analyzedAt":"2026-08-17T16:16:52.067Z","contentChangedAt":"2026-08-17T16:16:52.067Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}