とりあえずこれでdmdは大人しくなってlib作れたけど
そもそも元のソースで構造体変数にnullをセットするようになってたのはOKなのか・・・

class bzNullContact : bzContact
{
  private bzShape s1_;
  private bzShape s2_;
  this()
  {
    super(s1_, s2_);
  }
  override void evaluate(bzContactListener listener) {}
}