mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-09-24 23:28:41 +00:00
Revert r222957 "Replace std::map<K, V*> with std::map<K, V> to handle ownership and deletion of the values."
Upon further review I think the MultiClass is being copied into the map instead of being moved due to the copy constructor on the nested Record type. This ultimately got exposed when the vector in DefPrototype vector was changed to hold unique_ptrs in another commit. This caused gcc 4.7 to fail due to the use of the copy constructor on unique_ptr with the error pointing back to one of the insert calls from this commit. Not sure why clang was able to build.
This reverts commit 710cdf729f
.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@222971 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -55,7 +55,7 @@ namespace llvm {
|
||||
class TGParser {
|
||||
TGLexer Lex;
|
||||
std::vector<std::vector<LetRecord> > LetStack;
|
||||
std::map<std::string, MultiClass> MultiClasses;
|
||||
std::map<std::string, MultiClass*> MultiClasses;
|
||||
|
||||
/// Loops - Keep track of any foreach loops we are within.
|
||||
///
|
||||
|
Reference in New Issue
Block a user