Am 03.02.2012 13:38, schrieb Jacob Carlborg:
On 2012-02-03 13:24, dennis luehring wrote:
 Am 03.02.2012 13:10, schrieb dennis luehring:
 Am 03.02.2012 13:02, schrieb Jonathan M Davis:
 C++ doesn't have interfaces, and C# and Java don't allow function
 implementations of any kind on interfaces. The same is not true for D.

 but as you can see in my example - my static function isn't implemented
 in the interface scope

 interface test
 {
 static void blub();<----
 }

 there is no example of an not implemented static in a interface



 i think should file an bug report for both

The implementation could come from a different object file. But you
should get a linker error if it doesn't.


another problem i've found

interface itest
{
  static void blub(){};
}

class A: itest
{
  void blub(){};
}

class A overrides (silently) the static blub from the interface with an normal method

itest it = new A();

A.blub(); // error - not a static
it.blub(); // ok

or

interface itest
{
  static void blub(){}
}

class A: itest
{
  static void blub(){}
}

class A just override blub()

Reply via email to