From fa9de26518adaeb2e8d8a852c424403d84c33f53 Mon Sep 17 00:00:00 2001 From: Anders Carlsson Date: Sun, 17 Oct 2010 22:47:44 +0000 Subject: [PATCH] Add test for [dcl.attr.final]p4. llvm-svn: 116691 --- .../CXX/dcl.dcl/dcl.attr/dcl.attr.final/p4.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.final/p4.cpp diff --git a/clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.final/p4.cpp b/clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.final/p4.cpp new file mode 100644 index 000000000000..cac362409a88 --- /dev/null +++ b/clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.final/p4.cpp @@ -0,0 +1,15 @@ +// RUN: %clang_cc1 -std=c++0x -fsyntax-only -verify %s + +struct B1 { + [[final]] virtual void f(); // expected-note {{overridden virtual function is here}} +}; + +struct D1 : B1 { + void f(); // expected-error {{declaration of 'f' overrides a 'final' function}} +}; + +struct [[final]] B2 { // expected-note {{'B2' declared here}} +}; + +struct D2 : B2 { // expected-error {{derivation from 'final' struct B2}} +};