diff -Nur gcc-5.3.0.orig/libstdc++-v3/config/locale/generic/c_locale.h gcc-5.3.0/libstdc++-v3/config/locale/generic/c_locale.h
--- gcc-5.3.0.orig/libstdc++-v3/config/locale/generic/c_locale.h	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/config/locale/generic/c_locale.h	2016-04-05 16:01:00.873639884 +0200
@@ -70,7 +70,7 @@
     __builtin_va_list __args;
     __builtin_va_start(__args, __fmt);
 
-#ifdef _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
     const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args);
 #else
     const int __ret = __builtin_vsprintf(__out, __fmt, __args);
diff -Nur gcc-5.3.0.orig/libstdc++-v3/config/locale/gnu/c_locale.h gcc-5.3.0/libstdc++-v3/config/locale/gnu/c_locale.h
--- gcc-5.3.0.orig/libstdc++-v3/config/locale/gnu/c_locale.h	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/config/locale/gnu/c_locale.h	2016-04-05 16:01:00.873639884 +0200
@@ -88,7 +88,7 @@
     __builtin_va_list __args;
     __builtin_va_start(__args, __fmt);
 
-#ifdef _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
     const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args);
 #else
     const int __ret = __builtin_vsprintf(__out, __fmt, __args);
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/bits/basic_string.h gcc-5.3.0/libstdc++-v3/include/bits/basic_string.h
--- gcc-5.3.0.orig/libstdc++-v3/include/bits/basic_string.h	2015-11-25 17:11:33.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/bits/basic_string.h	2016-04-05 16:01:00.873639884 +0200
@@ -5246,7 +5246,7 @@
 _GLIBCXX_END_NAMESPACE_VERSION
 } // namespace
 
-#if __cplusplus >= 201103L && defined(_GLIBCXX_USE_C99)
+#if __cplusplus >= 201103L && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__))
 
 #include <ext/string_conversions.h>
 
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/bits/locale_facets_nonio.tcc gcc-5.3.0/libstdc++-v3/include/bits/locale_facets_nonio.tcc
--- gcc-5.3.0.orig/libstdc++-v3/include/bits/locale_facets_nonio.tcc	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/bits/locale_facets_nonio.tcc	2016-04-05 16:01:00.873639884 +0200
@@ -578,7 +578,7 @@
     {
       const locale __loc = __io.getloc();
       const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
-#ifdef _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
       // First try a buffer perhaps big enough.
       int __cs_size = 64;
       char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/bits/locale_facets.tcc gcc-5.3.0/libstdc++-v3/include/bits/locale_facets.tcc
--- gcc-5.3.0.orig/libstdc++-v3/include/bits/locale_facets.tcc	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/bits/locale_facets.tcc	2016-04-05 16:01:00.873639884 +0200
@@ -992,7 +992,7 @@
 	char __fbuf[16];
 	__num_base::_S_format_float(__io, __fbuf, __mod);
 
-#ifdef _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 	// Precision is always used except for hexfloat format.
 	const bool __use_prec =
 	  (__io.flags() & ios_base::floatfield) != ios_base::floatfield;
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/c_compatibility/math.h gcc-5.3.0/libstdc++-v3/include/c_compatibility/math.h
--- gcc-5.3.0.orig/libstdc++-v3/include/c_compatibility/math.h	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/c_compatibility/math.h	2016-04-05 16:01:00.873639884 +0200
@@ -56,7 +56,7 @@
 using std::floor;
 using std::fmod;
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 using std::fpclassify;
 using std::isfinite;
 using std::isinf;
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/c_compatibility/wchar.h gcc-5.3.0/libstdc++-v3/include/c_compatibility/wchar.h
--- gcc-5.3.0.orig/libstdc++-v3/include/c_compatibility/wchar.h	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/c_compatibility/wchar.h	2016-04-05 16:01:00.873639884 +0200
@@ -103,7 +103,7 @@
 using std::wmemset;
 using std::wcsftime;
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 using std::wcstold;
 using std::wcstoll;
 using std::wcstoull;
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/c_global/cmath gcc-5.3.0/libstdc++-v3/include/c_global/cmath
--- gcc-5.3.0.orig/libstdc++-v3/include/c_global/cmath	2015-11-24 14:25:07.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/c_global/cmath	2016-04-05 22:51:12.105067127 +0200
@@ -947,7 +947,7 @@
 
 #if __cplusplus >= 201103L
 
-#ifdef _GLIBCXX_USE_C99_MATH_TR1
+#if defined(_GLIBCXX_USE_C99_MATH_TR1) || defined(__UCLIBC__)
 
 #undef acosh
 #undef acoshf
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/c_global/cstdio gcc-5.3.0/libstdc++-v3/include/c_global/cstdio
--- gcc-5.3.0.orig/libstdc++-v3/include/c_global/cstdio	2015-02-01 16:11:08.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/c_global/cstdio	2016-04-05 16:01:00.873639884 +0200
@@ -146,7 +146,7 @@
   using ::vsprintf;
 } // namespace
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 
 #undef snprintf
 #undef vfscanf
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/c_global/cstdlib gcc-5.3.0/libstdc++-v3/include/c_global/cstdlib
--- gcc-5.3.0.orig/libstdc++-v3/include/c_global/cstdlib	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/c_global/cstdlib	2016-04-05 16:01:00.873639884 +0200
@@ -195,7 +195,7 @@
 _GLIBCXX_END_NAMESPACE_VERSION
 } // namespace
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 
 #undef _Exit
 #undef llabs
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/c_global/cwchar gcc-5.3.0/libstdc++-v3/include/c_global/cwchar
--- gcc-5.3.0.orig/libstdc++-v3/include/c_global/cwchar	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/c_global/cwchar	2016-04-05 16:01:00.885640349 +0200
@@ -232,7 +232,7 @@
 _GLIBCXX_END_NAMESPACE_VERSION
 } // namespace
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 
 #undef wcstold
 #undef wcstoll
@@ -289,7 +289,7 @@
   using std::vwscanf;
 #endif
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
   using std::wcstold;
   using std::wcstoll;
   using std::wcstoull;
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/c_std/cstdio gcc-5.3.0/libstdc++-v3/include/c_std/cstdio
--- gcc-5.3.0.orig/libstdc++-v3/include/c_std/cstdio	2015-02-01 16:11:08.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/c_std/cstdio	2016-04-05 16:01:00.885640349 +0200
@@ -144,7 +144,7 @@
   using ::vsprintf;
 } // namespace std
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 
 #undef snprintf
 #undef vfscanf
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/c_std/cstdlib gcc-5.3.0/libstdc++-v3/include/c_std/cstdlib
--- gcc-5.3.0.orig/libstdc++-v3/include/c_std/cstdlib	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/c_std/cstdlib	2016-04-05 16:01:00.885640349 +0200
@@ -192,7 +192,7 @@
 _GLIBCXX_END_NAMESPACE_VERSION
 } // namespace
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 
 #undef _Exit
 #undef llabs
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/c_std/cwchar gcc-5.3.0/libstdc++-v3/include/c_std/cwchar
--- gcc-5.3.0.orig/libstdc++-v3/include/c_std/cwchar	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/c_std/cwchar	2016-04-05 16:01:00.889640505 +0200
@@ -228,7 +228,7 @@
 _GLIBCXX_END_NAMESPACE_VERSION
 } // namespace
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 
 #undef wcstold
 #undef wcstoll
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/ext/vstring.h gcc-5.3.0/libstdc++-v3/include/ext/vstring.h
--- gcc-5.3.0.orig/libstdc++-v3/include/ext/vstring.h	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/ext/vstring.h	2016-04-05 16:01:00.889640505 +0200
@@ -2680,7 +2680,7 @@
 _GLIBCXX_END_NAMESPACE_VERSION
 } // namespace
 
-#if ((__cplusplus >= 201103L) && defined(_GLIBCXX_USE_C99))
+#if ((__cplusplus >= 201103L) && (defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)))
 
 #include <ext/string_conversions.h>
 
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/tr1/cmath gcc-5.3.0/libstdc++-v3/include/tr1/cmath
--- gcc-5.3.0.orig/libstdc++-v3/include/tr1/cmath	2015-11-24 14:25:07.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/tr1/cmath	2016-04-05 16:01:54.523720108 +0200
@@ -33,7 +33,7 @@
 
 #include <cmath>
 
-#ifdef _GLIBCXX_USE_C99_MATH_TR1
+#if defined(_GLIBCXX_USE_C99_MATH_TR1) || defined(__UCLIBC__)
 
 #undef acosh
 #undef acoshf
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/tr1/cstdio gcc-5.3.0/libstdc++-v3/include/tr1/cstdio
--- gcc-5.3.0.orig/libstdc++-v3/include/tr1/cstdio	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/tr1/cstdio	2016-04-05 16:01:00.889640505 +0200
@@ -33,7 +33,7 @@
 
 #include <cstdio>
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 
 namespace std _GLIBCXX_VISIBILITY(default)
 {
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/tr1/cstdlib gcc-5.3.0/libstdc++-v3/include/tr1/cstdlib
--- gcc-5.3.0.orig/libstdc++-v3/include/tr1/cstdlib	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/tr1/cstdlib	2016-04-05 16:01:00.889640505 +0200
@@ -35,7 +35,7 @@
 
 #if _GLIBCXX_HOSTED
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 
 namespace std _GLIBCXX_VISIBILITY(default)
 {
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/tr1/cwchar gcc-5.3.0/libstdc++-v3/include/tr1/cwchar
--- gcc-5.3.0.orig/libstdc++-v3/include/tr1/cwchar	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/tr1/cwchar	2016-04-05 16:01:00.889640505 +0200
@@ -52,7 +52,7 @@
   using std::vwscanf;
 #endif
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
   using std::wcstold;
   using std::wcstoll;
   using std::wcstoull;
diff -Nur gcc-5.3.0.orig/libstdc++-v3/include/tr1/stdlib.h gcc-5.3.0/libstdc++-v3/include/tr1/stdlib.h
--- gcc-5.3.0.orig/libstdc++-v3/include/tr1/stdlib.h	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/include/tr1/stdlib.h	2016-04-05 16:01:00.889640505 +0200
@@ -33,7 +33,7 @@
 
 #if _GLIBCXX_HOSTED
 
-#if _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
 
 using std::tr1::atoll;
 using std::tr1::strtoll;
diff -Nur gcc-5.3.0.orig/libstdc++-v3/src/c++11/debug.cc gcc-5.3.0/libstdc++-v3/src/c++11/debug.cc
--- gcc-5.3.0.orig/libstdc++-v3/src/c++11/debug.cc	2015-01-05 13:33:28.000000000 +0100
+++ gcc-5.3.0/libstdc++-v3/src/c++11/debug.cc	2016-04-05 16:01:00.889640505 +0200
@@ -788,7 +788,7 @@
 				     int __n __attribute__ ((__unused__)), 
 				     const char* __fmt, _Tp __s) const throw ()
     {
-#ifdef _GLIBCXX_USE_C99
+#if defined(_GLIBCXX_USE_C99) || defined(__UCLIBC__)
       std::snprintf(__buf, __n, __fmt, __s);
 #else
       std::sprintf(__buf, __fmt, __s);