The reason for the revert was that the assertion was triggered by a bunch of tests. It looks like we diagnose the errors later? I'm not sure yet.
On Thu, Oct 25, 2018 at 4:52 PM Eric Fiselier <e...@efcs.ca> wrote: > Ack. My bad. > > On Thu, Oct 25, 2018 at 4:02 PM Richard Smith <rich...@metafoo.co.uk> > wrote: > >> When reverting (even when reverting your own commit), please include in >> the commit description a reason for the revert. >> >> On Thu, 25 Oct 2018 at 12:52, Eric Fiselier via cfe-commits < >> cfe-commits@lists.llvm.org> wrote: >> >>> Author: ericwf >>> Date: Thu Oct 25 12:50:43 2018 >>> New Revision: 345306 >>> >>> URL: http://llvm.org/viewvc/llvm-project?rev=345306&view=rev >>> Log: >>> Revert "[SemaCXX] Unconfuse Clang when std::align_val_t is unscoped in >>> C++03" >>> >>> This reverts commit b5d8d0de744d2c212bdb17d5c5fd4447dd14dbd2. >>> >>> Removed: >>> cfe/trunk/test/SemaCXX/cxx03-aligned-allocation-unscoped-enum.cpp >>> Modified: >>> cfe/trunk/lib/Sema/SemaExprCXX.cpp >>> >>> Modified: cfe/trunk/lib/Sema/SemaExprCXX.cpp >>> URL: >>> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaExprCXX.cpp?rev=345306&r1=345305&r2=345306&view=diff >>> >>> ============================================================================== >>> --- cfe/trunk/lib/Sema/SemaExprCXX.cpp (original) >>> +++ cfe/trunk/lib/Sema/SemaExprCXX.cpp Thu Oct 25 12:50:43 2018 >>> @@ -1515,11 +1515,8 @@ namespace { >>> if (FD->getNumParams() == NumBaseParams + 2) >>> HasAlignValT = HasSizeT = true; >>> else if (FD->getNumParams() == NumBaseParams + 1) { >>> - QualType ParamTy = FD->getParamDecl(NumBaseParams)->getType(); >>> - HasAlignValT = ParamTy->isAlignValT(); >>> - HasSizeT = !HasAlignValT; >>> - assert((HasAlignValT || ParamTy->isIntegerType()) && >>> - "Candidate is not regular dealloc function"); >>> + HasSizeT = >>> FD->getParamDecl(NumBaseParams)->getType()->isIntegerType(); >>> + HasAlignValT = !HasSizeT; >>> } >>> >>> // In CUDA, determine how much we'd like / dislike to call this. >>> >>> Removed: >>> cfe/trunk/test/SemaCXX/cxx03-aligned-allocation-unscoped-enum.cpp >>> URL: >>> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/cxx03-aligned-allocation-unscoped-enum.cpp?rev=345305&view=auto >>> >>> ============================================================================== >>> --- cfe/trunk/test/SemaCXX/cxx03-aligned-allocation-unscoped-enum.cpp >>> (original) >>> +++ cfe/trunk/test/SemaCXX/cxx03-aligned-allocation-unscoped-enum.cpp >>> (removed) >>> @@ -1,21 +0,0 @@ >>> -// RUN: %clang_cc1 -std=c++03 -triple x86_64-pc-linux-gnu %s \ >>> -// RUN: -faligned-allocation -emit-llvm -o - | FileCheck %s >>> - >>> -// Ensure Clang doesn't confuse std::align_val_t with the sized >>> deallocation >>> -// parameter when the enum type is unscoped. Libc++ does this in C++03 >>> in order >>> -// to support aligned allocation in that dialect. >>> - >>> -using size_t = __decltype(sizeof(0)); >>> - >>> -namespace std { >>> -enum align_val_t { zero = size_t(0), >>> - max = size_t(-1) }; >>> -} >>> - >>> -// CHECK-LABEL: define void @_Z1fPi( >>> -void f(int *p) { >>> - // CHECK-NOT: call void @_ZdlPvSt11align_val_t( >>> - // CHECK: call void @_ZdlPv( >>> - // CHECK: ret void >>> - delete p; >>> -} >>> >>> >>> _______________________________________________ >>> cfe-commits mailing list >>> cfe-commits@lists.llvm.org >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits >>> >>
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits