2011-10-14 06:29:44 +08:00
|
|
|
// RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s
|
2012-10-19 20:44:48 +08:00
|
|
|
// expected-no-diagnostics
|
2011-01-20 13:55:43 +08:00
|
|
|
|
|
|
|
struct Base {
|
|
|
|
virtual void override();
|
|
|
|
};
|
|
|
|
|
|
|
|
struct S : Base {
|
2011-01-17 07:56:42 +08:00
|
|
|
virtual void final() final;
|
|
|
|
virtual void override() override;
|
2011-01-20 11:41:12 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
struct T {
|
|
|
|
// virt-specifier-seq is only valid in member-declarators, and a function definition is not a member-declarator.
|
2011-01-20 13:55:43 +08:00
|
|
|
// FIXME: This currently doesn't work.
|
|
|
|
// virtual void f() const override { }
|
2011-01-17 07:56:42 +08:00
|
|
|
};
|
2011-01-20 12:07:46 +08:00
|
|
|
|
|
|
|
struct override;
|
2011-01-20 13:55:43 +08:00
|
|
|
struct Base2 {
|
|
|
|
virtual override override(int override);
|
|
|
|
};
|
|
|
|
|
|
|
|
struct A : Base2 {
|
|
|
|
virtual struct override override(int override) override;
|
2011-01-20 12:07:46 +08:00
|
|
|
};
|