Set MustBuildLookupTable on PrimaryContext in ExternalASTMerger
authorRaphael Isemann <teemperor@gmail.com>
Thu, 29 Nov 2018 13:50:30 +0000 (13:50 +0000)
committerRaphael Isemann <teemperor@gmail.com>
Thu, 29 Nov 2018 13:50:30 +0000 (13:50 +0000)
commitddedf0f9bbbc1a584df057da313d5642c2661d68
treee47953b8f5d0634e439cf3e58edccdf824b52354
parent6bb80512db29c02ea149f63512d05be0939aaae7
Set MustBuildLookupTable on PrimaryContext in ExternalASTMerger

Summary:
`MustBuildLookupTable` must always be called on a primary context as we otherwise
trigger an assert, but we don't ensure that this will always happen in our code right now.

This patch explicitly requests the primary context when doing this call as this shouldn't break
anything (as calling `getPrimaryContext` on a context which is its own primary context is a no-op)
but will catch these rare cases where we somehow operate on a declaration context that is
not its own primary context.

See also D54863.

Reviewers: martong, a.sidorin, shafik

Reviewed By: martong

Subscribers: davide, rnkovacs, cfe-commits

Tags: #lldb

Differential Revision: https://reviews.llvm.org/D54898

llvm-svn: 347863
clang/lib/AST/ExternalASTMerger.cpp