summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/cxx0x-defaulted-functions.cpp
diff options
context:
space:
mode:
authorVassil Vassilev <v.g.vassilev@gmail.com>2016-05-18 15:14:46 +0000
committerVassil Vassilev <v.g.vassilev@gmail.com>2016-05-18 15:14:46 +0000
commit2ee10e6dc6191a73a317f1d2f3692c1d17c3ab9d (patch)
tree39f0152d047907fbc86bc1aed17b4c8ac5fba0e9 /clang/test/SemaCXX/cxx0x-defaulted-functions.cpp
parente0026e4e21919300472f01e0d90af435d2c673ee (diff)
downloadbcm5719-llvm-2ee10e6dc6191a73a317f1d2f3692c1d17c3ab9d.tar.gz
bcm5719-llvm-2ee10e6dc6191a73a317f1d2f3692c1d17c3ab9d.zip
Teach Sema::MergeFunctionDecl to properly check for an out-of-line definition of a function that is declared as =default in its class definition.
First part of PR27699. Patch by Cristina Cristescu! Reviewed by Richard Smith and me. llvm-svn: 269935
Diffstat (limited to 'clang/test/SemaCXX/cxx0x-defaulted-functions.cpp')
-rw-r--r--clang/test/SemaCXX/cxx0x-defaulted-functions.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/cxx0x-defaulted-functions.cpp b/clang/test/SemaCXX/cxx0x-defaulted-functions.cpp
index 617a2571631..2aaf6197b64 100644
--- a/clang/test/SemaCXX/cxx0x-defaulted-functions.cpp
+++ b/clang/test/SemaCXX/cxx0x-defaulted-functions.cpp
@@ -150,6 +150,14 @@ namespace PR13527 {
Y::~Y() = default; // expected-error {{definition of explicitly defaulted}}
}
+namespace PR27699 {
+ struct X {
+ X();
+ };
+ X::X() = default; // expected-note {{here}}
+ X::X() = default; // expected-error {{redefinition of 'X'}}
+}
+
namespace PR14577 {
template<typename T>
struct Outer {
OpenPOWER on IntegriCloud