From e8e9dd624c88a05cf0dee727d5555464e6833902 Mon Sep 17 00:00:00 2001 From: Douglas Gregor Date: Mon, 3 Jan 2011 17:17:50 +0000 Subject: Implement support for pack expansions whose pattern is a non-type template argument (described by an expression, of course). For example: template struct int_tuple { }; template struct square { typedef int_tuple<(Values*Values)...> type; }; It also lays the foundation for pack expansions in an initializer-list. llvm-svn: 122751 --- clang/lib/StaticAnalyzer/Checkers/ExprEngine.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'clang/lib/StaticAnalyzer/Checkers/ExprEngine.cpp') diff --git a/clang/lib/StaticAnalyzer/Checkers/ExprEngine.cpp b/clang/lib/StaticAnalyzer/Checkers/ExprEngine.cpp index c522e72210f..9fef6d87bed 100644 --- a/clang/lib/StaticAnalyzer/Checkers/ExprEngine.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/ExprEngine.cpp @@ -771,6 +771,7 @@ void ExprEngine::Visit(const Stmt* S, ExplodedNode* Pred, case Stmt::UnresolvedLookupExprClass: case Stmt::UnresolvedMemberExprClass: case Stmt::CXXNoexceptExprClass: + case Stmt::PackExpansionExprClass: { SaveAndRestore OldSink(Builder->BuildSinks); Builder->BuildSinks = true; -- cgit v1.2.3