| class Foo { |
| var x: Int |
| var y: Int |
| func fooMethod() {} |
| } |
| struct Bar { |
| var a: Int |
| var b: Int |
| func barMethod() {} |
| } |
| func foo(arg: Foo) { |
| _ = arg. |
| } |
| func bar(arg: Bar) { |
| _ = arg. |
| } |
| |
| // NOTE: Test for simultaneous completion requests don't cause compiler crashes. |
| |
| // ReuseASTContext disabled. |
| // RUN: %sourcekitd-test \ |
| // RUN: -req=global-config -req-opts=completion_max_astcontext_reuse_count=0 \ |
| // RUN: -req=complete -pos=12:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=15:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=12:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=15:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=17:1 %s -async -- %s == \ |
| // RUN: -req=complete -pos=12:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=15:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=12:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=15:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=17:1 %s -async -- %s == \ |
| // RUN: -req=complete -pos=12:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=15:11 %s -async -- %s |
| |
| // ReuseASTContext enabled. |
| // RUN: %sourcekitd-test \ |
| // RUN: -req=global-config -req-opts=completion_max_astcontext_reuse_count=5 \ |
| // RUN: -req=complete -pos=12:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=15:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=12:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=15:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=17:1 %s -async -- %s == \ |
| // RUN: -req=complete -pos=12:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=15:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=12:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=15:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=17:1 %s -async -- %s == \ |
| // RUN: -req=complete -pos=12:11 %s -async -- %s == \ |
| // RUN: -req=complete -pos=15:11 %s -async -- %s |