diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 793f785d82a647d3988e55f0f98d57af565cb94d..3f00636946fbe3da4b752250ab2e61f79e11938b 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2003-10-17  Kriang Lerdsuwanakij  <lerdsuwa@users.sourceforge.net>
+
+	PR c++/12369
+	* g++.dg/template/friend25.C: New test.
+
 2003-10-16  Ziemowit Laski  <zlaski@apple.com>
 
 	* objc.dg/try-catch-2.m: Relax target triple to all Darwin
diff --git a/gcc/testsuite/g++.dg/template/friend25.C b/gcc/testsuite/g++.dg/template/friend25.C
new file mode 100644
index 0000000000000000000000000000000000000000..fa11defc21ae941904d2774c9fd5db15f58225b1
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/friend25.C
@@ -0,0 +1,14 @@
+// { dg-do compile }
+
+// Origin: Jiangbin Zhao <zhaojiangbin@yahoo.com>
+
+// PR c++/12369: ICE for specialization of member function template
+// as friend in ordinary class.
+
+struct A {
+    template<class T> T* make() { return new T(); }
+};
+ 
+struct B {
+    friend B* A::make< B >(); // (1)
+};