// { dg-do compile }
// Origin: Giovanni Bajo <giovannibajo at gcc dot gnu dot org>
// DR213: Lookup in dependent base classes

// We should emit an error at *instantiation* time because g(t) can't be
//  resolved to any function.

template <class T> struct A : T {
  void h(T t) {
    f(t);
    g(t);     // { dg-message "" }
  }
};

struct B {
  void f(B);
  void g(B) {}
};

void f(B) {}

int main()
{
  A<B> ab;
  B b;
  ab.h(b);   // { dg-message "required" }
}
