[PATCH] D74412: Fix SFINAE in CFG.cpp.
This revision was automatically updated to reflect the committed changes. Closed by commit rGf0fd852fcd05: Fix SFINAE in CFG.cpp. (authored by jlebar). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D74412/new/ https://reviews.llvm.org/D74412 Files: clang/lib/Analysis/CFG.cpp Index: clang/lib/Analysis/CFG.cpp === --- clang/lib/Analysis/CFG.cpp +++ clang/lib/Analysis/CFG.cpp @@ -720,10 +720,10 @@ // These sorts of call expressions don't have a common superclass, // hence strict duck-typing. template ::value || -std::is_same::value || -std::is_same::value>> +typename = std::enable_if_t< +std::is_base_of::value || +std::is_base_of::value || +std::is_base_of::value>> void findConstructionContextsForArguments(CallLikeExpr *E) { for (unsigned i = 0, e = E->getNumArgs(); i != e; ++i) { Expr *Arg = E->getArg(i); Index: clang/lib/Analysis/CFG.cpp === --- clang/lib/Analysis/CFG.cpp +++ clang/lib/Analysis/CFG.cpp @@ -720,10 +720,10 @@ // These sorts of call expressions don't have a common superclass, // hence strict duck-typing. template ::value || -std::is_same::value || -std::is_same::value>> +typename = std::enable_if_t< +std::is_base_of::value || +std::is_base_of::value || +std::is_base_of::value>> void findConstructionContextsForArguments(CallLikeExpr *E) { for (unsigned i = 0, e = E->getNumArgs(); i != e; ++i) { Expr *Arg = E->getArg(i); ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D74412: Fix SFINAE in CFG.cpp.
bkramer accepted this revision. bkramer added a comment. This revision is now accepted and ready to land. lg Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D74412/new/ https://reviews.llvm.org/D74412 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D74412: Fix SFINAE in CFG.cpp.
jlebar updated this revision to Diff 243877. jlebar added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D74412/new/ https://reviews.llvm.org/D74412 Files: clang/lib/Analysis/CFG.cpp Index: clang/lib/Analysis/CFG.cpp === --- clang/lib/Analysis/CFG.cpp +++ clang/lib/Analysis/CFG.cpp @@ -720,10 +720,10 @@ // These sorts of call expressions don't have a common superclass, // hence strict duck-typing. template ::value || -std::is_same::value || -std::is_same::value>> +typename = std::enable_if_t< +std::is_base_of::value || +std::is_base_of::value || +std::is_base_of::value>> void findConstructionContextsForArguments(CallLikeExpr *E) { for (unsigned i = 0, e = E->getNumArgs(); i != e; ++i) { Expr *Arg = E->getArg(i); Index: clang/lib/Analysis/CFG.cpp === --- clang/lib/Analysis/CFG.cpp +++ clang/lib/Analysis/CFG.cpp @@ -720,10 +720,10 @@ // These sorts of call expressions don't have a common superclass, // hence strict duck-typing. template ::value || -std::is_same::value || -std::is_same::value>> +typename = std::enable_if_t< +std::is_base_of::value || +std::is_base_of::value || +std::is_base_of::value>> void findConstructionContextsForArguments(CallLikeExpr *E) { for (unsigned i = 0, e = E->getNumArgs(); i != e; ++i) { Expr *Arg = E->getArg(i); ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D74412: Fix SFINAE in CFG.cpp.
jlebar created this revision. jlebar added reviewers: bkramer, MaskRay. Herald added subscribers: cfe-commits, martong. Herald added a project: clang. jlebar updated this revision to Diff 243877. jlebar added a comment. Rebase Used std::enable_if without ::type. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D74412 Files: clang/lib/Analysis/CFG.cpp Index: clang/lib/Analysis/CFG.cpp === --- clang/lib/Analysis/CFG.cpp +++ clang/lib/Analysis/CFG.cpp @@ -720,10 +720,10 @@ // These sorts of call expressions don't have a common superclass, // hence strict duck-typing. template ::value || -std::is_same::value || -std::is_same::value>> +typename = std::enable_if_t< +std::is_base_of::value || +std::is_base_of::value || +std::is_base_of::value>> void findConstructionContextsForArguments(CallLikeExpr *E) { for (unsigned i = 0, e = E->getNumArgs(); i != e; ++i) { Expr *Arg = E->getArg(i); Index: clang/lib/Analysis/CFG.cpp === --- clang/lib/Analysis/CFG.cpp +++ clang/lib/Analysis/CFG.cpp @@ -720,10 +720,10 @@ // These sorts of call expressions don't have a common superclass, // hence strict duck-typing. template ::value || -std::is_same::value || -std::is_same::value>> +typename = std::enable_if_t< +std::is_base_of::value || +std::is_base_of::value || +std::is_base_of::value>> void findConstructionContextsForArguments(CallLikeExpr *E) { for (unsigned i = 0, e = E->getNumArgs(); i != e; ++i) { Expr *Arg = E->getArg(i); ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits