Non-trivial type ... mapped message printed twice

When building a simple program like below with the trunk Clang
I see a warning “warning: Non-trivial type …” printed twice. Is this


class A {
A() {};

int main()
A a[100];
#pragma omp target teams distribute parallel for map(to: a[0:100])
for(int i=0; i<10; i++) {

First time it is printed when the code is compiled for the host, the second time when compjled for the device.

Best regards,
Alexey Bataev


Is it documented somewhere in the code as to the criteria of the triviality of a mapping?

It is documented in c++ standard.

Best regards,
Alexey Bataev