mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-25 20:59:51 +00:00
MSVC 2013 supports std::forward_as_tuple, while MSVC 2012 did not; so we can move to using the improved API.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229414 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
4f7d60c1ea
commit
7fcd74585a
@ -168,11 +168,10 @@ LexicalScope *LexicalScopes::getOrCreateRegularScope(MDNode *Scope) {
|
||||
LexicalScope *Parent = nullptr;
|
||||
if (D.isLexicalBlock())
|
||||
Parent = getOrCreateLexicalScope(DebugLoc::getFromDILexicalBlock(Scope));
|
||||
// FIXME: Use forward_as_tuple instead of make_tuple, once MSVC2012
|
||||
// compatibility is no longer required.
|
||||
I = LexicalScopeMap.emplace(std::piecewise_construct, std::make_tuple(Scope),
|
||||
std::make_tuple(Parent, DIDescriptor(Scope),
|
||||
nullptr, false)).first;
|
||||
I = LexicalScopeMap.emplace(std::piecewise_construct,
|
||||
std::forward_as_tuple(Scope),
|
||||
std::forward_as_tuple(Parent, DIDescriptor(Scope),
|
||||
nullptr, false)).first;
|
||||
|
||||
if (!Parent) {
|
||||
assert(DIDescriptor(Scope).isSubprogram());
|
||||
@ -199,12 +198,11 @@ LexicalScope *LexicalScopes::getOrCreateInlinedScope(MDNode *ScopeNode,
|
||||
else
|
||||
Parent = getOrCreateInlinedScope(Scope.getContext(), InlinedAt);
|
||||
|
||||
// FIXME: Use forward_as_tuple instead of make_tuple, once MSVC2012
|
||||
// compatibility is no longer required.
|
||||
I = InlinedLexicalScopeMap.emplace(std::piecewise_construct,
|
||||
std::make_tuple(P),
|
||||
std::make_tuple(Parent, Scope, InlinedAt,
|
||||
false)).first;
|
||||
std::forward_as_tuple(P),
|
||||
std::forward_as_tuple(Parent, Scope,
|
||||
InlinedAt, false))
|
||||
.first;
|
||||
return &I->second;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user