swiftlang/swift
View on GitHub[SR-8811] Diagnosing Implicit Accessors for Uninhabited Types Should Be Smarter
Open
#51,319 opened on Sep 20, 2018
SILcompilerdiagnostics qualitygood first issueimprovement
Repository metrics
- Stars
- (69,989 stars)
- PR merge metrics
- (Avg merge 8d 17h) (510 merged PRs in 30d)
Description
| Previous ID | SR-8811 |
| Radar | None |
| Original Reporter | @CodaFi |
| Type | Improvement |
| Status | Reopened |
| Resolution |
| Votes | 0 |
| Component/s | Compiler |
| Labels | Improvement, SILDiagnostics, StarterBug |
| Assignee | None |
| Priority | Medium |
md5: fe8546f9296464e8c547c7c953e07a35
Issue Description:
Try to emit SIL for the following code
enum Empty {}
class Foo {
var x: Empty // function with uninhabited return type 'Empty' is missing call to another never-returning function on all paths
init(_ x: Empty) {
self.x = x
}
}
It's good that we error, it's dismaying that we're diagnosing an implicit declaration. In particular, we're diagnosing the getter. We should check for accessors and emit something specialized here.