Protect template argument from user interference.

llvm-svn: 244462
Cr-Mirrored-From: sso://chromium.googlesource.com/_direct/external/github.com/llvm/llvm-project
Cr-Mirrored-Commit: 08142fa6c7d63ad0a822e1e572a9c86478ba2737
diff --git a/include/type_traits b/include/type_traits
index db8a043..f0defaf 100644
--- a/include/type_traits
+++ b/include/type_traits
@@ -219,8 +219,8 @@
 template <class>
 struct __void_t { typedef void type; };
 
-template <class T>
-struct __identity { typedef T type; };
+template <class _Tp>
+struct __identity { typedef _Tp type; };
 
 template <class _Tp, bool>
 struct _LIBCPP_TYPE_VIS_ONLY __dependent_type : public _Tp {};