In file included from non_virtual_trace.cpp:5: ./non_virtual_trace.h:12:1: warning: [blink-gc] Left-most base class 'A' of derived class 'D' must define a virtual trace method. class A : public GarbageCollected { ^ non_virtual_trace.cpp:11:1: warning: [blink-gc] Class 'C' overrides non-virtual trace of base class 'A'. void C::Trace(Visitor* visitor) const { ^ ./non_virtual_trace.h:14:2: note: [blink-gc] Non-virtual trace method declared here: void Trace(Visitor*) const; ^ non_virtual_trace.cpp:15:1: warning: [blink-gc] Class 'D' overrides non-virtual trace of base class 'A'. void D::Trace(Visitor* visitor) const { ^ ./non_virtual_trace.h:14:2: note: [blink-gc] Non-virtual trace method declared here: void Trace(Visitor*) const; ^ 3 warnings generated.