// RUN: %clang_cc1 %s -triple=amdgpu-amd-amdhsa -emit-llvm -o - | FileCheck %s
// PR5697
namespace PR5697 {
struct A {
  virtual void f() { }
  A();
  A(int);
};

// A does not have a key function, so the first constructor we emit should
// cause the vtable to be defined (without assertions.)
// CHECK: @_ZTVN6PR56971AE = linkonce_odr addrspace(1) constant
A::A() { }
A::A(int) { }
}

// Make sure that we don't assert when building the vtable for a class
// template specialization or explicit instantiation with a key
// function.
template<typename T>
struct Base {
  virtual ~Base();
};

template<typename T>
struct Derived : public Base<T> { };

template<>
struct Derived<char> : public Base<char> {
  virtual void anchor();
};

void Derived<char>::anchor() { }
