RFR: 8306579: Consider building with /Zc:throwingNew [v2]
Julian Waters
jwaters at openjdk.org
Thu Nov 21 07:20:18 UTC 2024
On Thu, 21 Nov 2024 07:09:23 GMT, Kim Barrett <kbarrett at openjdk.org> wrote:
> > One thing I have a query on: Does this need the problem with the ADLC operator new to be fixed before it can be integrated?
>
> For those following along, the bug being referred to is this: https://bugs.openjdk.org/browse/JDK-8342639 Global operator new in adlc has wrong exception spec
>
> I think that's not a blocker for this change. With this change, `new` expressions that call that function won't implicitly check for null. That would be a problem if that function could return null. But it calls the normal global `operator new(size_t)`, which doesn't return null, instead throwing on failure. And if that call failed, that throw would hit the nothrow exception specification of the adlc-supplied definition, and call std::terminate. I'm pretty sure that's where it would end up anyway, in the absence of the nothrow exception specification, since I don't think there's any exception handling in adlc.
Ah, alright. For exceptions ADLC is a strange case. ADLC has no exceptions on Linux, but does on every other platform. I couldn't tell you why this is the case
EDIT: Nevermind, I think I misunderstood "I don't think there's any exception handling in adlc", my bad
-------------
PR Comment: https://git.openjdk.org/jdk/pull/22039#issuecomment-2490245632
More information about the build-dev
mailing list