{"record":{"id":"b8707a40e1836ba5","repo":"swc-project/swc","slug":"expected-token","errorCode":null,"errorMessage":"Expected '{' token","messagePattern":"Expected '\\{' token","errorType":"validation","errorClass":"swc_css_parser::Error","httpStatus":null,"severity":"error","filePath":"crates/swc_css_parser/src/parser/at_rules/mod.rs","lineNumber":113,"sourceCode":"                    matching_functions.push(self.parse()?);\n                }\n\n                let prelude = AtRulePrelude::DocumentPrelude(DocumentPrelude {\n                    span: span!(self, span.lo),\n                    matching_functions,\n                });\n\n                self.input.skip_ws();\n\n                Some(prelude)\n            }\n            \"font-face\" => {\n                self.input.skip_ws();\n\n                if !is!(self, EOF) {\n                    let span = self.input.cur_span();\n\n                    return Err(Error::new(span, ErrorKind::Expected(\"'{' token\")));\n                }\n\n                None\n            }\n            \"font-feature-values\" => {\n                self.input.skip_ws();\n\n                let prelude = AtRulePrelude::FontFeatureValuesPrelude(self.parse()?);\n\n                self.input.skip_ws();\n\n                Some(prelude)\n            }\n            \"font-palette-values\" => {\n                self.input.skip_ws();\n\n                let prelude = AtRulePrelude::FontPaletteValuesPrelude(self.parse()?);\n","sourceCodeStart":95,"sourceCodeEnd":131,"githubUrl":"https://github.com/swc-project/swc/blob/5176682b65416c6b5de6b47379ae1588ea3ecb3f/crates/swc_css_parser/src/parser/at_rules/mod.rs#L95-L131","documentation":"@font-face takes no prelude, only a block; the parser found tokens after @font-face that are not EOF and returns this error at the current span, indicating trailing junk where the { ... } block should begin.","triggerScenarios":"Thrown at crates/swc_css_parser/src/parser/at_rules/mod.rs:113 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Remove tokens after @font-face and supply its { ... } block","Surface the returned error as a diagnostic","Skip the malformed rule"],"exampleFix":null,"handlingStrategy":"validation","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-14T05:17:10.506Z"}