[CodeComplete] Propagate preferred types through parser in more cases
authorIlya Biryukov <ibiryukov@google.com>
Thu, 31 Jan 2019 20:20:32 +0000 (20:20 +0000)
committerIlya Biryukov <ibiryukov@google.com>
Thu, 31 Jan 2019 20:20:32 +0000 (20:20 +0000)
commit4f9543b4d6152a5ee574246a645c7a3ec1db2c4f
tree30f0dd5daaa87f4663c6637e9b22140357937b59
parent240a90a57e3f313914dfb08c881fe7b079137c84
[CodeComplete] Propagate preferred types through parser in more cases

Preferred types are used by code completion for ranking. This commit
considerably increases the number of points in code where those types
are propagated.

In order to avoid complicating signatures of Parser's methods, a
preferred type is kept as a member variable in the parser and updated
during parsing.

Differential revision: https://reviews.llvm.org/D56723

llvm-svn: 352788
clang/include/clang/Parse/Parser.h
clang/include/clang/Sema/CodeCompleteConsumer.h
clang/include/clang/Sema/Sema.h
clang/lib/Parse/ParseDecl.cpp
clang/lib/Parse/ParseExpr.cpp
clang/lib/Parse/ParseExprCXX.cpp
clang/lib/Parse/ParseStmt.cpp
clang/lib/Sema/SemaCodeComplete.cpp
clang/unittests/Sema/CodeCompleteTest.cpp