forked from OSchip/llvm-project
b3510c4254
Summary: Make completion behave consistently no matter if it is run at the start, in the middle or at the end of an identifier that happens to be a keyword or a macro name. Since completion is often ran on incomplete identifiers, they may turn into keywords by accident. For example, we should produce same results for all of these completion points: // ^ is completion point. ^class cla^ss class^ Previously clang produced different results for the last case (as if the completion point was after a space: `class ^`). This change also updates some offsets in tests that (unintentionally?) relied on the old behavior. Reviewers: sammccall, bkramer, arphaman, aaron.ballman Reviewed By: sammccall Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D45887 llvm-svn: 330717 |
||
---|---|---|
.. | ||
Inputs | ||
PR9728.cpp | ||
auto.cpp | ||
auto_type.c | ||
bracket-decl.c | ||
call.c | ||
call.cpp | ||
comments.cpp | ||
constexpr.cpp | ||
crash-func-init.cpp | ||
ctor-initializer.cpp | ||
documentation.cpp | ||
documentation.m | ||
enable-if-attr-crash.cpp | ||
end-of-ident-macro.cpp | ||
end-of-ident.cpp | ||
enum-switch-case-qualified.cpp | ||
enum-switch-case.c | ||
enum-switch-case.cpp | ||
function-templates.cpp | ||
functions.cpp | ||
ignore-ns-level-decls.cpp | ||
inside-macros.cpp | ||
keywords.cpp | ||
macros-in-modules.c | ||
macros-in-modules.m | ||
macros.c | ||
member-access.c | ||
member-access.cpp | ||
namespace-alias.cpp | ||
namespace.cpp | ||
nested-name-specifier.cpp | ||
objc-expr.m | ||
objc-message.m | ||
objc-message.mm | ||
objc-protocol-member-access.m | ||
operator.cpp | ||
ordinary-name-cxx11.cpp | ||
ordinary-name.c | ||
ordinary-name.cpp | ||
pch-and-module.m | ||
pragma-macro-token-caching.c | ||
preamble.c | ||
qualifiers-as-written.cpp | ||
some_struct.h | ||
stdin.c | ||
tag.c | ||
tag.cpp | ||
templates.cpp | ||
truncation.c | ||
truncation.c.h | ||
uninstantiated_params.cpp | ||
using-namespace.cpp | ||
using.cpp |