This would allow code completion clients to know which context is visited during Sema code completion.
Also some changes:
- add EnteredContext callback in VisibleDeclConsumer.
- add a simple unittest for sema code completion (only for visited contexts at the moment).
Given that lookup does not visit the same DeclContext twice, we're probably fine with vector here, rather than the set.
On the other hand, using set gives a better understanding that the order of items is not specified.
I don't think we should necessarily changes the code here, just something to think about.