• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2013 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.
4 
5 #include "scoped_refptr.h"
6 
7 struct Foo {
8   int dummy;
9 };
10 
11 struct Bar : public Foo {
12   int another_dummy;
13 };
14 
15 // Ensure that scoped_refptr<A> -> scoped_refptr<B> conversions are not
16 // converted.
ExpectsScopedPtr(const scoped_refptr<Foo> & foo)17 void ExpectsScopedPtr(const scoped_refptr<Foo>& foo) {
18   scoped_refptr<Foo> temp(foo);
19 }
20 
CallExpectsScopedPtrWithBar()21 void CallExpectsScopedPtrWithBar() {
22   scoped_refptr<Bar> temp(new Bar);
23   ExpectsScopedPtr(temp);
24 }
25