Sirraide wrote:

@nikic Is calling a `noreturn` function from a `willreturn` function actually 
an issue in practice?

My two cents is that diagnosing this feels like it’ll cause a lot of false 
positives: `assert` and similar functions/macros often abort the program and 
end up calling `noreturn` functions inadvertently... which ought to be fine in 
a `const`/`pure` function—it doesn’t cause a problem if the assertion doesn’t 
fail, and conversely, if it _does_ fail, then that’s a bug in the program 
anyway.

Also, if this is semantically confusing, can we just remove `willreturn`? Does 
adding that make a difference in practice (it might, I’m not an optimiser guy 
candidly)?

https://github.com/llvm/llvm-project/pull/206134
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to