Xcode 6.4: swiftc when concatinating arrays of tuples will behave diferently depending on optimization settings

Originator:tapikz
Number:rdar://21687439 Date Originated:06-Jul-2015 02:27 PM
Status:Open Resolved:
Product:Developer Tools Product Version:Xcode 6.4 (6E35b)
Classification:Crash/Hang/Data Loss Reproducible:Always
 
Summary:
Given an array 
	var points: [(x: Double, y: Double)] = []

If you attempt to concatenate it with the literal array [(1.0, 1.0)]

The compiler will behave differently depending on the optimization level.


Steps to Reproduce:
	var points: [(x: Double, y: Double)] = []
	points += [(1.0, 1.0)]

Expected Results:
	Compiler will behave the same way WRT syntax regardless of optimization settings

Actual Results:
	Compiler will crash when optimizations are turned on.
	Compiler is able to lift the type (Double, Double) to the type (x: Double, y: Double) when optimizations are turned off

Regression:
	The issue is present in the version of swiftc shipping with Xcode 6.4 (swiftlang-602.0.53.1 clang-602.0.53)
	The issue is also present in the version of swiftc that ships with Xcode 7.0 Beta 2 

Notes:

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!