summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2013-03-07 23:26:24 +0000
committerDouglas Gregor <dgregor@apple.com>2013-03-07 23:26:24 +0000
commit61e368182dcb5484109e338b0731ca3e30d4492a (patch)
tree2f32b63eb03b150f469a3084d139964aebf1d7c8
parentb5af2e9c5a4f995c3d2515d007b8b40659808a18 (diff)
downloadbcm5719-llvm-61e368182dcb5484109e338b0731ca3e30d4492a.tar.gz
bcm5719-llvm-61e368182dcb5484109e338b0731ca3e30d4492a.zip
Add code completion for @import <rdar://problem/13344306>.
llvm-svn: 176666
-rw-r--r--clang/lib/Sema/SemaCodeComplete.cpp8
-rw-r--r--clang/test/Index/complete-modules.m3
2 files changed, 11 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaCodeComplete.cpp b/clang/lib/Sema/SemaCodeComplete.cpp
index e20330b5028..e485b356db9 100644
--- a/clang/lib/Sema/SemaCodeComplete.cpp
+++ b/clang/lib/Sema/SemaCodeComplete.cpp
@@ -4477,6 +4477,14 @@ static void AddObjCTopLevelResults(ResultBuilder &Results, bool NeedAt) {
Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
Builder.AddPlaceholderChunk("class");
Results.AddResult(Result(Builder.TakeString()));
+
+ if (Results.getSema().getLangOpts().Modules) {
+ // @import name
+ Builder.AddTypedTextChunk(OBJC_AT_KEYWORD_NAME(NeedAt, "import"));
+ Builder.AddChunk(CodeCompletionString::CK_HorizontalSpace);
+ Builder.AddPlaceholderChunk("module");
+ Results.AddResult(Result(Builder.TakeString()));
+ }
}
void Sema::CodeCompleteObjCAtDirective(Scope *S) {
diff --git a/clang/test/Index/complete-modules.m b/clang/test/Index/complete-modules.m
index d1cf12728a8..d63c4b89566 100644
--- a/clang/test/Index/complete-modules.m
+++ b/clang/test/Index/complete-modules.m
@@ -12,3 +12,6 @@
// RUN: c-index-test -code-completion-at=%s:4:14 -fmodules-cache-path=%t -fmodules -F %S/Inputs/Frameworks -I %S/Inputs/Headers %s | FileCheck -check-prefix=CHECK-LIBA %s
// CHECK-LIBA: NotImplemented:{TypedText Extensions} (50)
+// RUN: c-index-test -code-completion-at=%s:4:1 -fmodules-cache-path=%t -fmodules -F %S/Inputs/Frameworks -I %S/Inputs/Headers %s | FileCheck -check-prefix=CHECK-TOP %s
+// CHECK-TOP: NotImplemented:{TypedText @import}{HorizontalSpace }{Placeholder module} (40)
+
OpenPOWER on IntegriCloud