diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index a721a75a09372eb0191f3c2fd107b06d8fa45fd5..dd98c39fc03917702deb3196f9a8d75c0933058a 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2004-08-11  Mark Mitchell  <mark@codesourcery.com>
+
+	PR c++/16717
+	* g++.dg/ext/construct1.C: New test.
+
 2004-08-11  Mark Mitchell  <mark@codesourcery.com>
 
 	PR c++/16853
diff --git a/gcc/testsuite/g++.dg/ext/construct1.C b/gcc/testsuite/g++.dg/ext/construct1.C
new file mode 100644
index 0000000000000000000000000000000000000000..6a7d8cee403058140274dc49246f4fe6b00ed83e
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/construct1.C
@@ -0,0 +1,12 @@
+// PR c++/16717
+// { dg-options "-O2" }
+
+int i;
+
+void hello (void) __attribute__ ((constructor));
+void hello (void) { i = 1; }
+
+int main (void) {
+  if (i != 1)
+    return 1;
+}