Misc. fixes for the Oracle / Sun compiler.

A few pieces of code have some ambiguous type deduction that seems to
resolve correctly for most compilers but not for the Oracle compiler.
This makes those few instances more explicit.
This commit is contained in:
Chuck Atkins 2014-12-12 10:04:47 -05:00
parent 3171fe0afa
commit 97b65f8156
2 changed files with 12 additions and 8 deletions

View File

@ -266,9 +266,10 @@ cmComputeLinkDepends::Compute()
// Iterate in reverse order so we can keep only the last occurrence // Iterate in reverse order so we can keep only the last occurrence
// of a shared library. // of a shared library.
std::set<int> emmitted; std::set<int> emmitted;
const std::vector<int>& cFLO = this->FinalLinkOrder;
for(std::vector<int>::const_reverse_iterator for(std::vector<int>::const_reverse_iterator
li = this->FinalLinkOrder.rbegin(), li = cFLO.rbegin(),
le = this->FinalLinkOrder.rend(); le = cFLO.rend();
li != le; ++li) li != le; ++li)
{ {
int i = *li; int i = *li;

View File

@ -80,12 +80,15 @@ void cmFindPackageCommand::AppendSearchPathGroups()
PathLabel::SystemRegistry); PathLabel::SystemRegistry);
// Create the new path objects // Create the new path objects
this->LabeledPaths.insert(std::make_pair(PathLabel::UserRegistry, this->LabeledPaths.insert(
cmSearchPath(this))); std::pair<cmFindCommon::PathLabel, cmSearchPath>(
this->LabeledPaths.insert(std::make_pair(PathLabel::Builds, PathLabel::UserRegistry, cmSearchPath(this)));
cmSearchPath(this))); this->LabeledPaths.insert(
this->LabeledPaths.insert(std::make_pair(PathLabel::SystemRegistry, std::pair<cmFindCommon::PathLabel, cmSearchPath>(
cmSearchPath(this))); PathLabel::Builds, cmSearchPath(this)));
this->LabeledPaths.insert(
std::pair<cmFindCommon::PathLabel, cmSearchPath>(
PathLabel::SystemRegistry, cmSearchPath(this)));
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------