diff --git a/ANNOUNCE b/ANNOUNCE
index a3538d0..026ee44 100644
--- a/ANNOUNCE
+++ b/ANNOUNCE
@@ -812,7 +812,7 @@
   Removed WRITE_WEIGHTED_FILTERED code, to save a few kbytes of the
     compiled library size. It never worked properly and as far as we can
     tell, no one uses it. The png_set_filter_heuristics() and
-    png_set_filter_heuristics_fixed() APIs are retained but deprecated.
+    png_set_filter_heuristics_fixed(). APIs are retained but deprecated.
 
 Send comments/corrections/commendations to png-mng-implement at lists.sf.net
 (subscription required; visit
diff --git a/CHANGES b/CHANGES
index d4f266b..48305d9 100644
--- a/CHANGES
+++ b/CHANGES
@@ -5107,7 +5107,7 @@
   Removed WRITE_WEIGHTED_FILTERED code, to save a few kbytes of the
     compiled library size. It never worked properly and as far as we can
     tell, no one uses it. The png_set_filter_heuristics() and
-    png_set_filter_heuristics_fixed() APIs are retained but deprecated.
+    png_set_filter_heuristics_fixed(). APIs are retained but deprecated.
 
 Send comments/corrections/commendations to png-mng-implement at lists.sf.net
 (subscription required; visit
diff --git a/libpng-manual.txt b/libpng-manual.txt
index 667505a..484c47d 100644
--- a/libpng-manual.txt
+++ b/libpng-manual.txt
@@ -4398,6 +4398,8 @@
 Note that the numbers above were invented purely for this example and
 are given only to help explain the function usage.  Little testing has
 been done to find optimum values for either the costs or the weights.
+This feature was removed from libpng-1.7.0 and later, because
+we are not aware of anyone actually testing it.
 
 Requesting debug printout
 
@@ -5143,6 +5145,11 @@
     png_malloc_default(),
     and png_free_default().
 
+These apparently unused experimental functions have been deprecated
+and the code within them, except for the APIs, has been removed.
+    png_set_filter_heuristics()
+    and png_set_filter_heuristics_fixed()
+
 The PNG_ABORT() macro was changed to PNG_ABORT, and the default is now
 "abort()" for all platforms (previously it was "ExitProcess(0)" on
 Windows platforms).  Starting with libpng-1.7.0 you have to define
diff --git a/libpng.3 b/libpng.3
index f87d8b4..322ea0a 100644
--- a/libpng.3
+++ b/libpng.3
@@ -4892,6 +4892,8 @@
 Note that the numbers above were invented purely for this example and
 are given only to help explain the function usage.  Little testing has
 been done to find optimum values for either the costs or the weights.
+This feature was removed from libpng-1.7.0 and later, because
+we are not aware of anyone actually testing it.
 
 .SS Requesting debug printout
 
@@ -5637,6 +5639,11 @@
     png_malloc_default(),
     and png_free_default().
 
+These apparently unused experimental functions have been deprecated
+and the code within them, except for the APIs, has been removed.
+    png_set_filter_heuristics()
+    and png_set_filter_heuristics_fixed()
+
 The PNG_ABORT() macro was changed to PNG_ABORT, and the default is now
 "abort()" for all platforms (previously it was "ExitProcess(0)" on
 Windows platforms).  Starting with libpng-1.7.0 you have to define
