diff --git a/Source/cmDefinitions.cxx b/Source/cmDefinitions.cxx index 6502163791..5515f35516 100644 --- a/Source/cmDefinitions.cxx +++ b/Source/cmDefinitions.cxx @@ -15,7 +15,8 @@ cmDefinitions::Def cmDefinitions::NoDef; //---------------------------------------------------------------------------- -cmDefinitions::cmDefinitions(cmDefinitions* parent): Up(parent) +cmDefinitions::cmDefinitions(cmDefinitions* parent) + : Up(parent) { } @@ -35,7 +36,7 @@ cmDefinitions::GetInternal(const std::string& key) const { return i->second; } - else if(cmDefinitions* up = this->Up) + if(cmDefinitions* up = this->Up) { // Query the parent scope. return up->GetInternal(key); diff --git a/Source/cmDefinitions.h b/Source/cmDefinitions.h index ebe6fa5f3f..5209a8b201 100644 --- a/Source/cmDefinitions.h +++ b/Source/cmDefinitions.h @@ -13,6 +13,9 @@ #define cmDefinitions_h #include "cmStandardIncludes.h" +#if defined(CMAKE_BUILD_WITH_CMAKE) +#include "cmsys/hash_map.hxx" +#endif /** \class cmDefinitions * \brief Store a scope of variable definitions for CMake language. @@ -71,7 +74,11 @@ private: cmDefinitions* Up; // Local definitions, set or unset. +#if defined(CMAKE_BUILD_WITH_CMAKE) + typedef cmsys::hash_map MapType; +#else typedef std::map MapType; +#endif MapType Map; // Internal query and update methods.