title: how to use delegates with Automatic Reference Counting
body: <p>I've jumped on the ARC bandwagon. In the past I would have my delegate properties declared like this:</p>
  
  <pre><code>@property(assign) id&lt;MyProtocol&gt; delegate;
  </code></pre>
  
  <p>So I thought I would do this under ARC:</p>
  
  <pre><code>@property(weak) id&lt;MyProtocol&gt; delegate;
  </code></pre>
  
  <p>Not so. On the @synthesize statement in the .m I have a compile <strong>error</strong>:</p>
  
  <p>*Semantic Issue: Existing ivar 'delegate' for __weak property 'delegate' must be __weak*</p>
  
  <p>I HAVE declared it as weak though! Also how do I pass a class implementing a protocol to a weakly referenced property. Do I have to wrap it in one of those weird obj_unretained calls?</p>
  
  <p>Any help on this would be very much appreciated. </p>