IDE: Visual Studio X/Fire
Version: 10.0.0.2415 (develop)
Target (If relevant): OSX
Description:
The parser rejects some constructs involving Self
(in a protocol extension).
Expected Behavior:
Compiles?
Actual Behavior:
Parser Errors
Steps:
protocol Foo {
static func foo()
}
protocol RR {
associatedtype RawValue: Foo
init?(rawValue: RawValue)
}
extension RR {
public static func foo() { // E1 closing bracket expected, got "Self"
Self.RawValue.foo()
}
public static func bar() {
var innerResult: Self.RawValue?
innerResult.flatMap { Self(rawValue: $0) } // E1 closing bracket expected, got "Self"
// E484 Cannot access members on wrapped nullable type "RawValue?"
// E44 No member "flatMap " on type "RawValue"
}
}