DescriptionGC plugin: remove mixin trace override restriction.
The GC plugin currently insists that a class that is declared as a
mixin instance (i.e., uses USING_GARBAGE_COLLECTED_MIXIN()) must also
declare its own local trace implementation override.
This is an unnecessary restriction to impose:
- if the class derives from one GarbageCollectedMixin<> instance,
it will have its virtual trace method in scope.
- if it inherits from multiple, ambiguity exists and the compiler
will already complain.
- if the class declares traceable members of its own, then not providing
a trace implementation that correctly handles these members will
be otherwise flagged as an error by the GC plugin.
Remove the static check from the plugin, along with adding a unit test
which verifies that the virtual trace is inherited as expected.
R=thakis,haraken
BUG=444565
Committed: https://crrev.com/e5355493a475e7b32931231e0ee51cc0ca0519a7
Cr-Commit-Position: refs/heads/master@{#364001}
Patch Set 1 #Messages
Total messages: 12 (6 generated)
|