diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2010-07-06 15:37:09 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2010-07-06 15:37:09 +0000 |
commit | 39fdf81b43020803c429b903bf3e8cc100a2bd1e (patch) | |
tree | db7cc037abc528447681f9d0d27d931dd7f1d253 /clang/lib/Frontend/PCHReaderDecl.cpp | |
parent | af2eac286900de8de3c4f4c5c97485e48175fe8f (diff) | |
download | bcm5719-llvm-39fdf81b43020803c429b903bf3e8cc100a2bd1e.tar.gz bcm5719-llvm-39fdf81b43020803c429b903bf3e8cc100a2bd1e.zip |
Read/write function template specializations for PCH, properly this time.
llvm-svn: 107665
Diffstat (limited to 'clang/lib/Frontend/PCHReaderDecl.cpp')
-rw-r--r-- | clang/lib/Frontend/PCHReaderDecl.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/clang/lib/Frontend/PCHReaderDecl.cpp b/clang/lib/Frontend/PCHReaderDecl.cpp index 698adf49b54..e21cbab589e 100644 --- a/clang/lib/Frontend/PCHReaderDecl.cpp +++ b/clang/lib/Frontend/PCHReaderDecl.cpp @@ -977,9 +977,12 @@ void PCHDeclReader::VisitFunctionTemplateDecl(FunctionTemplateDecl *D) { if (PrevDecl == 0) { // This FunctionTemplateDecl owns a CommonPtr; read it. - // FunctionTemplateSpecializationInfos are filled through the - // templated FunctionDecl's setFunctionTemplateSpecialization, no need to - // read them here. + // Read the function specialization declarations. + // FunctionTemplateDecl's FunctionTemplateSpecializationInfos are filled + // through the specialized FunctionDecl's setFunctionTemplateSpecialization. + unsigned NumSpecs = Record[Idx++]; + while (NumSpecs--) + Reader.GetDecl(Record[Idx++]); if (FunctionTemplateDecl *CTD = cast_or_null<FunctionTemplateDecl>(Reader.GetDecl(Record[Idx++]))) { |