// RUN: %clang_cc1 %s --std=c++11 -triple x86_64-linux-unknown -fsyntax-only -o - -verify

#include "Inputs/cuda.h"

struct A {
  int a;
  __device__ A() { a = 1; }
  __device__ ~A() { a = 2; }
};

// This can be a global var since ctor/dtors of data members are not called.
union B {
  A a;
  __device__ B() {}
  __device__ ~B() {}
};

// This cannot be a global var since it has a dynamic ctor.
union C {
  A a;
  __device__ C() { a.a = 3; }
  __device__ ~C() {}
};

// This cannot be a global var since it has a dynamic dtor.
union D {
  A a;
  __device__ D() { }
  __device__ ~D() { a.a = 4; }
};

__device__ B b;
__device__ C c;
// expected-error@-1 {{dynamic initialization is not supported for __device__, __constant__, __shared__, and __managed__ variables}}
__device__ D d;
// expected-error@-1 {{dynamic initialization is not supported for __device__, __constant__, __shared__, and __managed__ variables}}

__device__ void foo() {
  __shared__ B b;
  __shared__ C c;
  // expected-error@-1 {{initialization is not supported for __shared__ variables}}
  __shared__ D d;
  // expected-error@-1 {{initialization is not supported for __shared__ variables}}
}
