Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(339)

Side by Side Diff: tools/clang/blink_gc_plugin/tests/virtual_and_trace_after_dispatch.h

Issue 197863003: Check consistency of manual trace and finalization dispatching. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review comments Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef BASE_REQUIRES_TRACING_H_ 5 #ifndef VIRTUAL_AND_TRACE_AFTER_DISPATCH_H_
6 #define BASE_REQUIRES_TRACING_H_ 6 #define VIRTUAL_AND_TRACE_AFTER_DISPATCH_H_
7 7
8 #include "heap/stubs.h" 8 #include "heap/stubs.h"
9 9
10 namespace WebCore { 10 namespace WebCore {
11 11
12 class A : public GarbageCollected<A> { 12 class A : public GarbageCollected<A> {
13 public: 13 public:
14 virtual void trace(Visitor*); 14 void trace(Visitor*);
15 void traceAfterDispatch(Visitor*);
16 protected:
17 enum Type { TB };
18 A(Type type) : m_type(type) { }
19 private:
20 Type m_type;
15 }; 21 };
16 22
17 class B : public A { 23 class B : public A {
18 // Does not need trace
19 };
20
21 class C : public B {
22 public: 24 public:
23 void trace(Visitor*); 25 B() : A(TB) { }
26 void traceAfterDispatch(Visitor*);
27 virtual void foo() { }
24 private: 28 private:
25 Member<A> m_a; 29 Member<A> m_a;
26 }; 30 };
27
28 class D : public C {
29 public:
30 void trace(Visitor*);
31 private:
32 Member<A> m_a;
33 };
34 31
35 } 32 }
36 33
37 #endif 34 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698