While adding a similar class as StarTask for tagging LSBs of elements in task queue called G1TaskQueueEntry in JDK-8168467, we noticed several code quality related issues.
- need for a define to suppress MSVC warnings due to two assignment operator overloads (still pending discussion)
- copy-assign w/o copy-construct (which is often considered a bad smell)
- implicit conversions from oop/narrowoop using the constructors
Look into fixing this and potentially also trying to reuse code for both in some way.