]> granicus.if.org Git - clang/commit
Add -fdelayed-template-parsing option. Using this option all templated function defin...
authorFrancois Pichet <pichet2000@gmail.com>
Fri, 22 Apr 2011 22:18:13 +0000 (22:18 +0000)
committerFrancois Pichet <pichet2000@gmail.com>
Fri, 22 Apr 2011 22:18:13 +0000 (22:18 +0000)
commit8387e2a41eef6fa17fb140a18c29b6eee9dd2b8a
tree56e18603554b83fdb5ca1ccd11b550e4d972c81d
parent64089cece350472c04b420c497ae391443353325
Add -fdelayed-template-parsing option. Using this option all templated function definitions are parsed at the end of the translation unit only if it is required by an actual instantiation. As such all the symbols of the TU are available during name lookup.

Using this flag is necessary for compatibility with Microsoft template code.
This also provides some parsing speed improvement.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130022 91177308-0d34-0410-b5e6-96231b3b80d8
20 files changed:
include/clang/AST/Decl.h
include/clang/Basic/LangOptions.h
include/clang/Driver/CC1Options.td
include/clang/Driver/Options.td
include/clang/Parse/Parser.h
include/clang/Sema/Sema.h
lib/AST/Decl.cpp
lib/CodeGen/CodeGenModule.cpp
lib/Driver/Tools.cpp
lib/Frontend/CompilerInvocation.cpp
lib/Parse/ParseCXXInlineMethods.cpp
lib/Parse/ParseTemplate.cpp
lib/Parse/Parser.cpp
lib/Sema/Sema.cpp
lib/Sema/SemaDecl.cpp
lib/Sema/SemaDeclCXX.cpp
lib/Sema/SemaTemplate.cpp
lib/Sema/SemaTemplateInstantiateDecl.cpp
test/Parser/DelayedTemplateParsing.cpp [new file with mode: 0644]
tools/libclang/CIndex.cpp