#include <iostream>
#include <type_traits>
using namespace std;
template <class T>
struct Foo
{
Foo() = default;
explicit Foo(T* obj) : m_data(obj)
{ }
T* m_data;
};
int main()
{
cout << boolalpha << std::is_pod<Foo<int>>::value << endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dHlwZV90cmFpdHM+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp0ZW1wbGF0ZSA8Y2xhc3MgVD4Kc3RydWN0IEZvbyAKewogICAgRm9vKCkgPSBkZWZhdWx0OwoKCWV4cGxpY2l0IEZvbyhUKiBvYmopIDogbV9kYXRhKG9iaikKCXsgfQoKCVQqIG1fZGF0YTsKfTsKCmludCBtYWluKCkKewoJY291dCA8PCBib29sYWxwaGEgPDwgc3RkOjppc19wb2Q8Rm9vPGludD4+Ojp2YWx1ZSA8PCBlbmRsOwp9Cg==