You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Gregory Shimansky (JIRA)" <ji...@apache.org> on 2007/12/28 14:33:44 UTC

[jira] Closed: (HARMONY-4308) [drlvm][classloader] Test vm/jvms/classFile/structure/accessFlags/accessFlags08/accessFlags08 fails due to incorrect processing of accesss flags in 1.4 class files

     [ https://issues.apache.org/jira/browse/HARMONY-4308?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky closed HARMONY-4308.
--------------------------------------


No response, assuming ok.

> [drlvm][classloader] Test vm/jvms/classFile/structure/accessFlags/accessFlags08/accessFlags08 fails due to incorrect processing of accesss flags in 1.4 class files
> -------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4308
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4308
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Vera Petrashkova
>            Assignee: Gregory Shimansky
>         Attachments: 0001-Fix-Class-parse-method-to-avoid-check-1.5-access-fla.patch
>
>
> According to the test description
>     vm/jvms/classFile/structure/accessFlags/accessFlags08/accessFlags08.xml
>            "Checks that VM loads class with ACC_PUBLIC, ACC_FINAL flags set and all unused
>              (reserved) bits set to 1. Positive test."
> this test uses access flags xF9DF and expects that VM does not throw ClassFormatError because
> 1.4 spec defines the following flags 
>       ACC_PUBLIC = 0x0001 
>       ACC_FINAL = 0x0010 
>       ACC_SUPER = 0x0020 
>       ACC_INTERFACE = 0x0200
>      ACC_ABSTRACT = 0x0400 
> and says that  If the ACC_INTERFACE flag of this class file is not set, it may have any of the other flags. 
> And  all bits of the access_flags item not assigned in spec are reserved for future use. 
> They should be set to zero in generated class files and should be ignored by JVM  implementations.
> But 1.5 spec defines new access flags ACC_ANNOTATION = 0x2000 and ACC_ENUM = 0x4000 and it says
> that if the ACC_ANNOTATION flag is set, the ACC_INTERFACE flag must be set as well.
> As the result this test fails with ClassFormatError: annotation type must be interface
> Used access flags should be fixed according to 1.5 specifications or this test should be removed.
> Tests from accessFlags015, accessFlags18 and accessFlags19 subsuites check the using of ACC_ANNORATION flag.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.