Files
swift-mirror/test/SILOptimizer/moveonly_consuming_switch_2.swift
2024-05-14 07:31:59 -07:00

28 lines
516 B
Swift

// RUN: %target-swift-frontend -emit-sil -verify %s
struct Box: ~Copyable {
let ptr: UnsafeMutablePointer<Int>
deinit { print("butt") }
}
enum List<Element>: ~Copyable {
case end
case more(Element, Box)
}
extension List {
init() {
self = .end
}
mutating func pop() -> Element {
switch consume self {
case .more(let element, let box): // expected-warning{{}}
self = .end
return element
case .end: fatalError()
}
}
}