RFR: 8337037: compiler internal options are not printing the stacktrace after a compiler crash [v2]
Maurizio Cimadamore
mcimadamore at openjdk.org
Thu Jul 25 09:57:34 UTC 2024
On Wed, 24 Jul 2024 17:46:44 GMT, Vicente Romero <vromero at openjdk.org> wrote:
>> There are two internal javac options: `doe` and `dev` that we use to indicate the compiler to printout the stacktrace of any error issued and or exception thrown. There are a number of internal exceptions for which the stacktrace was not being produced due to performance issues. This patch is restoring the previous compiler behavior, printing out stacktraces if the internal options are passed, while keeping the most performant approach when none of the mentioned internal options is passed,
>>
>> TIA
>
> Vicente Romero has updated the pull request incrementally with one additional commit since the last revision:
>
> addressing review comments
Looks good. Two observation (no need to do anything, mostly for your consideration):
* Given that the new exception type is used across different types (e.g. Types and Resolve), it would perhaps make sense to put it in the `util` package?
* I noticed that the changes to Type.SignatureGenerator have caused a cascade effect on all the subclasses. I wonder: perhaps SignatureGenerator should be an member inner class, so that it can read its "doe" bit from `Types` directly? After all, clients all have a `types` instance available when creating a subclass of the signature generator, so that would work for them too, but would avoid a bit of repetition.
Marked as reviewed by mcimadamore (Reviewer).
-------------
PR Review: https://git.openjdk.org/jdk/pull/20314#pullrequestreview-2198849601
PR Review: https://git.openjdk.org/jdk/pull/20314#pullrequestreview-2198849889
More information about the kulla-dev
mailing list