title: Subscript requires size of interface NSMutableArray which is not cnstant in non-fragile ABI
body: <p>Below is a snippet where I am getting the error:</p>
  
  <pre><code>    -(IBAction)rateButtonClick:(id)sender{
  
      NSMutableArray *starImage = [[NSMutableArray alloc]initWithObjects:starImage1, starImage2, starImage3, starImage4, starImage5, nil];
  
      NSArray *halfRateButton = [[NSArray alloc]initWithObjects:halfRateButton1, halfRateButton2, halfRateButton3, halfRateButton4, halfRateButton5, nil];
  
      int buttonClicked = (((UIButton *)sender).tag);
      int i;
  
      for (i = 0; i &lt; buttonClicked; i++) {
          **starImage[buttonClicked].image = [UIImage imageNamed:@"rate.png"];** 
      }
  
      if (lastButtonClicked != buttonClicked) {
          **starImage[buttonClicked].image = [UIImage imageNamed:@"star-half-full.png"];**
      }else
          **starImage[buttonClicked].image = [UIImage imageNamed:@"rate.png"];**
          lastButtonClicked = buttonClicked;
  
      for (i = 0; i &lt;= buttonClicked; i++) {
          **halfRateButton[i].hidden = YES;**
      }
  }
  </code></pre>
  
  <p>The error comes in the marked lines. Changing them as</p>
  
  <pre><code>    **[starImage objectAtIndex:i].image = [UIImage imageNamed:@"rate.png"];** 
  </code></pre>
  
  <p>doesn't work out. I get an error:</p>
  
  <blockquote>
    <p>image property not found on object of type (id).</p>
  </blockquote>
  
  <p>Here, satrImage1 to starImage5 are <code>UIImageViews</code>. halfRateButton1 to halfRateButton5 are buttons.</p>