svn commit: r231682 - in head: include lib/libc/locale
David Chisnall
theraven at FreeBSD.org
Tue Feb 14 14:24:38 UTC 2012
Author: theraven
Date: Tue Feb 14 14:24:37 2012
New Revision: 231682
URL: http://svn.freebsd.org/changeset/base/231682
Log:
Fix a misplaced __NO_TLS locations, and change a GNUism to a C11ism for
consistency.
Approved by: brooks (mentor)
Modified:
head/include/runetype.h
head/lib/libc/locale/setrunelocale.c
head/lib/libc/locale/xlocale_private.h
Modified: head/include/runetype.h
==============================================================================
--- head/include/runetype.h Tue Feb 14 14:19:53 2012 (r231681)
+++ head/include/runetype.h Tue Feb 14 14:24:37 2012 (r231682)
@@ -86,10 +86,10 @@ typedef struct {
__BEGIN_DECLS
extern const _RuneLocale _DefaultRuneLocale;
extern const _RuneLocale *_CurrentRuneLocale;
-extern const _Thread_local _RuneLocale *_ThreadRuneLocale;
#if defined(__NO_TLS) || defined(__RUNETYPE_INTERNAL)
extern const _RuneLocale *__getCurrentRuneLocale(void);
#else
+extern const _Thread_local _RuneLocale *_ThreadRuneLocale;
static inline const _RuneLocale *__getCurrentRuneLocale(void)
{
Modified: head/lib/libc/locale/setrunelocale.c
==============================================================================
--- head/lib/libc/locale/setrunelocale.c Tue Feb 14 14:19:53 2012 (r231681)
+++ head/lib/libc/locale/setrunelocale.c Tue Feb 14 14:24:37 2012 (r231682)
@@ -183,6 +183,8 @@ __wrap_setrunelocale(const char *locale)
_CurrentRuneLocale = __xlocale_global_ctype.runes;
return (_LDP_LOADED);
}
+
+#ifndef __NO_TLS
void
__set_thread_rune_locale(locale_t loc) {
@@ -192,10 +194,11 @@ __set_thread_rune_locale(locale_t loc) {
_ThreadRuneLocale = XLOCALE_CTYPE(loc)->runes;
}
}
+#endif
+
void *
__ctype_load(const char *locale, locale_t unused)
{
-#ifndef __NO_TLS
struct xlocale_ctype *l = calloc(sizeof(struct xlocale_ctype), 1);
l->header.header.destructor = destruct_ctype;
if (__setrunelocale(l, locale))
@@ -204,5 +207,4 @@ __ctype_load(const char *locale, locale_
return NULL;
}
return l;
-#endif
}
Modified: head/lib/libc/locale/xlocale_private.h
==============================================================================
--- head/lib/libc/locale/xlocale_private.h Tue Feb 14 14:19:53 2012 (r231681)
+++ head/lib/libc/locale/xlocale_private.h Tue Feb 14 14:24:37 2012 (r231682)
@@ -183,7 +183,7 @@ extern int __has_thread_locale;
* The per-thread locale. Avoids the need to use pthread lookup functions when
* getting the per-thread locale.
*/
-extern __thread locale_t __thread_locale;
+extern _Thread_local locale_t __thread_locale;
/**
* Returns the current locale for this thread, or the global locale if none is
More information about the svn-src-head
mailing list