diff options
author | Ilya Biryukov <ibiryukov@google.com> | 2020-01-10 11:50:27 +0100 |
---|---|---|
committer | Ilya Biryukov <ibiryukov@google.com> | 2020-01-10 13:28:13 +0100 |
commit | 57a51b689e7b99c694a028104b0b5a69b80fd002 (patch) | |
tree | a0251791c5dbcc1fc82ff52d925ca69b1c239c4b /clang/lib/Sema/SemaCodeComplete.cpp | |
parent | e65282deca8455d1cc6d83b7016af9aa374f9f89 (diff) | |
download | bcm5719-llvm-57a51b689e7b99c694a028104b0b5a69b80fd002.tar.gz bcm5719-llvm-57a51b689e7b99c694a028104b0b5a69b80fd002.zip |
[CodeComplete] Suggest 'return nullptr' in functions returning pointers
Reviewers: kadircet
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D72497
Diffstat (limited to 'clang/lib/Sema/SemaCodeComplete.cpp')
-rw-r--r-- | clang/lib/Sema/SemaCodeComplete.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaCodeComplete.cpp b/clang/lib/Sema/SemaCodeComplete.cpp index b4299b615a6..0f2434fc0a2 100644 --- a/clang/lib/Sema/SemaCodeComplete.cpp +++ b/clang/lib/Sema/SemaCodeComplete.cpp @@ -2312,6 +2312,13 @@ static void AddOrdinaryNameResults(Sema::ParserCompletionContext CCC, Scope *S, Builder.AddChunk(CodeCompletionString::CK_SemiColon); Results.AddResult(Result(Builder.TakeString())); } + // For pointers, suggest 'return nullptr' in C++. + if (SemaRef.getLangOpts().CPlusPlus11 && + (ReturnType->isPointerType() || ReturnType->isMemberPointerType())) { + Builder.AddTypedTextChunk("return nullptr"); + Builder.AddChunk(CodeCompletionString::CK_SemiColon); + Results.AddResult(Result(Builder.TakeString())); + } } // goto identifier ; |