lworld regressions: parameterized q-type

Remi Forax forax at univ-mlv.fr
Thu Jan 3 15:03:57 UTC 2019


Hi al,
parameterized q-type are not erased correctly.

Option.java:
  this class compiles but the Q-type is not erased correctly 
  https://github.com/forax/valuetype-lworld/blob/master/src/main/java/fr.umlv.valuetype/fr/umlv/valuetype/Option.java

java.lang.ClassFormatError: Illegal class name "Qfr/umlv/valuetype/Option<TE;>;" in class file fr/umlv/valuetype/Option
	at java.base/java.lang.ClassLoader.defineClass1(Native Method)
	at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1016)
	at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1095)
	at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:183)
	at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:761)
	at java.base/jdk.internal.loader.BuiltinClassLoader.findClassInModuleOrNull(BuiltinClassLoader.java:682)
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:607)
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
	at fr.umlv.valuetype at 1.0/fr.umlv.valuetype.perf.OptionBenchMark.sum_option(OptionBenchMark.java:64)
	at fr.umlv.valuetype at 1.0/fr.umlv.valuetype.perf.generated.OptionBenchMark_sum_option_jmhTest.sum_option_avgt_jmhStub(OptionBenchMark_sum_option_jmhTest.java:190)

Rémi




More information about the valhalla-dev mailing list