Abort Trap 6 caused by name collision

Originator:GriotSpeak
Number:rdar://21352576 Date Originated:11-Jun-2015 11:44 PM
Status:Open Resolved:
Product:Developer Tools Product Version:Xcode-beta (7A120f)
Classification:Serious Bug Reproducible:Always
 
Summary:
The provided code, which improperly overloads an identifier, causes the compiler to trap.

Steps to Reproduce:
1. create a new framework project.
2. add the following code to the project in a swift file

public struct Foo {
    typealias Hello = String
    public let apply:(Hello) -> Int
    public func apply(input:Hello) -> Int {
        return apply(input)
    }
}

3. Observe crash

Expected Results:
No crash and a compile error pointing out the mistake of overloading in this manner.

Actual Results:
Command failed due to signal: Abort trap: 6

Regression:
This code built with 6.4 without error or compiler crash.

Notes:
Provide additional information, such as references to related problems, workarounds and relevant attachments.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!