diff --git a/gcc/testsuite/g++.dg/template/dtor12.C b/gcc/testsuite/g++.dg/template/dtor12.C
new file mode 100644
index 00000000000..2c75ee03d8e
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/dtor12.C
@@ -0,0 +1,19 @@
+// PR c++/101740
+
+template<template<class> class T, class U>
+struct Test{
+    void fun(){
+        T<U> d;
+        d.~GG<int>();  // #1
+    }
+};
+
+template<class >
+struct GG {};
+
+int
+main ()
+{
+  Test<GG, int> b;
+  b.fun();
+}
