92 Star 502 Fork 187

GVPopenEuler / bishengjdk-8

 / 详情

Bisheng JDK-8验证阶段跳过了一个特殊情况

待办的
任务
创建于  
2024-03-14 12:53

环境信息

openjdk version "1.8.0_392"
OpenJDK Runtime Environment BiSheng (build 1.8.0_392-b12)
OpenJDK 64-Bit Server VM BiSheng (build 25.392-b12, mixed mode)

openjdk version "11.0.21" 2023-10-17
OpenJDK Runtime Environment BiSheng (build 11.0.21+12)
OpenJDK 64-Bit Server VM BiSheng (build 11.0.21+12, mixed mode)

openjdk version "17.0.9" 2023-10-17
OpenJDK Runtime Environment BiSheng (build 17.0.9+12)
OpenJDK 64-Bit Server VM BiSheng (build 17.0.9+12, mixed mode, sharing)

在验证阶段,测试用例中的第三个lambda函数lambda$static$3()的字节码174: areturn会触发java.lang.VerifyError: Bad return type,但是只有Bisheng JDK-11和17能够正常抛出VerifyError,而Bisheng JDK-8不报告任何信息。

测试程序:https://ningmo.oss-cn-beijing.aliyuncs.com/img/202402261531.zip

执行方式:java-8/bin/java lambdasinaction.chap8.FactoryMain

评论 (2)

javatailor 创建了任务

Hi javatailor, welcome to the openEuler Community.
I'm the Bot here serving you. You can find the instructions on how to interact with me at Here.
If you have any questions, please contact the SIG: Compiler, and any of the maintainers: @Noah , @eastb233 , @guoge , @cf-zhao , @jiangfeilong , @编译小伙 , @周磊 , @wangyadong , @stubCode , @jianhai_feng , @kuen

openeuler-ci-bot 添加了
 
sig/Compiler
标签
javatailor 修改了描述

个人理解,JVM对.class文件执行验证过程,JDK8验证步骤相对宽松;
*.class 如果用jdk11/17的javac或其他方法编译出的class后,用java11/17运行测试过吗?谢谢~

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(3)
5329419 openeuler ci bot 1632792936 8099221 kuenking111 1666658674
Java
1
https://gitee.com/openeuler/bishengjdk-8.git
git@gitee.com:openeuler/bishengjdk-8.git
openeuler
bishengjdk-8
bishengjdk-8

搜索帮助