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
3 // found in the LICENSE file.
5 #ifndef CYCLE_SUPER_NEG_H_
6 #define CYCLE_SUPER_NEG_H_
8 #include "heap/stubs.h"
15 // C -per-> B -sup-> A -sub-> D -ref-> C
16 // is not a leaking cycle, because the super-class relationship
17 // should not transitively imply sub-class relationships.
20 class A
: public GarbageCollectedFinalized
<A
> {
22 virtual void trace(Visitor
*) {}
27 virtual void trace(Visitor
*);
30 class C
: public RefCounted
<C
> {
37 virtual void trace(Visitor
*);