llvm-project/clang/lib/Serialization
Argyrios Kyrtzidis d8e076972f Store the source range of a CXXOperatorCallExpr in the Expr object instead of
calculating it recursively.

boost::assign::tuple_list_of uses the trick of chaining call operator expressions in order to declare a "list of tuples", e.g:
    std::vector<tuple> v = boost::assign::tuple_list_of(1, "foo")(2, "bar")(3, "qqq");

Due to CXXOperatorCallExpr calculating its source range recursively we would get
significant slowdowns with a large number of chained call operator expressions and the
potential for stack overflow.

rdar://11350116

llvm-svn: 155848
2012-04-30 22:12:22 +00:00
..
ASTCommon.cpp Restore r142914 and r142915, now with missing file and apparent 2011-10-25 17:37:35 +00:00
ASTCommon.h When deserializing the definition of a C++ class/ObjC class/ObjC 2012-01-15 18:08:05 +00:00
ASTReader.cpp Remove the ref/value inconsistency in filter_decl_iterator. 2012-04-30 02:36:29 +00:00
ASTReaderDecl.cpp Use forward declarations for ASTDeclContextNameLookupTable and add a missing delete. 2012-04-15 12:36:49 +00:00
ASTReaderInternals.h Implement the all_lookups_iterator for PCH as a follow-up to r153970. This 2012-04-16 02:51:46 +00:00
ASTReaderStmt.cpp Store the source range of a CXXOperatorCallExpr in the Expr object instead of 2012-04-30 22:12:22 +00:00
ASTWriter.cpp Fix serialization of uninstantiated exception specifications. Patch by Li Kan, 2012-04-21 17:47:47 +00:00
ASTWriterDecl.cpp Serialize and deserialize some missing bits from BlockDecl. 2012-04-13 17:33:29 +00:00
ASTWriterStmt.cpp Store the source range of a CXXOperatorCallExpr in the Expr object instead of 2012-04-30 22:12:22 +00:00
CMakeLists.txt Fix cmake build with -DBUILD_SHARED_LIBS=ON. 2011-12-29 04:31:59 +00:00
GeneratePCH.cpp Revert my patches which removed Diagnostic.h includes by moving some operator overloads out of line. 2012-02-07 22:29:24 +00:00
Makefile Reintroduce the serialization library, with fixed dependencies. 2010-08-17 20:43:28 +00:00
Module.cpp Use forward declarations for ASTDeclContextNameLookupTable and add a missing delete. 2012-04-15 12:36:49 +00:00
ModuleManager.cpp Optimize unqualified/global name lookup in modules by introducing a 2012-01-18 20:56:22 +00:00