JEP 306 - always strictfp semantics
"Remi Forax" (via asm Mailing List) <[email protected]> Fri, 7 May 2021 12:14:01 +0200 (CEST)
| Newsgroups | gmane.comp.java.objectweb.asm |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format... ------------=_1620382812-6117-10 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi all, the JEP 306 [1, 2] will be soon integrated into the jdk 17. This JEP proposes - to add a warning if the strictfp modifier is used in the language - to not generate ACC_STRICT in classfiles anymore if source >=3D jdk 17 (m= ajor_version >=3D 61) - to retire retire the ACC_STRICT modifier in the VM, so the VM will ignore= that flag. The idea is in the future to reuse the bit corresponding to ACC_STRICT for = another usage, so in the future, the semantics of that bit will changed so visitors will n= eed to be updated. The question is how we reflect that in ASM, - deprecating ACC_STRICT seems brutal because if version < V_17, it's a val= id flag. - do nothing, after all the VM will ignore this flag seems dangerous becaus= e at some point ACC_STRICT will mean something different. - throw an exception in CheckClassVisitor if version >=3D V_17 and ACC_STRI= CT is used on method (it can not be used anywhere else), i fear that it may= be not enough. - rejecting ACC_STRICT if version >=3D V_17 in the ClassWriter, this seems = too strong. - silently strip ACC_STRICT if version >=3D V_17 in the ClassWriter as java= c does, this seems sneaky. so here are the options, what do you thing ? R=C3=A9mi [1] https://openjdk.java.net/jeps/306 [2] https://bugs.openjdk.java.net/browse/JDK-8266524 ------------=_1620382812-6117-10 Content-Type: text/plain; charset="UTF-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit -- You receive this message as a subscriber of the [email protected] mailing list. To unsubscribe: mailto:[email protected] For general help: mailto:[email protected]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws ------------=_1620382812-6117-10--