64 extern int printf(
const char * format, ...);
68#define MACRO_STRINGIFY(item) "" #item
69#define COND_CODE(macro, code) \
71 if (my_strcmp("" #macro, MACRO_STRINGIFY(macro))) { \
76#define PRINT_COND(macro) \
78 if (my_strcmp("" #macro, MACRO_STRINGIFY(macro))) { \
79 printf("- %s\t%s\n", #macro, MACRO_STRINGIFY(macro)); \
81 printf("- %s\t-\n", #macro); \
86 printf(
"Operating System\n");
115 printf(
"Unix Standards Inputs\n");
123 printf(
"Unix Standards Outputs\n");
132 printf(
"GLIBC C Library Outputs\n");
138 printf(
"Bionic C Library Outputs\n");
142 printf(
"uClibc C Library Outputs\n");
146 printf(
"GNU C++ Library Outputs\n");
151 printf(
"C++ Library Outputs\n");
168 return ::strcmp(s1, s2);
177#if defined __x86_64__ && defined __ILP32__
180 return sizeof( __int64_t );
182 return sizeof(
long int );
186 return sizeof(
long int );
195#if __WORDSIZE == 64 \
196 || (defined __SYSCALL_WORDSIZE && __SYSCALL_WORDSIZE == 64) \
199 return sizeof( int64_t );
202 return sizeof(
long int );
206TEST_CASE(
"Unix StandardsTest 01.00",
"[unix][posix]" ) {
209 using time_t_type =
decltype(timespec::tv_sec);
212 CHECK(
true == std::is_signed_v<time_t_type> );
214 using ns_type =
decltype(timespec::tv_nsec);
217 CHECK(
true == std::is_signed_v<ns_type> );
222 REQUIRE( 8 ==
sizeof(off64_t) );
std::string to_string(const alphabet &v) noexcept
int my_strcmp(const char *, const char *)
static int sizeof_time_t()
Resembling the GNU/Linux bits/types.h, documenting whether time_t is 32-bit (arm-32) or 64-bit (arm-6...
#define PRINT_COND(macro)
int printf(const char *format,...)
Operating Systems predefined macros.
TEST_CASE("Unix StandardsTest 01.00", "[unix][posix]")
static int sizeof_tv_nsec()
Resembling the GNU/Linux bits/types.h, documenting whether tv_nsec of struct timespec is 32-bit (arm-...