diff options
| author | Douglas Gregor <dgregor@apple.com> | 2015-07-07 06:20:27 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2015-07-07 06:20:27 +0000 |
| commit | 9b7b3e90385cbca4af1cc6f2a3afb1da44762780 (patch) | |
| tree | e49df9bec3c91f22946e3c6ea89434d3b590f31f /clang/lib/Sema/SemaCodeComplete.cpp | |
| parent | 4c850f3a64d6c5aee4997c3cdaf630c197f08224 (diff) | |
| download | bcm5719-llvm-9b7b3e90385cbca4af1cc6f2a3afb1da44762780.tar.gz bcm5719-llvm-9b7b3e90385cbca4af1cc6f2a3afb1da44762780.zip | |
[libclang] Replace ObjC generic parameters when code-completing method implementations.
rdar://20643768
llvm-svn: 241559
Diffstat (limited to 'clang/lib/Sema/SemaCodeComplete.cpp')
| -rw-r--r-- | clang/lib/Sema/SemaCodeComplete.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaCodeComplete.cpp b/clang/lib/Sema/SemaCodeComplete.cpp index 7d898d8ac1a..252e30563e3 100644 --- a/clang/lib/Sema/SemaCodeComplete.cpp +++ b/clang/lib/Sema/SemaCodeComplete.cpp @@ -7076,7 +7076,8 @@ void Sema::CodeCompleteObjCMethodDecl(Scope *S, // If the result type was not already provided, add it to the // pattern as (type). if (ReturnType.isNull()) - AddObjCPassingTypeChunk(Method->getReturnType(), + AddObjCPassingTypeChunk(Method->getSendResultType() + .stripObjCKindOfType(Context), Method->getObjCDeclQualifier(), Context, Policy, Builder); @@ -7107,6 +7108,8 @@ void Sema::CodeCompleteObjCMethodDecl(Scope *S, ParamType = (*P)->getType(); else ParamType = (*P)->getOriginalType(); + ParamType = ParamType.substObjCTypeArgs(Context, {}, + ObjCSubstitutionContext::Parameter); AddObjCPassingTypeChunk(ParamType, (*P)->getObjCDeclQualifier(), Context, Policy, |

