mirror of
https://github.com/oxc-project/oxc.git
synced 2026-11-04 10:29:58 +00:00
fix(parser): parse unary conditional after satisfies (#24807)
Fixes #24804. Recognize `!` as a type-start token so `?` after `satisfies` remains the conditional-expression operator instead of being consumed as a JSDoc nullable type. Validated with `just ready`. AI-assisted.
This commit is contained in:
7 files changed
+14
-11
No files matched your search
@@ -601,7 +601,7 @@ impl<'a, C: Config> ParserImpl<'a, C> {
|
||||
| Kind::Object
|
||||
| Kind::Star
|
||||
| Kind::Question
|
||||
| Kind::Break
|
||||
| Kind::Bang
|
||||
| Kind::Dot3
|
||||
| Kind::Infer
|
||||
| Kind::Import
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
const foo = "foo"
|
||||
const bar = "bar"
|
||||
foo === "value" satisfies string ? !bar : bar
|
||||
@@ -1,3 +1,3 @@
|
||||
codegen_misc Summary:
|
||||
AST Parsed : 73/73 (100.00%)
|
||||
Positive Passed: 73/73 (100.00%)
|
||||
AST Parsed : 74/74 (100.00%)
|
||||
Positive Passed: 74/74 (100.00%)
|
||||
@@ -1,3 +1,3 @@
|
||||
formatter_misc Summary:
|
||||
AST Parsed : 73/73 (100.00%)
|
||||
Positive Passed: 73/73 (100.00%)
|
||||
AST Parsed : 74/74 (100.00%)
|
||||
Positive Passed: 74/74 (100.00%)
|
||||
@@ -1,6 +1,6 @@
|
||||
parser_misc Summary:
|
||||
AST Parsed : 73/73 (100.00%)
|
||||
Positive Passed: 73/73 (100.00%)
|
||||
AST Parsed : 74/74 (100.00%)
|
||||
Positive Passed: 74/74 (100.00%)
|
||||
Negative Passed: 154/154 (100.00%)
|
||||
|
||||
× Cannot assign to 'arguments' in strict mode
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
semantic_misc Summary:
|
||||
AST Parsed : 73/73 (100.00%)
|
||||
Positive Passed: 68/73 (93.15%)
|
||||
AST Parsed : 74/74 (100.00%)
|
||||
Positive Passed: 69/74 (93.24%)
|
||||
semantic Error: tasks/coverage/misc/pass/declare-let-private.ts
|
||||
Bindings mismatch:
|
||||
after transform: ScopeId(0): ["private"]
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
transformer_misc Summary:
|
||||
AST Parsed : 73/73 (100.00%)
|
||||
Positive Passed: 73/73 (100.00%)
|
||||
AST Parsed : 74/74 (100.00%)
|
||||
Positive Passed: 74/74 (100.00%)
|
||||
Reference in new issue
Block a user