RFR: JDK-8042981: Strip type annotations in Types' utility methods [v12]

Jonathan Gibbons jjg at openjdk.org
Wed Jan 24 00:03:45 UTC 2024


On Sat, 20 Jan 2024 21:59:46 GMT, Joe Darcy <darcy at openjdk.org> wrote:

>> Early review for JDK-8042981: "Strip type annotations in Types' utility methods". I work more often in the Element world rather than the Type word of the annotation processing APIs.
>> 
>> The type annotations on primitive types are *not* cleared by the existing annotation clearing mechanisms. I suspect Type.Visitor is missing a case for primitive types. Someone with familiarity with javac's type modeling should take a look; thanks.
>
> Joe Darcy has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Make make of stripAnnotations more explicit.

src/jdk.compiler/share/classes/com/sun/tools/javac/code/Type.java line 431:

> 429:         /**
> 430:          * Note: this visitor only needs to handle cases where 'contained'
> 431:          * types can be annotated. These cases are described ing JVMS

typo: `ing`

test/langtools/tools/javac/processing/model/util/types/TestAnnotationStripping.java line 145:

> 143:         try {
> 144:             var result = vacuousTypes.stripAnnotations(tm);
> 145:             messager.printError("Unexpected non-exceptional result returned" +  result);

maybe need a space at the end of the string, to separate "returned" from `result`

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/8984#discussion_r1464131301
PR Review Comment: https://git.openjdk.org/jdk/pull/8984#discussion_r1464133221


More information about the compiler-dev mailing list