// Copyright (c) 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "scoped_refptr.h"

struct Foo {
  int dummy;
};

struct Bar : public Foo {
  int another_dummy;
};

// Ensure that the correct cast (the user-defined cast) is converted.
void ExpectsRawFooPtr(Foo* foo) {
  Foo* temp = foo;
}

void CallExpectsRawFooPtrWithBar() {
  scoped_refptr<Bar> temp(new Bar);
  ExpectsRawFooPtr(temp);
}