Snap for 4603395 from 68aaead27cb9afcf496ec4f2f76832e1af675c3c to pi-release

Change-Id: I51f752e1795e0f40a201a4c9bcd8dd602ca6f03d
diff --git a/include/__config b/include/__config
index ecc668b..a4acbca 100644
--- a/include/__config
+++ b/include/__config
@@ -905,7 +905,7 @@
 #endif
 
 #ifndef _LIBCPP_EXTERN_TEMPLATE
-#define _LIBCPP_EXTERN_TEMPLATE(...)
+#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__;
 #endif
 
 #ifndef _LIBCPP_EXTERN_TEMPLATE2
diff --git a/src/algorithm.cpp b/src/algorithm.cpp
index 132a51d..f036eb7 100644
--- a/src/algorithm.cpp
+++ b/src/algorithm.cpp
@@ -7,8 +7,6 @@
 //
 //===----------------------------------------------------------------------===//
 
-#undef _LIBCPP_EXTERN_TEMPLATE
-#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__;
 #include "algorithm"
 #include "random"
 #include "mutex"
diff --git a/src/ios.cpp b/src/ios.cpp
index c1d2327..0f1d88e 100644
--- a/src/ios.cpp
+++ b/src/ios.cpp
@@ -9,9 +9,6 @@
 
 #include "__config"
 
-#undef _LIBCPP_EXTERN_TEMPLATE
-#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__;
-
 #include "ios"
 
 #include <stdlib.h>
diff --git a/src/locale.cpp b/src/locale.cpp
index bea7ba3..11f864a 100644
--- a/src/locale.cpp
+++ b/src/locale.cpp
@@ -7,9 +7,6 @@
 //
 //===----------------------------------------------------------------------===//
 
-#undef _LIBCPP_EXTERN_TEMPLATE
-#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__;
-
 // On Solaris, we need to define something to make the C99 parts of localeconv
 // visible.
 #ifdef __sun__
diff --git a/src/string.cpp b/src/string.cpp
index 6a175f2..d7ebdd3 100644
--- a/src/string.cpp
+++ b/src/string.cpp
@@ -7,9 +7,6 @@
 //
 //===----------------------------------------------------------------------===//
 
-#undef _LIBCPP_EXTERN_TEMPLATE
-#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__;
-
 #include "string"
 #include "cstdlib"
 #include "cwchar"
diff --git a/src/valarray.cpp b/src/valarray.cpp
index f6745df..2d8db52 100644
--- a/src/valarray.cpp
+++ b/src/valarray.cpp
@@ -7,9 +7,6 @@
 //
 //===----------------------------------------------------------------------===//
 
-#undef _LIBCPP_EXTERN_TEMPLATE
-#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__;
-
 #include "valarray"
 
 _LIBCPP_BEGIN_NAMESPACE_STD