[lldb] Only allow SymbolFiles to construct Types
authorAugusto Noronha <augusto2112@me.com>
Fri, 13 Jan 2023 21:30:41 +0000 (13:30 -0800)
committerAugusto Noronha <augusto2112@me.com>
Tue, 17 Jan 2023 18:30:29 +0000 (10:30 -0800)
commit7ef075a6d7a2bccbeedb9b5a1689e8545d5753e9
tree87abe6a73c4f5eecd279d975f3e47d215d79704e
parent35b5499d7259ac3e5c648a711678290695703a87
[lldb] Only allow SymbolFiles to construct Types

SymbolFiles should own Types by keeping them in their TypeList. This
patch privates the Type constructor to guarantee that every created Type
is kept in the SymbolFile's type list.
lldb/include/lldb/Symbol/SymbolFile.h
lldb/include/lldb/Symbol/SymbolFileOnDemand.h
lldb/include/lldb/Symbol/Type.h
lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
lldb/source/Plugins/SymbolFile/PDB/PDBASTParser.cpp
lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
lldb/unittests/Symbol/TestTypeSystemClang.cpp