Skip to content

Conversation

@aschackmull
Copy link
Contributor

A fresh port of #9914 to present-day main.
I haven't included negative types for now.

@github-actions github-actions bot added the Java label Nov 19, 2025
Copy link
Contributor

@yoff yoff left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good, as far as I can tell.
One thing is that all summaries can now throw, I guess we might want to replace that with a big yml list in the future.
As I understand it, the new CatchParameterNode will be followed in the CFG by CatchTypeTestNode (by the existing CFG rules), which may then end up in a catch, another type test with catch-all type, or an uncaught, with the latter two having exceptional return type.
I suppose we have to redo the performance testing to verify all is well.

@aschackmull
Copy link
Contributor Author

I suppose we have to redo the performance testing to verify all is well.

All is not well - I know that. So I'm not going to merge this until I have more time to dig into the performance problems.

@aschackmull
Copy link
Contributor Author

aschackmull commented Nov 19, 2025

One thing is that all summaries can now throw

Uhm, no?

As I understand it, the new CatchParameterNode will be followed in the CFG by CatchTypeTestNode

No. They're data flow nodes - not CFG nodes, they're not anywhere in the CFG. And the order is the other way round.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants