Index: tools/clang/blink_gc_plugin/tests/traceimpl_error.h |
diff --git a/tools/clang/blink_gc_plugin/tests/traceimpl_error.h b/tools/clang/blink_gc_plugin/tests/traceimpl_error.h |
index 725c61c4ad325126472a1bd01a39089f9a0ee055..5a883b4e56261467156cab1c1520e224eb9d5398 100644 |
--- a/tools/clang/blink_gc_plugin/tests/traceimpl_error.h |
+++ b/tools/clang/blink_gc_plugin/tests/traceimpl_error.h |
@@ -28,7 +28,6 @@ class TraceImplInlinedWithUntracedMember |
Member<X> x_; |
}; |
- |
class TraceImplExternWithUntracedMember |
: public GarbageCollected<TraceImplExternWithUntracedMember> { |
public: |
@@ -41,6 +40,29 @@ class TraceImplExternWithUntracedMember |
Member<X> x_; |
}; |
+class Base : public GarbageCollected<Base> { |
+ public: |
+ virtual void trace(Visitor*) {} |
+}; |
+ |
+class TraceImplInlineWithUntracedBase : public Base { |
+ public: |
+ void trace(Visitor* visitor) override { traceImpl(visitor); } |
+ |
+ template <typename VisitorDispatcher> |
+ void traceImpl(VisitorDispatcher visitor) { |
+ // Empty; should get complaints from the plugin for untraced Base. |
+ } |
+}; |
+ |
+class TraceImplExternWithUntracedBase : public Base { |
+ public: |
+ void trace(Visitor*) override; |
+ |
+ template <typename VisitorDispatcher> |
+ void traceImpl(VisitorDispatcher visitor); |
+}; |
+ |
} |
#endif // TRACEIMPL_ERROR_H_ |