[Issue 22004] [REG2.097] Error: mismatched function return type inference of `void` and `noreturn`
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Wed Oct 13 13:17:29 UTC 2021
https://issues.dlang.org/show_bug.cgi?id=22004
--- Comment #8 from Dlang Bot <dlang-bot at dlang.rocks> ---
dlang/dmd pull request #13164 "Merge stable" was merged into master:
- 8989d6653d5fa5e1d2c20fa30dabeda54c0f283f by MoonlightSentinel:
Fix 22004 - Subsequent return statements override inferred noreturn...
... return type.
Return type inference used to commit to `noreturn` when encountering
a return statement producing a `noreturn` value. This was problematic
when the function contained subsequent `void` returns, raising an error
regarding missmatched function type inference even though `void` and
`noreturn` are compatible (neither produce an actual value).
This patch changes the code to let `noreturn` be overriden by `void`.
https://github.com/dlang/dmd/pull/13164
--
More information about the Digitalmars-d-bugs
mailing list