`[.]Type` completion for `(any P).` shows it will produce an existential metatype
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 45/100
Research direction
Start with the supplied swift-ide-test batch code-completion case and compare its current output with the FileCheck expectation for (any P).Type. Done means the completion output identifies the result as the singleton metatype (any P).Type, rather than the existential metatype any P.Type.
Written by the indexing model from the issue text.
Description
Test case:
// RUN: %empty-directory(%t)
// RUN: %target-swift-ide-test -batch-code-completion -source-filename %s -filecheck %raw-FileCheck -completion-output-dir %t
protocol P {}
(any P).#^COMPLETE?check=META^#
// META: Keyword/CurrNominal: Type[#(any P).Type#]; name=Type
This test will fail, because the current completion is Type[#any P.Type#]; name=Type. Notice how it thinks the completion will produce an existential metatype any P.Type, whereas the actual result is the singleton metatype (any P).Type.
Note
anysyntax was proposed in SE-0335.
Environment
- Swift 5.9-dev (c1d5118c21da49a9c2194734cbf9b6970bc63056)
- Dominant language
- Swift
- Stars
- 70.4k
- Forks
- 10.8k
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 461
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from swiftlang/swift
-
triage needed
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
triage needed
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Foundation Windows
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
triage needed
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
triage needed
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Similar issues
-
type: docs
Difficulty 1/5 Under an hour Newbie friendliness 95/100
googleapis/google-cloud-swift#971 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
bitcoindevkit/bdk-ffi#1125 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
mozilla-mobile/firefox-ios#35743 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
manaflow-ai/cmux#13417 ·
-
triage
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
ionic-team/capacitor#8616 ·