mirror of
https://github.com/danbulant/oxc
synced 2026-05-19 20:28:58 +00:00
This PR aims to provide a more accurate error/finalization flow, I've nuked the old error path approach and rewrote it with more versatility in mind. We used to visit the finalizer block twice and create 2 sets of AstNodes/Basic Blocks for them, This was there to differentiate between the error path finalizer and success path one. There is no longer a need for having 2 separate sets of nodes to do this differentiation. As for the error path now we have 2 kinds of them, Everything is attached to an error block - even if it is not in a try-catch statement - this results in a lot of extra edges to keep track of these "Implicit" error blocks but I believe in future it can help us to track cross block error paths, For example, we can dynamically attach and cache the implicit error block of a function to its call site error path (either implicit or explicit). |
||
|---|---|---|
| .. | ||
| benchmark | ||
| common | ||
| coverage | ||
| javascript_globals | ||
| lint_rules | ||
| minsize | ||
| prettier_conformance | ||
| rulegen | ||
| transform_conformance | ||
| website | ||
| libs.txt | ||