Commits

Chris Lattner committed d4731598143
Implement the start of a diagnostic to detect cases where inout aliasing violations are introduced, as these are obvious miscompilations and clearly mystifying to our user base. This is enough to emit diagnostics like this: writeback_conflict_diagnostics.swift:58:70: error: inout writeback aliasing conflict detected on computed property 'c_local_struct_property' swap(&c_local_struct_property.stored_int, &c_local_struct_property.stored_int) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ writeback_conflict_diagnostics.swift:58:33: note: concurrent writeback occurred here swap(&c_local_struct_property.stored_int, &c_local_struct_property.stored_int) ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~ which isn't great, but is better than nothing (better wording is totally welcome!). This doesn't handle subscripts (or many other kinds of logical lvalue) at all yet, so it doesn't handle the swift WTF case, but this is progress towards that. Swift SVN r20297