We do not own our ExternalSemaSource, it is ref-owned by Sema and ASTContext.
This commit is contained in:
parent
5563ab3d68
commit
8162fdd340
@ -51,9 +51,9 @@ namespace cling {
|
||||
Interpreter* m_Interpreter; // we don't own
|
||||
|
||||
///\brief Our custom SemaExternalSource, translating interesting events into
|
||||
/// callbacks.
|
||||
/// callbacks. RefOwned by Sema & ASTContext.
|
||||
///
|
||||
std::unique_ptr<InterpreterExternalSemaSource> m_ExternalSemaSource;
|
||||
InterpreterExternalSemaSource* m_ExternalSemaSource;
|
||||
|
||||
///\brief Our custom ASTDeserializationListener, translating interesting
|
||||
/// events into callbacks.
|
||||
|
@ -167,9 +167,9 @@ namespace cling {
|
||||
if (!externalSemaSrc || externalSemaSrc == Reader) {
|
||||
// If the ExternalSemaSource is the PCH reader we still need to insert
|
||||
// our listener.
|
||||
m_ExternalSemaSource.reset(new InterpreterExternalSemaSource(this));
|
||||
m_ExternalSemaSource = new InterpreterExternalSemaSource(this);
|
||||
m_ExternalSemaSource->InitializeSema(SemaRef);
|
||||
m_Interpreter->getSema().addExternalSource(m_ExternalSemaSource.get());
|
||||
m_Interpreter->getSema().addExternalSource(m_ExternalSemaSource);
|
||||
|
||||
// FIXME: We should add a multiplexer in the ASTContext, too.
|
||||
llvm::IntrusiveRefCntPtr<ExternalASTSource>
|
||||
@ -209,7 +209,7 @@ namespace cling {
|
||||
|
||||
ExternalSemaSource*
|
||||
InterpreterCallbacks::getInterpreterExternalSemaSource() const {
|
||||
return m_ExternalSemaSource.get();
|
||||
return m_ExternalSemaSource;
|
||||
}
|
||||
|
||||
ASTDeserializationListener*
|
||||
|
Loading…
x
Reference in New Issue
Block a user