summaryrefslogtreecommitdiff
path: root/locale
diff options
context:
space:
mode:
Diffstat (limited to 'locale')
-rw-r--r--locale/lc-ctype.c5
-rw-r--r--locale/nl_langinfo.c7
2 files changed, 8 insertions, 4 deletions
diff --git a/locale/lc-ctype.c b/locale/lc-ctype.c
index c634d12adb..2384d17a39 100644
--- a/locale/lc-ctype.c
+++ b/locale/lc-ctype.c
@@ -40,10 +40,11 @@ _nl_postload_ctype (void)
#else
#error bizarre byte order
#endif
-#define eval(x) x
+#define paste(a,b) paste1(a,b)
+#define paste1(a,b) a##b
#define current(unsigned,x) \
- ((const unsigned int *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_##eval(x)) \
+ ((const unsigned int *) _NL_CURRENT (LC_CTYPE, paste(_NL_CTYPE_,x)) \
+ 128)
__ctype_b = current (unsigned short, CLASS);
diff --git a/locale/nl_langinfo.c b/locale/nl_langinfo.c
index 4d02abf49e..83d35dcb70 100644
--- a/locale/nl_langinfo.c
+++ b/locale/nl_langinfo.c
@@ -18,6 +18,9 @@ not, write to the Free Software Foundation, Inc., 675 Mass Ave,
Cambridge, MA 02139, USA. */
#include <langinfo.h>
+#include <errno.h>
+#include <stddef.h>
+#include "localeinfo.h"
/* This array duplicates `_nl_current' defined in setlocale.c; but since
the references here are not weak references, this guarantees that the
@@ -49,7 +52,7 @@ nl_langinfo (item)
return NULL;
}
- data = nldata[category];
+ data = *nldata[category];
if (index >= data->nstrings)
{
@@ -59,5 +62,5 @@ nl_langinfo (item)
}
/* Return the string for the specified item. */
- return (char *) nldata->strings[index];
+ return (char *) data->strings[index];
}