title: Cannot implement two interfaces that have the same method name
body: <p>This doesn't work:</p>
  
  <pre><code>interface TestInterface
  {
      public function testMethod();
  }
  
  interface TestInterface2
  {
      public function testMethod();
  }
  
  class TestClass implements TestInterface, TestInterface2
  {
  
  }
  </code></pre>
  
  <p>Gives me the error:</p>
  
  <blockquote>
    <p>Fatal error: Can't inherit abstract function TestInterface2::testMethod() (previously declared abstract in TestInterface).</p>
  </blockquote>
  
  <p>Is that correct? Why is this not allowed? Doesn't make sense to me.</p>
  
  <p>This also happens with abstract functions, for example if you implement an interface and then inherit from a class that has an abstract function of the same name.</p>