38 lines
878 B
C++
38 lines
878 B
C++
#include <features.h>
|
|
|
|
#if defined(__linux__) && defined(__GLIBC__) && (!defined(__GLIBC_PREREQ) || !__GLIBC_PREREQ(2, 38))
|
|
|
|
#include <cstdarg>
|
|
#include <cstdio>
|
|
#include <cstdlib>
|
|
|
|
extern "C" {
|
|
|
|
long __isoc23_strtol(const char* text, char** end, int base) {
|
|
return std::strtol(text, end, base);
|
|
}
|
|
|
|
unsigned long __isoc23_strtoul(const char* text, char** end, int base) {
|
|
return std::strtoul(text, end, base);
|
|
}
|
|
|
|
long long __isoc23_strtoll(const char* text, char** end, int base) {
|
|
return std::strtoll(text, end, base);
|
|
}
|
|
|
|
unsigned long long __isoc23_strtoull(const char* text, char** end, int base) {
|
|
return std::strtoull(text, end, base);
|
|
}
|
|
|
|
int __isoc23_sscanf(const char* text, const char* format, ...) {
|
|
va_list args;
|
|
va_start(args, format);
|
|
const int result = std::vsscanf(text, format, args);
|
|
va_end(args);
|
|
return result;
|
|
}
|
|
|
|
}
|
|
|
|
#endif
|