The JVM TI heap functions (FollowReferences et. al.) invoke a callback for references from a Class object to its signers (array) when the Class has signers. This is carry over from the legacy JVMPI API and JVMPI_GC_CLASS_DUMP record, and maybe necessary at the time because the reference to the signers was maintained in the VM rather than as an explicit field in java.lang.Class.
JDK-8334772 has moved signers from injected field to an explicit field. JVMTI agents using the heap functions will now get a callback for the reference from a class object to its signers array (with ref kind JVMTI_HEAP_REFERENCE_FIELD).
It's time to drop invoking a callback with ref kind JVMTI_HEAP_REFERENCE_SIGNERS. This should only require some small updates to the JVMTI spec. Note that the JVMTI_HEAP_REFERENCE_SIGNERS field needs to be maintained for source compatibility reasons, it's just that a callback will never be invoked with this ref kind.