[llvm-branch-commits] [cfe-branch] r311194 - Merging r311115:

Hans Wennborg via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Fri Aug 18 13:28:07 PDT 2017


Author: hans
Date: Fri Aug 18 13:28:06 2017
New Revision: 311194

URL: http://llvm.org/viewvc/llvm-project?rev=311194&view=rev
Log:
Merging r311115:
------------------------------------------------------------------------
r311115 | rsmith | 2017-08-17 12:35:50 -0700 (Thu, 17 Aug 2017) | 2 lines

PR34161: support evaluation of 'void()' expressions in C++14 onwards.

------------------------------------------------------------------------

Modified:
    cfe/branches/release_50/   (props changed)
    cfe/branches/release_50/lib/AST/ExprConstant.cpp
    cfe/branches/release_50/test/SemaCXX/constant-expression-cxx1y.cpp

Propchange: cfe/branches/release_50/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Aug 18 13:28:06 2017
@@ -1,4 +1,4 @@
 /cfe/branches/type-system-rewrite:134693-134817
-/cfe/trunk:308455,308722,308824,308897,308996,309054,309058,309112-309113,309226,309263,309327,309382-309383,309488,309503,309523,309569,309607,309633,309636,309640,309722,309752,309975,310006,310158,310191,310359,310516,310672,310691-310692,310694,310700,310704,310706,310776,310804,310829
+/cfe/trunk:308455,308722,308824,308897,308996,309054,309058,309112-309113,309226,309263,309327,309382-309383,309488,309503,309523,309569,309607,309633,309636,309640,309722,309752,309975,310006,310158,310191,310359,310516,310672,310691-310692,310694,310700,310704,310706,310776,310804,310829,311115
 /cfe/trunk/test:170344
 /cfe/trunk/test/SemaTemplate:126920

Modified: cfe/branches/release_50/lib/AST/ExprConstant.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_50/lib/AST/ExprConstant.cpp?rev=311194&r1=311193&r2=311194&view=diff
==============================================================================
--- cfe/branches/release_50/lib/AST/ExprConstant.cpp (original)
+++ cfe/branches/release_50/lib/AST/ExprConstant.cpp Fri Aug 18 13:28:06 2017
@@ -9788,6 +9788,8 @@ public:
 
   bool Success(const APValue &V, const Expr *e) { return true; }
 
+  bool ZeroInitialization(const Expr *E) { return true; }
+
   bool VisitCastExpr(const CastExpr *E) {
     switch (E->getCastKind()) {
     default:

Modified: cfe/branches/release_50/test/SemaCXX/constant-expression-cxx1y.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/branches/release_50/test/SemaCXX/constant-expression-cxx1y.cpp?rev=311194&r1=311193&r2=311194&view=diff
==============================================================================
--- cfe/branches/release_50/test/SemaCXX/constant-expression-cxx1y.cpp (original)
+++ cfe/branches/release_50/test/SemaCXX/constant-expression-cxx1y.cpp Fri Aug 18 13:28:06 2017
@@ -982,3 +982,9 @@ constexpr void PR28739(int n) { // expec
   int *p = &n;
   p += (__int128)(unsigned long)-1; // expected-note {{cannot refer to element 18446744073709551615 of non-array object in a constant expression}}
 }
+
+constexpr void Void(int n) {
+  void(n + 1);
+  void();
+}
+constexpr int void_test = (Void(0), 1);




More information about the llvm-branch-commits mailing list