title: ARC semantic issue: Pointer to non-const type 'id' with no explicit ownership
body: <p>I have this Objective-c interface declared in a header file:</p>
  
  <p>@interface DelegateChain: NSObject</p>
  
  <p>{
  @protected</p>
  
  <pre><code>id          * delegate;
  NSUInteger            numberOfDelegates;
  NSUInteger            sizeOfDelegatesArray;
  NSMutableDictionary * hashs;
  </code></pre>
  
  <p>}</p>
  
  <p>...</p>
  
  <p>end this is a piece of code in the implementation file that use the variable delegate:</p>
  
  <p>...</p>
  
  <pre><code>if( NULL == ( delegate = ( id * )realloc( delegate, ( sizeOfDelegatesArray + 10 ) * sizeof( id ) ) ) )
      {
          /* Error management... */
      }
  </code></pre>
  
  <p>the problem is that if I try to compile the code, the compiler responds with this error for the header file:
  ARC semantic issue: Pointer to non-const type 'id' with no explicit ownership</p>
  
  <p>Reading other posts, I've tried to delete the * for id *delegate because the type id is already a pointer, but in this case the program get crashed.</p>