[cfe-commits] r166162 - in /cfe/trunk: lib/Sema/SemaInit.cpp test/CXX/dcl.decl/dcl.init/p7.cpp

Richard Smith richard-llvm at metafoo.co.uk
Wed Oct 17 17:44:17 PDT 2012


Author: rsmith
Date: Wed Oct 17 19:44:17 2012
New Revision: 166162

URL: http://llvm.org/viewvc/llvm-project?rev=166162&view=rev
Log:
Tests for DR1507.

Added:
    cfe/trunk/test/CXX/dcl.decl/dcl.init/p7.cpp
Modified:
    cfe/trunk/lib/Sema/SemaInit.cpp

Modified: cfe/trunk/lib/Sema/SemaInit.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaInit.cpp?rev=166162&r1=166161&r2=166162&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaInit.cpp (original)
+++ cfe/trunk/lib/Sema/SemaInit.cpp Wed Oct 17 19:44:17 2012
@@ -3611,7 +3611,8 @@
       //    user-provided or deleted default constructor, then the object is
       //    zero-initialized and, if T has a non-trivial default constructor,
       //    default-initialized;
-      // The 'non-union' here was removed by DR1502.
+      // The 'non-union' here was removed by DR1502. The 'non-trivial default
+      // constructor' part was removed by DR1507.
       if (NeedZeroInitialization)
         Sequence.AddZeroInitializationStep(Entity.getType());
 

Added: cfe/trunk/test/CXX/dcl.decl/dcl.init/p7.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CXX/dcl.decl/dcl.init/p7.cpp?rev=166162&view=auto
==============================================================================
--- cfe/trunk/test/CXX/dcl.decl/dcl.init/p7.cpp (added)
+++ cfe/trunk/test/CXX/dcl.decl/dcl.init/p7.cpp Wed Oct 17 19:44:17 2012
@@ -0,0 +1,14 @@
+// RUN: %clang_cc1 -std=c++11 -verify %s
+
+struct NotAggregateBase {};
+
+struct A : NotAggregateBase {
+private:
+  A() = default; // expected-note {{here}}
+};
+A a = {}; // expected-error {{calling a private constructor}}
+
+struct B : NotAggregateBase {
+  explicit B() = default; // expected-note {{here}}
+};
+B b = {}; // expected-error {{chosen constructor is explicit}}





More information about the cfe-commits mailing list