title: A class gets unique property backing even if property backed by static variable
body: <p>Seems like the property just doesn't get backed by the static variable, and the compiler gives it a unique one, anyway.</p>
  
  <p>header file:</p>
  
  <pre><code>@interface MyBase : NSObject
  @property int error;
  @end
  
  @interface MySubclass : MyBase
  @end
  </code></pre>
  
  <p>Implementation file:</p>
  
  <pre><code>static int staticError = 0;
  
  @implementation MyBase
  @synthesize error = staticError;            // back it with a static variable
  @end
  
  @implementation MySubclass
  @end
  </code></pre>
  
  <p>Example:</p>
  
  <pre><code>MyBase* base = [[MyBase alloc] init];
  base.error = 1;
  
  MyBase* anotherBase = [[MyBase alloc] init];
  NSAssert( base.error == anotherBase.error , @"This causes assertion" );
  
  MySubclass* subClass = [[MySubclass alloc] init];
  subClass.error = 2; // This *should* set our static variable from 1 to 2.
  
  // Prove they refer to the same static variable (but fail)
  NSAssert( base.error == subClass.error , @"This causes assertion" );
  </code></pre>
  
  <p>Tested on Xcode 6.4</p>