#include <iostream>
#include <type_traits>

using namespace std;

template<typename T>
T test(typename enable_if<is_integral<T>::value, void*>::type = nullptr)
{
	return -1;
}

template<typename T>
T test(typename enable_if<is_pointer<T>::value, void*>::type = nullptr)
{
	return nullptr;
}

int main() {
	// your code goes here
	cout << test<int *>() << endl;
	cout << test<int>()   << endl;
	return 0;
}