Skip to content

Add support for 'noreturn' keyword introduced in D13.#433

Merged
cirras merged 5 commits intointegrated-application-development:masterfrom
Bazooper-blip:noreturn-keyword
Apr 13, 2026
Merged

Add support for 'noreturn' keyword introduced in D13.#433
cirras merged 5 commits intointegrated-application-development:masterfrom
Bazooper-blip:noreturn-keyword

Conversation

@Bazooper-blip
Copy link
Copy Markdown

No description provided.

@cirras cirras self-requested a review April 9, 2026 23:28
@cirras cirras linked an issue Apr 10, 2026 that may be closed by this pull request
2 tasks
cirras added 2 commits April 13, 2026 15:20
`UnknownException` now represents a guaranteed raise of an
exception with unknown type.

`PossibleException` has been introduced to fill the role that
`UnknownException` had before, where we think an invocation **may**
raise an exception of unknown type, but it isn't guaranteed.
@cirras cirras force-pushed the noreturn-keyword branch from 3a4a7e4 to ea4f4f0 Compare April 13, 2026 05:27
cirras
cirras previously approved these changes Apr 13, 2026
Copy link
Copy Markdown
Collaborator

@cirras cirras left a comment

Choose a reason for hiding this comment

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

Made a few changes:

  • Changed the rule name to NoreturnContract.
  • Improved modelling of exception raises in the CFG to better support the rule you added.
  • Fixed the rule implementation to walk the CFG correctly. (tests are now passing)

I'll merge shortly - thanks for your contribution. 👍

@cirras cirras force-pushed the noreturn-keyword branch 4 times, most recently from 6910881 to e267f23 Compare April 13, 2026 06:11
Sammy Valtonen and others added 3 commits April 13, 2026 16:20
Co-authored-by: Jonah Jeleniewski <jjeleniewski@integradev.com.au>
This fixes our integration tests, which pull down the latest SonarQube
via the Sonar Orchestrator library. Current versions of SonarQube
require Java 21+.
@cirras cirras force-pushed the noreturn-keyword branch from e267f23 to b8e7f94 Compare April 13, 2026 06:21
@cirras cirras merged commit 6b28b55 into integrated-application-development:master Apr 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support noreturn routine directive

2 participants