about summary refs log tree commit diff
path: root/misc
diff options
context:
space:
mode:
Diffstat (limited to 'misc')
-rw-r--r--misc/efgcvt-template.c5
-rw-r--r--misc/efgcvt.c1
-rw-r--r--misc/fstab.c3
-rw-r--r--misc/hsearch.c4
-rw-r--r--misc/mntent.c5
-rw-r--r--misc/qefgcvt.c1
-rw-r--r--misc/unwind-link.c2
7 files changed, 13 insertions, 8 deletions
diff --git a/misc/efgcvt-template.c b/misc/efgcvt-template.c
index 27a00a3ab5..00d0aa1d7e 100644
--- a/misc/efgcvt-template.c
+++ b/misc/efgcvt-template.c
@@ -22,6 +22,7 @@
 #include <sys/param.h>
 #include <libc-lock.h>
 #include <math_ldbl_opt.h>
+#include <set-freeres.h>
 
 #ifndef SPRINTF
 # define SPRINTF sprintf
@@ -38,7 +39,7 @@
 
 static char FCVT_BUFFER[MAXDIG];
 static char ECVT_BUFFER[MAXDIG];
-libc_freeres_ptr (static char *FCVT_BUFPTR);
+static char *FCVT_BUFPTR;
 
 char *
 __FCVT (FLOAT_TYPE value, int ndigit, int *decpt, int *sign)
@@ -73,3 +74,5 @@ __GCVT (FLOAT_TYPE value, int ndigit, char *buf)
   SPRINTF (buf, "%.*" FLOAT_FMT_FLAG "g", MIN (ndigit, NDIGIT_MAX), value);
   return buf;
 }
+
+weak_alias (FCVT_BUFPTR, __EFGCVT_FREEMEM_PTR);
diff --git a/misc/efgcvt.c b/misc/efgcvt.c
index 53673a08fe..f2a33afcdf 100644
--- a/misc/efgcvt.c
+++ b/misc/efgcvt.c
@@ -24,6 +24,7 @@
 #define __GCVT __gcvt
 #define __ECVT_R __ecvt_r
 #define __FCVT_R __fcvt_r
+#define __EFGCVT_FREEMEM_PTR __libc_efgcvt_freemem_ptr
 #include <efgcvt-dbl-macros.h>
 #include <efgcvt-template.c>
 
diff --git a/misc/fstab.c b/misc/fstab.c
index 0e04235a2b..ea4afc7d0f 100644
--- a/misc/fstab.c
+++ b/misc/fstab.c
@@ -177,7 +177,8 @@ fstab_convert (struct fstab_state *state)
 
 /* Make sure the memory is freed if the programs ends while in
    memory-debugging mode and something actually was allocated.  */
-libc_freeres_fn (fstab_free)
+void
+__libc_fstab_freemem (void)
 {
   char *buffer;
 
diff --git a/misc/hsearch.c b/misc/hsearch.c
index 615f7f08a3..f9a3f9267a 100644
--- a/misc/hsearch.c
+++ b/misc/hsearch.c
@@ -46,7 +46,3 @@ __hdestroy (void)
   __hdestroy_r (&htab);
 }
 weak_alias (__hdestroy, hdestroy)
-
-/* Make sure the table is freed if we want to free everything before
-   exiting.  */
-text_set_element (__libc_subfreeres, __hdestroy);
diff --git a/misc/mntent.c b/misc/mntent.c
index 4a1c5444cf..61dc63f253 100644
--- a/misc/mntent.c
+++ b/misc/mntent.c
@@ -19,6 +19,7 @@
 #include <mntent.h>
 #include <stdlib.h>
 #include <allocate_once.h>
+#include <set-freeres.h>
 
 struct mntent_buffer
 {
@@ -28,7 +29,7 @@ struct mntent_buffer
 
 /* We don't want to allocate the static buffer all the time since it
    is not always used (in fact, rather infrequently).  */
-libc_freeres_ptr (static void *mntent_buffer);
+static void *mntent_buffer;
 
 static void *
 allocate (void *closure)
@@ -56,3 +57,5 @@ getmntent (FILE *stream)
   return __getmntent_r (stream, &buffer->m,
 			buffer->buffer, sizeof (buffer->buffer));
 }
+
+weak_alias (mntent_buffer, __libc_mntent_freemem_ptr)
diff --git a/misc/qefgcvt.c b/misc/qefgcvt.c
index 91a3e2014a..a4ea8b801e 100644
--- a/misc/qefgcvt.c
+++ b/misc/qefgcvt.c
@@ -24,6 +24,7 @@
 #define __GCVT __qgcvt
 #define __ECVT_R __qecvt_r
 #define __FCVT_R __qfcvt_r
+#define __EFGCVT_FREEMEM_PTR __libc_qefgcvt_freemem_ptr
 #include <efgcvt-ldbl-macros.h>
 #include <efgcvt-template.c>
 
diff --git a/misc/unwind-link.c b/misc/unwind-link.c
index 63b655949e..c1e971b305 100644
--- a/misc/unwind-link.c
+++ b/misc/unwind-link.c
@@ -131,7 +131,7 @@ __libc_unwind_link_after_fork (void)
     }
 }
 
-void __libc_freeres_fn_section
+void
 __libc_unwind_link_freeres (void)
 {
   if (global_libgcc_handle != NULL)