| Index: tools/clang/plugins/tests/virtual_specifiers.cpp
|
| diff --git a/tools/clang/plugins/tests/virtual_specifiers.cpp b/tools/clang/plugins/tests/virtual_specifiers.cpp
|
| deleted file mode 100644
|
| index f566ac4f2a6cd205c493f8446803f7f397d29ab2..0000000000000000000000000000000000000000
|
| --- a/tools/clang/plugins/tests/virtual_specifiers.cpp
|
| +++ /dev/null
|
| @@ -1,132 +0,0 @@
|
| -// Copyright 2014 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.
|
| -//
|
| -// Tests for chromium style checks for virtual/override/final specifiers on
|
| -// virtual methods.
|
| -
|
| -// Note: This is not actual windows.h but the stub file in system/windows.h
|
| -#include <windows.h>
|
| -
|
| -// Purposely use macros to test that the FixIt hints don't try to remove the
|
| -// macro body.
|
| -#define OVERRIDE override
|
| -#define FINAL final
|
| -
|
| -// Base class can only use virtual.
|
| -class Base {
|
| - public:
|
| - virtual ~Base() {}
|
| - virtual void F() = 0;
|
| -};
|
| -
|
| -// Derived classes correctly use only override or final specifier.
|
| -class CorrectOverride : public Base {
|
| - public:
|
| - ~CorrectOverride() OVERRIDE {}
|
| - void F() OVERRIDE {}
|
| -};
|
| -
|
| -class CorrectFinal : public CorrectOverride {
|
| - public:
|
| - ~CorrectFinal() FINAL {}
|
| - void F() FINAL {}
|
| -};
|
| -
|
| -// No override on an overridden method should trigger a diagnostic.
|
| -class MissingOverride : public Base {
|
| - public:
|
| - ~MissingOverride() {}
|
| - void F() {}
|
| -};
|
| -
|
| -// Redundant specifiers should trigger a diagnostic.
|
| -class VirtualAndOverride : public Base {
|
| - public:
|
| - virtual ~VirtualAndOverride() OVERRIDE {}
|
| - virtual void F() OVERRIDE {}
|
| -};
|
| -
|
| -class VirtualAndFinal : public Base {
|
| - public:
|
| - virtual ~VirtualAndFinal() FINAL {}
|
| - virtual void F() FINAL {}
|
| -};
|
| -
|
| -class VirtualAndOverrideFinal : public Base {
|
| - public:
|
| - virtual ~VirtualAndOverrideFinal() OVERRIDE FINAL {}
|
| - virtual void F() OVERRIDE FINAL {}
|
| -};
|
| -
|
| -class OverrideAndFinal : public Base {
|
| - public:
|
| - ~OverrideAndFinal() OVERRIDE FINAL {}
|
| - void F() OVERRIDE FINAL {}
|
| -};
|
| -
|
| -// Also warn on pure functions.
|
| -class CorrectPureVirtual : public Base {
|
| - virtual void F() = 0;
|
| -};
|
| -
|
| -class Pure : public Base {
|
| - void F() = 0;
|
| -};
|
| -
|
| -class PureOverride : public Base {
|
| - void F() override = 0;
|
| -};
|
| -
|
| -class PureVirtualOverride : public Base {
|
| - virtual void F() override = 0;
|
| -};
|
| -
|
| -// Test that the redundant virtual warning is suppressed when the virtual
|
| -// keyword comes from a macro in a system header.
|
| -class COMIsAwesome : public Base {
|
| - STDMETHOD(F)() override = 0;
|
| -};
|
| -
|
| -// Some tests that overrides in the testing namespace
|
| -// don't trigger warnings, except for testing::Test.
|
| -namespace testing {
|
| -
|
| -class Test {
|
| - public:
|
| - virtual ~Test();
|
| - virtual void SetUp();
|
| -};
|
| -
|
| -class NotTest {
|
| - public:
|
| - virtual ~NotTest();
|
| - virtual void SetUp();
|
| -};
|
| -
|
| -} // namespace
|
| -
|
| -class MyTest : public testing::Test {
|
| - public:
|
| - virtual ~MyTest();
|
| - virtual void SetUp() override;
|
| -};
|
| -
|
| -class MyNotTest : public testing::NotTest {
|
| - public:
|
| - virtual ~MyNotTest();
|
| - virtual void SetUp() override;
|
| -};
|
| -
|
| -class MacroBase {
|
| - public:
|
| - virtual void AddRef() = 0;
|
| - virtual void Virtual() {}
|
| -};
|
| -
|
| -class Sub : public MacroBase {
|
| - // Shouldn't warn.
|
| - END_COM_MAP()
|
| - SYSTEM_REDUNDANT1;
|
| - SYSTEM_REDUNDANT2;
|
| -};
|
|
|