title: How to correct these warnings for "Convenience initializer missing a 'self' call to another initializer"
body: <p>I'm updating my code from iOS 8 to iOS 9+, and in Xcode 8.2 I'm getting these warnings and have no idea how to fix it. I've seen a couple SO posts from a few years ago suggesting the solution is to silence the compiler rather than adjust the code.</p>
  
  <p>What is the best way to handle these warnings without jeopardizing acceptance in the App Store?</p>
  
  <p>One thing to note that is not in the screenshot but is in the same file - this initializer:</p>
  
  <pre><code>-(instancetype)initWithCoder:(NSCoder*)decoder{
      if(self=[super init]){
          // If parent class also adopts NSCoding, replace [super init]
          // with [super initWithCoder:decoder] to properly initialize.
          text=[decoder decodeObjectForKey:@"text"];
          fontname=[decoder decodeObjectForKey:@"font"];
      }
      return self;
  }
  </code></pre>
  
  <p><a href="https://i.stack.imgur.com/CLSst.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/CLSst.png" alt="enter image description here"></a></p>
  
  <p>This is the accompanying Message.h:</p>
  
  <pre><code>#import &lt;Foundation/Foundation.h&gt;
  
  @interface Message : NSObject &lt;NSCoding&gt;{
      NSString    *text;
      NSString    *fontname;
      UIColor     *color;
      NSInteger   speed;
      NSInteger   fontsize;
      BOOL        isMirror;
      BOOL        isReverse;
      NSInteger   transStyle;
      NSInteger   transDir;
      NSInteger   transSpeed;
      BOOL        isTransition;
      BOOL        isTextOnly;
      NSInteger   transOther;
      NSInteger   transPause;
  }
  
  @property (nonatomic,retain)NSString    *text;
  @property (nonatomic,retain)NSString    *fontname;
  @property (nonatomic,retain)UIColor     *color;
  @property (nonatomic,assign)NSInteger   speed;
  @property (nonatomic,assign)NSInteger   fontsize;
  @property (nonatomic,assign)BOOL        isMirror;
  @property (nonatomic,assign)BOOL        isReverse;
  @property (nonatomic,assign)NSInteger   transStyle;
  @property (nonatomic,assign)NSInteger   transDir;
  @property (nonatomic,assign)NSInteger   transSpeed;
  @property (nonatomic,assign)NSInteger   transOther;
  @property (nonatomic,assign)NSInteger   transPause;
  @property (nonatomic,assign)BOOL        isTransition;
  @property (nonatomic,assign)BOOL        isTextOnly;
  
  - (void) encodeWithCoder:(NSCoder*)encoder;
  - (instancetype) initWithCoder:(NSCoder*)decoder NS_DESIGNATED_INITIALIZER;
  
  @end
  </code></pre>