swiftlang/swift
Auf GitHub ansehenMissing fix-it when opaque property type is inferred
Open
#69.241 geöffnet am 18. Okt. 2023
compilerdiagnostics qualityfix-itsgood first issueimprovementopaque result typesopaque typesswift 6.0type checker
Repository-Metriken
- Stars
- (69.989 Stars)
- PR-Merge-Metriken
- (Durchschn. Merge 8T 17h) (510 gemergte PRs in 30 T)
Beschreibung
Description When the type of a variable or property is inferred as an opaque type, the compiler emits an error to that effect:
Property definition has inferred type 'some Proto', involving the 'some' return type of another declaration
Steps to reproduce When compiling this code, the last line has the above error attached.:
protocol Proto {}
struct Concrete: Proto {}
func getProto() -> some Proto { Concrete() }
let value = getProto() // error
Expected behavior Since the fix is straightforward and included in the error message, the compiler should offer a fixit that would rectify the problem:
let value: some Proto = getProto()
Environment
- Swift compiler version info Apple Swift version 5.9 (swiftlang-5.9.0.128.108 clang-1500.0.40.1) Target: arm64-apple-macosx14.0