[Issue 22004] [REG2.097] Error: mismatched function return type inference of `void` and `noreturn`
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Sat Oct 9 09:07:05 UTC 2021
https://issues.dlang.org/show_bug.cgi?id=22004
--- Comment #3 from Dlang Bot <dlang-bot at dlang.rocks> ---
dlang/dmd pull request #13135 "Issue 22004 - Allow noreturn returns from void
functions" was merged into stable:
- 3d83852dc2f36b76a83cab6a21b6461d84012af4 by MoonlightSentinel:
Issue 22004 - Allow noreturn returns from void functions
This is valid because
- `noreturn` is convertible to any type (incl. `void`)
- the program will abort/throw while evaluating the expression and hence
never actually return a value
This means that the `ReturnStatement` can be replaced by the standalone
expression without changing the behaviour of the program.
---
Doesn't fix 22004 because the supplied example requires further changes
to accomodate for `return <noreturn>;` and subsequent `return;`'s during
the return type inference.
https://github.com/dlang/dmd/pull/13135
--
More information about the Digitalmars-d-bugs
mailing list