title: Objective-C overriding _Nullable parameter with _Nonnull parameter
body: <p>Why this code generates the following warning?</p>
  
  <pre><code>@interface Foo : NSObject 
  - (void)m:(id _Nullable)p;
  @end
  
  @interface Bar : Foo
  - (void)m:(id _Nonnull)p;
  @end
  </code></pre>
  
  <p>conflicting nullability specifier on parameter types, '_Nonnull' conflicts with existing specifier '_Nullable' [-Wnullability]</p>
  
  <p>But the other way does not generate warnings:</p>
  
  <pre><code>@interface Foo : NSObject 
  - (void)m:(id _Nonnull)p;
  @end
  
  @interface Bar : Foo
  - (void)m:(id _Nullable)p;
  @end
  </code></pre>
  
  <p>Is it because in the second case we going from more restrictive to less restrictive?</p>