forEach results in $0 is immutable error
<pre><code>protocols.forEach { $0.prop = nil }
</code></pre>

<p>results in:</p>

<pre><code>Cannot assign to property: '$0' is immutable
</code></pre>

<p>I worked around this with:</p>

<pre><code>protocols.forEach
{
    var protocol = $0

    protocol.prop = nil
}
</code></pre>

<p>But why is the compiler okay with this?  I would expect it could figure this out.</p>