[clang][CodeComplete] Dont perform fallback completion for incomplete member ref
authorKadir Cetinkaya <kadircet@google.com>
Mon, 6 Apr 2020 17:13:08 +0000 (19:13 +0200)
committerKadir Cetinkaya <kadircet@google.com>
Mon, 6 Apr 2020 18:08:24 +0000 (20:08 +0200)
commit0731132888a0219179fdb4303cd690a6687cc130
tree4b2eb20779761d792bc5cf7ecc154545c2e877c1
parent97aa593a8387586095b7eac12974ba2fdd08f4c3
[clang][CodeComplete] Dont perform fallback completion for incomplete member ref

Summary:
Clang performs expression based completion whenever it can't figure out
base of a member reference expression. It might be quite confusing in cases like
incomplete types. This patch disables that fallback.

Unfortunately `ParsePostfixExpressionSuffix` is quite tangled and this patch
adds more to it.

Reviewers: sammccall

Subscribers: cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77570
clang/lib/Parse/ParseExpr.cpp
clang/test/CodeCompletion/incomplete-member.cpp [new file with mode: 0644]