about summary refs log tree commit diff
path: root/src/ctype/wctrans.c
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2014-07-02 21:16:05 -0400
committerRich Felker <dalias@aerifal.cx>2014-07-02 21:16:05 -0400
commitd89fdec51b5849ebdf8000ff1c2fb49878004f39 (patch)
tree3f417d463f914ba78c594ca44d9e9c0fb0f629e4 /src/ctype/wctrans.c
parent0bc03091bb674ebb9fa6fe69e4aec1da3ac484f2 (diff)
downloadmusl-d89fdec51b5849ebdf8000ff1c2fb49878004f39.tar.gz
musl-d89fdec51b5849ebdf8000ff1c2fb49878004f39.tar.xz
musl-d89fdec51b5849ebdf8000ff1c2fb49878004f39.zip
consolidate *_l ctype/wctype functions into their non-_l source files
the main practical purposes of this commit are to remove a huge amount
of clutter from the src/locale directory, to cut down on the length of
the $(AR) and $(LD) command lines, and to reduce the amount of space
wasted by object file headers in the static libc.a. build time may
also be reduced, though this has not been measured.

as an additional justification, if there ever were a need for the
behavior of these functions to vary by locale, it would be necessary
for the non-_l versions to call the _l versions, so that linking the
former without the latter would not be possible anyway.
Diffstat (limited to 'src/ctype/wctrans.c')
-rw-r--r--src/ctype/wctrans.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/ctype/wctrans.c b/src/ctype/wctrans.c
index 739869d0..b1b12654 100644
--- a/src/ctype/wctrans.c
+++ b/src/ctype/wctrans.c
@@ -1,5 +1,6 @@
 #include <wctype.h>
 #include <string.h>
+#include "libc.h"
 
 wctrans_t wctrans(const char *class)
 {
@@ -14,3 +15,16 @@ wint_t towctrans(wint_t wc, wctrans_t trans)
 	if (trans == (wctrans_t)2) return towlower(wc);
 	return wc;
 }
+
+wctrans_t __wctrans_l(const char *s, locale_t l)
+{
+	return wctrans(s);
+}
+
+wint_t __towctrans_l(wint_t c, wctrans_t t, locale_t l)
+{
+	return towctrans(c, t);
+}
+
+weak_alias(__wctrans_l, wctrans_l);
+weak_alias(__towctrans_l, towctrans_l);