RFR: 8303697: ProcessTools doesn't print last line of process output

2023-03-14 Thread Leonid Mesnik
The StreamPumper is fixed to process the last line even it is not finishes with '\n' or '\r'. The test included. Testing with tier1-3 also to verify that tests are not broken. - Commit messages: - fix - 8303697 Changes: https://git.openjdk.org/jdk/pull/13034/files Webrev:

Re: RFR: 8303697: ProcessTools doesn't print last line of process output

2023-03-14 Thread Leonid Mesnik
On Wed, 15 Mar 2023 05:41:33 GMT, Leonid Mesnik wrote: > The StreamPumper is fixed to process the last line even it is not finishes > with '\n' or '\r'. The test included. Testing with tier1-3 also to verify > that tests are not broken. The ByteArrayOutputStream is moved into try block just

Re: RFR: 8294977: Convert test/jdk/java tests from ASM library to Classfile API [v2]

2023-03-14 Thread liach
> Summaries: > 1. A few recommendations about updating the constant API is made at > https://mail.openjdk.org/pipermail/classfile-api-dev/2023-March/000233.html > and I may update this patch shall the API changes be integrated before > 2. One ASM library-specific test, `LambdaAsm` is removed.

Re: RFR: 8302822: Method/Field/Constructor/RecordComponent::getGenericInfo() is not thread safe [v2]

2023-03-14 Thread liach
On Wed, 15 Mar 2023 02:37:05 GMT, liach wrote: >> 8302822: Method/Field/Constructor/RecordComponent::getGenericInfo() is not >> thread safe > > liach has updated the pull request with a new target base due to a merge or a > rebase. The incremental webrev excludes the unrelated changes brought

Re: RFR: 8302822: Method/Field/Constructor/RecordComponent::getGenericInfo() is not thread safe [v2]

2023-03-14 Thread liach
> 8302822: Method/Field/Constructor/RecordComponent::getGenericInfo() is not > thread safe liach has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains four

RFR: 8304181: Constant Descriptors for MethodHandles::classData and classDataAt

2023-03-14 Thread liach
Add Constant Descriptors for DirectMethodHandleDesc of MethodHandles::classData and classDataAt in ConstantDescs. This facilitates easier access of class data via condy in Classfile API-generated bytecode. Most other constant bootstrap methods provided in the JDK, notably from

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v16]

2023-03-14 Thread Martin Doerr
On Tue, 14 Mar 2023 22:30:22 GMT, Martin Doerr wrote: >> Implementation of "Foreign Function & Memory API" for linux on Power (Little >> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". >> >> This PR does not include code for VaList support because it's supposed to

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v16]

2023-03-14 Thread Martin Doerr
On Tue, 14 Mar 2023 22:30:22 GMT, Martin Doerr wrote: >> Implementation of "Foreign Function & Memory API" for linux on Power (Little >> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". >> >> This PR does not include code for VaList support because it's supposed to

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v16]

2023-03-14 Thread Martin Doerr
> Implementation of "Foreign Function & Memory API" for linux on Power (Little > Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". > > This PR does not include code for VaList support because it's supposed to get > removed by

RFR: 8225641: Calendar.roll(int field) does not work correctly for WEEK_OF_YEAR

2023-03-14 Thread Justin Lu
This PR fixes the bug which occurred when `Calendar.roll(WEEK_OF_YEAR)` rolled into a minimal first week with an invalid `WEEK_OF_YEAR` and `DAY_OF_WEEK` combo. For example, Rolling _Monday, 30 December 2019_ by 1 week produced _Monday, 31 December 2018_, which is incorrect. This is because

Re: RFR: 8303018: Unicode Emoji Properties [v2]

2023-03-14 Thread Roger Riggs
On Tue, 14 Mar 2023 15:49:56 GMT, Naoto Sato wrote: >> Proposing accessor methods to Emoji properties defined in [Unicode Technical >> Standard #51](https://unicode.org/reports/tr51/) in `java.lang.Character` >> class. This is per a request from the client group, as well as refining the >>

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v14]

2023-03-14 Thread Martin Doerr
On Mon, 13 Mar 2023 14:31:19 GMT, Jorn Vernee wrote: >> Martin Doerr has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Introduce ABIv2CallArranger for linux ppc64le. > > test/jdk/java/foreign/TestHFA.java line 32: > >> 30: *

Re: RFR: 8303040: linux PPC64le: Implementation of Foreign Function & Memory API (Preview) [v15]

2023-03-14 Thread Martin Doerr
> Implementation of "Foreign Function & Memory API" for linux on Power (Little > Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification". > > This PR does not include code for VaList support because it's supposed to get > removed by

Re: RFR: 8303485: Replacing os.name for operating system customization [v3]

2023-03-14 Thread Eirik Bjorsnos
On Tue, 14 Mar 2023 18:15:46 GMT, Roger Riggs wrote: >> src/java.base/share/classes/jdk/internal/util/OperatingSystem.java line 29: >> >>> 27: >>> 28: /** >>> 29: * Enumeration of operating system types and testing for the current OS. >> >> Would it be more correct to say an enumerating of

Re: RFR: 8304031: Classfile API cannot encode Primitive Class as Condy

2023-03-14 Thread liach
On Tue, 14 Mar 2023 17:32:00 GMT, ExE Boss wrote: > I meant that `instanceof DynamicConstantDesc` would go after concrete classes > (`Integer`, `Long`, `Float`, `Double`, and `String`), but before the  > `ConstantDesc` interfaces. Still not feasible to make ReferenceClassDescImpl to go through

Re: RFR: 8303485: Replacing os.name for operating system customization [v3]

2023-03-14 Thread Roger Riggs
On Tue, 14 Mar 2023 15:04:47 GMT, Alan Bateman wrote: >> Roger Riggs has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Fix indentation and improve exception message > > src/java.base/share/classes/jdk/internal/util/OperatingSystem.java

Re: RFR: 8303485: Replacing os.name for operating system customization [v4]

2023-03-14 Thread Roger Riggs
> Improvements to support OS specific customization for JDK internal use: > - To select values and code; allowing elimination of unused code and values > - Optionally evaluated by build processes, compilation, or archiving (i.e. > CDS) > - Simple API to replace adhoc comparisons with `os.name`

Re: RFR: 8303814: getLastErrorString should avoid charset conversions [v3]

2023-03-14 Thread Daniel Jeliński
On Mon, 13 Mar 2023 15:55:27 GMT, Daniel Jeliński wrote: >> This patch modifies the `getLastErrorString` method to return a `jstring`. >> Thanks to that we can avoid unnecessary back and forth conversions between >> Unicode and other charsets on Windows. >> >> Other changes include: >> - the

Re: RFR: 8303392: Runtime.exec and ProcessBuilder.start should use System logger [v7]

2023-03-14 Thread Roger Riggs
> Runtime.exec and ProcessBuilder.start methods create a new operating system > process with the program and arguments. Many applications configure a logging > subsystem to monitor application events. Logging a process start message with > the program, arguments, and stack trace can identify

Re: RFR: 8294972: Convert jdk.jlink internal plugins to use the Classfile API [v4]

2023-03-14 Thread Mandy Chung
On Tue, 14 Mar 2023 15:22:04 GMT, Adam Sotona wrote: >> src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/StripJavaDebugAttributesPlugin.java >> line 62: >> >>> 60: // XXX. Do we have debug info? Is Asm ready for >>> module-info? >>> 61:

Re: RFR: 8303814: getLastErrorString should avoid charset conversions [v3]

2023-03-14 Thread Julian Waters
On Mon, 13 Mar 2023 15:55:27 GMT, Daniel Jeliński wrote: >> This patch modifies the `getLastErrorString` method to return a `jstring`. >> Thanks to that we can avoid unnecessary back and forth conversions between >> Unicode and other charsets on Windows. >> >> Other changes include: >> - the

Re: RFR: 8303018: Unicode Emoji Properties [v2]

2023-03-14 Thread Eirik Bjorsnos
On Tue, 14 Mar 2023 15:49:56 GMT, Naoto Sato wrote: >> Proposing accessor methods to Emoji properties defined in [Unicode Technical >> Standard #51](https://unicode.org/reports/tr51/) in `java.lang.Character` >> class. This is per a request from the client group, as well as refining the >>

Re: RFR: 8304031: Classfile API cannot encode Primitive Class as Condy

2023-03-14 Thread ExE Boss
On Mon, 13 Mar 2023 08:13:44 GMT, liach wrote: > Without this patch, the Classfile API tries to encode PrimitiveClassDesc as > CONSTANT_Class_info and error in `toInternalName`. I meant that `instanceof DynamicConstantDesc` would go after concrete classes (`Integer`, `Long`, `Float`,

Re: RFR: 8303018: Unicode Emoji Properties [v2]

2023-03-14 Thread Alan Bateman
On Tue, 14 Mar 2023 15:43:13 GMT, Naoto Sato wrote: > Fixed this one as well Spec update looks good. I suppose I have to use an emoji to react to that  - PR: https://git.openjdk.org/jdk/pull/13006

Re: RFR: 8294962: Convert java.base/jdk.internal.module package to use the Classfile API to modify and write module-info.class [v6]

2023-03-14 Thread Alan Bateman
On Tue, 14 Mar 2023 17:10:07 GMT, Mandy Chung wrote: >> Adam Sotona has updated the pull request incrementally with one additional >> commit since the last revision: >> >> fixed formatting > > src/java.base/share/classes/jdk/internal/module/ModuleInfoWriter.java line > 150: > >> 148:

Re: RFR: 8294962: Convert java.base/jdk.internal.module package to use the Classfile API to modify and write module-info.class [v6]

2023-03-14 Thread Mandy Chung
On Tue, 14 Mar 2023 15:47:33 GMT, Adam Sotona wrote: >> 8294962: java.base jdk.internal.module package uses ASM to modify and write >> module-info.class. >> This patch converts it to use Classfile API. >> >> Please review. >> Thanks, >> Adam > > Adam Sotona has updated the pull request

Re: RFR: 8294962: Convert java.base/jdk.internal.module package to use the Classfile API to modify and write module-info.class [v6]

2023-03-14 Thread Mandy Chung
On Tue, 14 Mar 2023 17:17:10 GMT, Alan Bateman wrote: >> src/java.base/share/classes/jdk/internal/module/ModuleInfoWriter.java line >> 150: >> >>> 148: // packages >>> 149: var packages = >>> md.packages().stream().sorted().map(PackageDesc::of).toList(); >>>

Integrated: 8303814: getLastErrorString should avoid charset conversions

2023-03-14 Thread Daniel Jeliński
On Wed, 8 Mar 2023 11:30:27 GMT, Daniel Jeliński wrote: > This patch modifies the `getLastErrorString` method to return a `jstring`. > Thanks to that we can avoid unnecessary back and forth conversions between > Unicode and other charsets on Windows. > > Other changes include: > - the Windows

RFR: 8304161: Add TypeKind.from to derive from TypeDescriptor.OfField

2023-03-14 Thread liach
Such an API allows creating TypeKind from both Class and ClassDesc than having to call descriptorString() explicitly at every use site. See https://mail.openjdk.org/pipermail/classfile-api-dev/2023-March/000240.html for context. Upgraded usages of `fromDescriptor` to `from` in applicable use

Re: RFR: 8294962: Convert java.base/jdk.internal.module package to use the Classfile API to modify and write module-info.class [v6]

2023-03-14 Thread Mandy Chung
On Tue, 14 Mar 2023 15:47:33 GMT, Adam Sotona wrote: >> 8294962: java.base jdk.internal.module package uses ASM to modify and write >> module-info.class. >> This patch converts it to use Classfile API. >> >> Please review. >> Thanks, >> Adam > > Adam Sotona has updated the pull request

Re: RFR: 8303018: Unicode Emoji Properties [v2]

2023-03-14 Thread Eirik Bjorsnos
On Tue, 14 Mar 2023 15:49:56 GMT, Naoto Sato wrote: >> Proposing accessor methods to Emoji properties defined in [Unicode Technical >> Standard #51](https://unicode.org/reports/tr51/) in `java.lang.Character` >> class. This is per a request from the client group, as well as refining the >>

Re: RFR: 8294972: Convert jdk.jlink internal plugins to use the Classfile API [v6]

2023-03-14 Thread liach
On Tue, 14 Mar 2023 15:27:50 GMT, Adam Sotona wrote: >> jdk.jlink internal plugins are heavily using ASM >> >> This patch converts ASM calls to Classfile API. >> >> Please review. >> Thanks, >> Adam > > Adam Sotona has updated the pull request incrementally with three additional > commits

Re: RFR: 8303431: [JVMCI] libgraal annotation API [v6]

2023-03-14 Thread Doug Simon
> This PR extends JVMCI with new API (`jdk.vm.ci.meta.Annotated`) for accessing > annotations. The main differences from `java.lang.reflect.AnnotatedElement` > are: > * Each `Annotated` method explicitly specifies the annotation type(s) for > which it wants annotation data. That is, there is no

Re: RFR: 8304148: Remapping a class with Invokedynamic constant loses static bootstrap arguments

2023-03-14 Thread liach
On Tue, 14 Mar 2023 14:51:34 GMT, Thiago Henrique Hüpner wrote: > 8304148: Remapping a class with Invokedynamic constant loses static bootstrap > arguments Created a JBS issue for you at https://bugs.openjdk.org/browse/JDK-8304148 - PR: https://git.openjdk.org/jdk/pull/13021

RFR: 8304148: Remapping a class with Invokedynamic constant loses static bootstrap arguments

2023-03-14 Thread Thiago Henrique Hüpner
8304148: Remapping a class with Invokedynamic constant loses static bootstrap arguments - Commit messages: - Remove extra new line - Copy static bootstrap arguments Changes: https://git.openjdk.org/jdk/pull/13021/files Webrev: https://webrevs.openjdk.org/?repo=jdk=13021=00

Re: RFR: 8303431: [JVMCI] libgraal annotation API [v5]

2023-03-14 Thread Doug Simon
On Tue, 14 Mar 2023 06:28:20 GMT, Tom Rodriguez wrote: >> Doug Simon has updated the pull request with a new target base due to a >> merge or a rebase. The pull request now contains seven commits: >> >> - Merge remote-tracking branch 'openjdk-jdk/master' into JDK-8303431 >> - switched to use

Re: RFR: 8303018: Unicode Emoji Properties [v2]

2023-03-14 Thread Naoto Sato
On Tue, 14 Mar 2023 08:13:11 GMT, Alan Bateman wrote: >> Naoto Sato has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Fixed method descriptions > > src/java.base/share/classes/java/lang/Character.java line 10803: > >> 10801: /** >>

Re: RFR: 8303018: Unicode Emoji Properties [v2]

2023-03-14 Thread Naoto Sato
> Proposing accessor methods to Emoji properties defined in [Unicode Technical > Standard #51](https://unicode.org/reports/tr51/) in `java.lang.Character` > class. This is per a request from the client group, as well as refining the > currently existing ad-hoc emoji implementation in regex. A

Re: RFR: 8294962: Convert java.base/jdk.internal.module package to use the Classfile API to modify and write module-info.class [v6]

2023-03-14 Thread Adam Sotona
> 8294962: java.base jdk.internal.module package uses ASM to modify and write > module-info.class. > This patch converts it to use Classfile API. > > Please review. > Thanks, > Adam Adam Sotona has updated the pull request incrementally with one additional commit since the last revision:

Re: RFR: 8303392: Runtime.exec and ProcessBuilder.start should use System logger [v6]

2023-03-14 Thread Alan Bateman
On Fri, 10 Mar 2023 21:34:56 GMT, Roger Riggs wrote: >> Runtime.exec and ProcessBuilder.start methods create a new operating system >> process with the program and arguments. Many applications configure a >> logging subsystem to monitor application events. Logging a process start >> message

Re: RFR: 8294972: Convert jdk.jlink internal plugins to use the Classfile API [v4]

2023-03-14 Thread Adam Sotona
On Fri, 10 Mar 2023 22:14:00 GMT, Mandy Chung wrote: >> Adam Sotona has updated the pull request with a new target base due to a >> merge or a rebase. The pull request now contains 208 commits: >> >> - Merge branch 'master' into JDK-8294972-jlink-plugins >> >># Conflicts: >>#

Re: RFR: 8294972: Convert jdk.jlink internal plugins to use the Classfile API [v4]

2023-03-14 Thread Adam Sotona
On Mon, 13 Mar 2023 14:51:08 GMT, Alan Bateman wrote: >> Adam Sotona has updated the pull request with a new target base due to a >> merge or a rebase. The pull request now contains 208 commits: >> >> - Merge branch 'master' into JDK-8294972-jlink-plugins >> >># Conflicts: >>#

Re: RFR: 8294972: Convert jdk.jlink internal plugins to use the Classfile API [v6]

2023-03-14 Thread Adam Sotona
> jdk.jlink internal plugins are heavily using ASM > > This patch converts ASM calls to Classfile API. > > Please review. > Thanks, > Adam Adam Sotona has updated the pull request incrementally with three additional commits since the last revision: - long lines wrapped -

Re: RFR: 8303485: Replacing os.name for operating system customization [v3]

2023-03-14 Thread Alan Bateman
On Tue, 14 Mar 2023 14:14:30 GMT, Roger Riggs wrote: >> Improvements to support OS specific customization for JDK internal use: >> - To select values and code; allowing elimination of unused code and values >> - Optionally evaluated by build processes, compilation, or archiving (i.e. >> CDS)

Re: RFR: 8294962: Convert java.base/jdk.internal.module package to use the Classfile API to modify and write module-info.class [v5]

2023-03-14 Thread Alan Bateman
On Tue, 14 Mar 2023 12:55:38 GMT, Adam Sotona wrote: >> 8294962: java.base jdk.internal.module package uses ASM to modify and write >> module-info.class. >> This patch converts it to use Classfile API. >> >> Please review. >> Thanks, >> Adam > > Adam Sotona has updated the pull request

RFR: 8304139: Add , , and main method constants to ClassDescs

2023-03-14 Thread liach
Add String constants INIT_NAME, CLASS_INIT_NAME, MTD_void for the names and method type of instance and class initializers; add String constant MAIN_NAME and MTD_void_StringArray for the name and method type of main method. Update occurrences of and in core libraries API specification to

Re: RFR: 8303485: Replacing os.name for operating system customization [v3]

2023-03-14 Thread Roger Riggs
> Improvements to support OS specific customization for JDK internal use: > - To select values and code; allowing elimination of unused code and values > - Optionally evaluated by build processes, compilation, or archiving (i.e. > CDS) > - Simple API to replace adhoc comparisons with `os.name`

Re: RFR: 8303392: Runtime.exec and ProcessBuilder.start should use System logger [v6]

2023-03-14 Thread Roger Riggs
On Fri, 10 Mar 2023 21:34:56 GMT, Roger Riggs wrote: >> Runtime.exec and ProcessBuilder.start methods create a new operating system >> process with the program and arguments. Many applications configure a >> logging subsystem to monitor application events. Logging a process start >> message

Re: RFR: 8303018: Unicode Emoji Properties

2023-03-14 Thread Erik Joelsson
On Mon, 13 Mar 2023 21:16:24 GMT, Naoto Sato wrote: > Proposing accessor methods to Emoji properties defined in [Unicode Technical > Standard #51](https://unicode.org/reports/tr51/) in `java.lang.Character` > class. This is per a request from the client group, as well as refining the >

Re: RFR: 8294962: Convert java.base/jdk.internal.module package to use the Classfile API to modify and write module-info.class [v5]

2023-03-14 Thread Adam Sotona
> 8294962: java.base jdk.internal.module package uses ASM to modify and write > module-info.class. > This patch converts it to use Classfile API. > > Please review. > Thanks, > Adam Adam Sotona has updated the pull request incrementally with five additional commits since the last revision: -

Re: RFR: 8302872: Speed up StringLatin1.regionMatchesCI_UTF16 [v2]

2023-03-14 Thread Eirik Bjorsnos
> This PR continues the efforts from #12632 to speed up case-insensitive string > matching. > > We now tackle case-insensitive comparison of mixed-coder strings, implemented > in `StringLatin1.regionMatchesCI_UTF16` > > Key insights: > > - If the UTF16 code point is also in latin1 range, we

Re: RFR: JDK-8302323 Add repeat methods to StringBuilder/StringBuffer [v8]

2023-03-14 Thread Claes Redestad
On Fri, 3 Mar 2023 19:04:22 GMT, Jim Laskey wrote: >> Add the ability to repeatedly append char and CharSequence data to >> StringBuilder/StringBuffer. > > Jim Laskey has updated the pull request incrementally with one additional > commit since the last revision: > > Expand test for

Re: RFR: 8294982: Implementation of Classfile API [v58]

2023-03-14 Thread Glavo
On Wed, 8 Mar 2023 08:50:24 GMT, Adam Sotona wrote: >> This is root pull request with Classfile API implementation, tests and >> benchmarks initial drop into JDK. >> >> Following pull requests consolidating JDK class files parsing, generating, >> and transforming >>

Re: RFR: JDK-8302323 Add repeat methods to StringBuilder/StringBuffer [v8]

2023-03-14 Thread Sergey Tsypanov
On Fri, 3 Mar 2023 19:04:22 GMT, Jim Laskey wrote: >> Add the ability to repeatedly append char and CharSequence data to >> StringBuilder/StringBuffer. > > Jim Laskey has updated the pull request incrementally with one additional > commit since the last revision: > > Expand test for

Integrated: 8303910: jdk/classfile/CorpusTest.java failed 1 of 6754 tests

2023-03-14 Thread Adam Sotona
On Mon, 13 Mar 2023 18:54:11 GMT, Adam Sotona wrote: > jdk/classfile/CorpusTest.java rarely fails in 1 of 6754 parametrised parallel > junit tests > > The root cause seems to be thread-unsafe lazy initialisation of > `TypeKind.newarraycodeToTypeTag` in `TypeKind::fromNewArrayCode`. Provided

Re: RFR: 8304006: jlink should create the jimage file in the native endian for the target platform [v8]

2023-03-14 Thread Alan Bateman
On Mon, 13 Mar 2023 23:07:13 GMT, Mandy Chung wrote: > `Platform::parsePlatform` is the utility method to parse `ModuleTarget`. It > can be updated to include additional architectures. Alternatively, don't parse it. If we go with Jim's suggestion of a resource file then it is just a simple

Re: RFR: 8303018: Unicode Emoji Properties

2023-03-14 Thread Alan Bateman
On Mon, 13 Mar 2023 21:16:24 GMT, Naoto Sato wrote: > Proposing accessor methods to Emoji properties defined in [Unicode Technical > Standard #51](https://unicode.org/reports/tr51/) in `java.lang.Character` > class. This is per a request from the client group, as well as refining the >

Re: String encoding to ByteBuffer

2023-03-14 Thread Alan Bateman
On 13/03/2023 23:16, Brian Burkhalter wrote: Redirecting to nio-dev which is the more appropriate forum for this topic. There have been a couple of explorations into this, one was Richard Warburton's prototype [1]. There are a couple of follow-up threads about this on core-libs-dev and

Re: RFR: 8294977: Convert test/jdk/java tests from ASM library to Classfile API

2023-03-14 Thread Alan Bateman
On Tue, 14 Mar 2023 02:43:41 GMT, liach wrote: > Summaries: > 1. A few recommendations about updating the constant API is made at > https://mail.openjdk.org/pipermail/classfile-api-dev/2023-March/000233.html > and I may update this patch shall the API changes be integrated before > 2. One ASM

Re: RFR: 8303431: [JVMCI] libgraal annotation API [v5]

2023-03-14 Thread Tom Rodriguez
On Wed, 8 Mar 2023 22:59:23 GMT, Doug Simon wrote: >> This PR extends JVMCI with new API (`jdk.vm.ci.meta.Annotated`) for >> accessing annotations. The main differences from >> `java.lang.reflect.AnnotatedElement` are: >> * Each `Annotated` method explicitly specifies the annotation type(s)