On Wed, 23 Sep 2020 02:40:31 GMT, David Holmes <dhol...@openjdk.org> wrote:
>> Robbin Ehn has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Update after Coleen > > src/hotspot/share/runtime/handshake.hpp line 45: > >> 43: // a single target/direct handshake or not, by the JavaThread that >> requested the >> 44: // handshake or the VMThread respectively. >> 45: class HandshakeClosure : public ThreadClosure, public CHeapObj<mtThread> >> { > > Is use of multiple inheritance allowed within hotspot code? There is other 'sane' way to 'implement an interface' and being heap allocated. We have a few like: class DefaultICProtectionBehaviour: public CompiledICProtectionBehaviour, public CHeapObj<mtInternal> class AOTCompiledMethod : public CompiledMethod, public CHeapObj<mtCode> template <MEMFLAGS F> class TaskQueueSetSuperImpl: public CHeapObj<F>, public TaskQueueSetSuper So the 'rule' about multiple inheritance is in conflict with not using new/delete operator without using CHeapObj. ------------- PR: https://git.openjdk.java.net/jdk/pull/151