]> granicus.if.org Git - clang/commit
[Sema] Fix value-dependent enable_if bug.
authorGeorge Burgess IV <george.burgess.iv@gmail.com>
Wed, 11 May 2016 01:38:27 +0000 (01:38 +0000)
committerGeorge Burgess IV <george.burgess.iv@gmail.com>
Wed, 11 May 2016 01:38:27 +0000 (01:38 +0000)
commitddc91cf1727ad03fcd091578a23c2bcde55b0761
tree2f03d35f021ac9ef7023af4950aac7427f7c4d60
parent946fcec645dfcd423573c6c02d1c61f95855da12
[Sema] Fix value-dependent enable_if bug.

This patch fixes a bug where we would assume all value-dependent
enable_if conditions give successful results.

Instead, we consider value-dependent enable_if conditions to always
fail. While this isn't ideal, this is the best we can realistically do
without changing both enable_if's semantics and large parts of Sema
(specifically, all of the parts that don't expect type dependence to
come out of nowhere, and that may interact with overload resolution).

Differential Revision: http://reviews.llvm.org/D20130

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@269154 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Basic/AttrDocs.td
lib/Sema/SemaOverload.cpp
test/SemaCXX/enable_if.cpp