Method annotations are incorrectly set when redefining classes

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: P4
    • hs23
    • Affects Version/s: hs21
    • Component/s: hotspot
    • None
    • b13
    • generic
    • generic
    • Verified

        The following methods all set _methods_annotations:
        void set_method_annotations_of(int idnum, typeArrayOop anno)
          { set_methods_annotations_of(idnum, anno, &_methods_annotations); }
        void set_method_parameter_annotations_of(int idnum, typeArrayOop anno)
          { set_methods_annotations_of(idnum, anno, &_methods_annotations); }
        void set_method_default_annotations_of(int idnum, typeArrayOop anno)
          { set_methods_annotations_of(idnum, anno, &_methods_annotations); }

        the last two setters should use the annotations matching the setter name.

        The corresponding getters:
        typeArrayOop get_method_annotations_of(int idnum)
          { return get_method_annotations_from(idnum, _methods_annotations); }
        typeArrayOop get_method_parameter_annotations_of(int idnum)
          { return get_method_annotations_from(idnum, _methods_parameter_annotations); }
        typeArrayMDOop get_method_default_annotations_of(int idnum)
          { return get_method_annotations_from(idnum, _methods_default_annotations); }

        The setters are only used by jvmtiRedefineClasses.cpp.

              Assignee:
              Stefan Karlsson
              Reporter:
              Stefan Karlsson
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved:
                Imported:
                Indexed: