title: Mapstruct extending multiple interfaces containing method with the same signature
body: <p>I use 2 libraries in my project which require mappers with the different interfaces:</p>
  
  <pre><code>public interface FirstLibraryMapper&lt;T, M&gt; {
  
      M mapToDto(T domain);
  
      List&lt;M&gt; mapToDto(List&lt;T&gt; domains);
  
  }
  
  public interface SecondLibraryMapper&lt;T, M&gt; {
  
      M mapToDto(T domain);
  
  }
  </code></pre>
  
  <p>I want to create a single mapper bean using mapstruct that will be injected in libraries components by interface because both interfaces have a method with exact signature:</p>
  
  <pre><code>@Mapper
  public interface MyMapper extends FirstLibraryMapper&lt;MyDomain, MyDto&gt;, SecondLibraryMapper&lt;MyDomain, MyDto&gt; {
  
  }
  </code></pre>
  
  <p>When I try to compile, I get this error:</p>
  
  <pre><code>Ambiguous mapping methods found for mapping collection element to MyDto: MyDto mapToDto(MyDomain arg0), MyDto mapToDto(MyDomain arg0).
  </code></pre>
  
  <p>I was able to bypass this issue by using @Named and @IterableMapping but it feels wrong and clunky. Why can't mapstruct processor ignore the second method if it has an exact signature as the first one? Should I rise an issue on their github page? Or am I wrong in that case?</p>