efriedma-quic wrote: My understanding of deferred diagnostics is that the primary use is to allow including headers that contain inline functions, and don't properly mark device vs. host. So when you parse the function, it's unknown whether the function is actually going to be used, which would require triggering the error. (And you want this to work recursively; if you have an inline function that uses another inline function, you want to delay them both.)
If we're deferring in cases where we don't need to defer, sure, let's stop doing that. But you still have an issue for diagnostics that actually do need to be delayed, I think. You need to be very careful about putting multiple tests in the same test file here: once you trigger an error anywhere, the entire module is marked as having an unrecoverable error, so the tests can conflict. https://github.com/llvm/llvm-project/pull/147163 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits