diff options
Diffstat (limited to 'third_party/libwebrtc/tools/clang/plugins/tests/base_refcounted.cpp')
-rw-r--r-- | third_party/libwebrtc/tools/clang/plugins/tests/base_refcounted.cpp | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/third_party/libwebrtc/tools/clang/plugins/tests/base_refcounted.cpp b/third_party/libwebrtc/tools/clang/plugins/tests/base_refcounted.cpp deleted file mode 100644 index 364a3e888c..0000000000 --- a/third_party/libwebrtc/tools/clang/plugins/tests/base_refcounted.cpp +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (c) 2012 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 "base_refcounted.h" - -#include <cstddef> - -namespace { - -// Unsafe; should error. -class AnonymousDerivedProtectedToPublicInImpl - : public ProtectedRefCountedDtorInHeader { - public: - AnonymousDerivedProtectedToPublicInImpl() {} - ~AnonymousDerivedProtectedToPublicInImpl() {} -}; - -} // namespace - -// Unsafe; should error. -class PublicRefCountedDtorInImpl - : public base::RefCounted<PublicRefCountedDtorInImpl> { - public: - PublicRefCountedDtorInImpl() {} - ~PublicRefCountedDtorInImpl() {} - - private: - friend class base::RefCounted<PublicRefCountedDtorInImpl>; -}; - -class Foo { - public: - class BarInterface { - protected: - virtual ~BarInterface() {} - }; - - typedef base::RefCounted<BarInterface> RefCountedBar; - typedef RefCountedBar AnotherTypedef; -}; - -class Baz { - public: - typedef typename Foo::AnotherTypedef MyLocalTypedef; -}; - -// Unsafe; should error. -class UnsafeTypedefChainInImpl : public Baz::MyLocalTypedef { - public: - UnsafeTypedefChainInImpl() {} - ~UnsafeTypedefChainInImpl() {} -}; - -int main() { - PublicRefCountedDtorInHeader bad; - PublicRefCountedDtorInImpl also_bad; - - ProtectedRefCountedDtorInHeader* protected_ok = NULL; - PrivateRefCountedDtorInHeader* private_ok = NULL; - - DerivedProtectedToPublicInHeader still_bad; - PublicRefCountedThreadSafeDtorInHeader another_bad_variation; - AnonymousDerivedProtectedToPublicInImpl and_this_is_bad_too; - ImplicitDerivedProtectedToPublicInHeader bad_yet_again; - UnsafeTypedefChainInImpl and_again_this_is_bad; - - WebKitPublicDtorInHeader ignored; - WebKitDerivedPublicDtorInHeader still_ignored; - - return 0; -} |