It’s quite common for an assertion/precondition that you thought should hold 
actually does not yet there is no bug. In that case, you might want to remind 
yourself of this fact by commenting out the assertion/precondition (instead of 
deleting it) so that you don’t make the same mistake in the future by inserting 
such assertions/preconditions into the code.

However, it would be nice to have explicit support for assertions/preconditions 
that don’t always hold where there is no bug.

For example:

preconditionNotAlwaysTrue( list.isEmpty )

When your app finishes running, the IDE could show you all such 
preconditions/assertions that you thought fail sometimes that did not fail in 
that particular run. In that case, you might consider switching them to normal 
preconditions/assertions provided your code has now evolved to the point where 
they always hold.
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to