diff options
author | Edwin Vane <edwin.vane@intel.com> | 2013-07-08 12:17:37 +0000 |
---|---|---|
committer | Edwin Vane <edwin.vane@intel.com> | 2013-07-08 12:17:37 +0000 |
commit | aae33677f503c1215b97059c07f3a31d00cce4a2 (patch) | |
tree | 2163610b221476c464458eae5d1c20e2f2237ee9 /clang-tools-extra/cpp11-migrate/Core/Transform.cpp | |
parent | 0b900831688d358421a63fd8f6d24602a0a61a5e (diff) | |
download | bcm5719-llvm-aae33677f503c1215b97059c07f3a31d00cce4a2.tar.gz bcm5719-llvm-aae33677f503c1215b97059c07f3a31d00cce4a2.zip |
cpp11-migrate: Tidying up
* Some file headers were missing for files in Core/
* Some headers were included but not necessary
* CMakeLists.txt was linking in LLVMSupport even though CMakeLists in subdirs
were linking it in too.
* StringRefisation of constructors of types in FileOverrides.h
* Other misc cleanups
Author: Guillaume Papin <guillaume.papin@epitech.eu>
llvm-svn: 185811
Diffstat (limited to 'clang-tools-extra/cpp11-migrate/Core/Transform.cpp')
-rw-r--r-- | clang-tools-extra/cpp11-migrate/Core/Transform.cpp | 33 |
1 files changed, 23 insertions, 10 deletions
diff --git a/clang-tools-extra/cpp11-migrate/Core/Transform.cpp b/clang-tools-extra/cpp11-migrate/Core/Transform.cpp index 92ccad74e7f..5754123a550 100644 --- a/clang-tools-extra/cpp11-migrate/Core/Transform.cpp +++ b/clang-tools-extra/cpp11-migrate/Core/Transform.cpp @@ -1,3 +1,18 @@ +//===-- Core/Transform.cpp - Transform Base Class Def'n -------------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +/// +/// \file +/// \brief This file provides the definition for the base Transform class from +/// which all transforms must subclass. +/// +//===----------------------------------------------------------------------===// + #include "Core/Transform.h" #include "clang/ASTMatchers/ASTMatchFinder.h" #include "clang/Basic/LangOptions.h" @@ -69,7 +84,7 @@ private: /// FileManager and a DiagnosticsEngine. Transform uses this class to create a /// new Rewriter and SourceManager for every translation unit it transforms. A /// DiagnosticsEngine doesn't need to be re-created so it's constructed once. A -/// SourceManager and Rewriter and (re)created as required. +/// SourceManager and Rewriter are (re)created as required. /// /// FIXME: The DiagnosticsEngine should really come from somewhere more global. /// It shouldn't be re-created once for every transform. @@ -140,13 +155,12 @@ void collectResults(clang::Rewriter &Rewrite, SourceOverrides &Overrides) { // in memory will always be necessary as the source goes down the transform // pipeline. - HeaderOverrides &Headers = Overrides.Headers; - HeaderOverrides::iterator HeaderI = Headers.find(Entry->getName()); - if (HeaderI == Headers.end()) - HeaderI = Headers.insert(HeaderOverrides::value_type( - Entry->getName(), Entry->getName())).first; + // Create HeaderOverride if not already existing + HeaderOverride &Header = Overrides.Headers[Entry->getName()]; + if (Header.FileName.empty()) + Header.FileName = Entry->getName(); - HeaderI->second.FileOverride = ResultBuf; + Header.FileOverride = ResultBuf; } } @@ -169,7 +183,7 @@ bool Transform::isFileModifiable(const SourceManager &SM, const FileEntry *FE = SM.getFileEntryForID(SM.getFileID(Loc)); if (!FE) return false; - + return GlobalOptions.ModifiableHeaders.isFileIncluded(FE->getName()); } @@ -202,8 +216,7 @@ void Transform::handleEndSource() { FileOverrides::iterator I = Overrides->find(CurrentSource); if (I == Overrides->end()) - I = Overrides - ->insert(FileOverrides::value_type(CurrentSource, CurrentSource)).first; + I = Overrides->insert(std::make_pair(CurrentSource, CurrentSource)).first; collectResults(RewriterOwner->getRewriter(), I->second); } |