github.com/afumu/libc@v0.0.6/musl/compat/time32/mktime32.c (about)

     1  #include "time32.h"
     2  #include <time.h>
     3  #include <errno.h>
     4  #include <stdint.h>
     5  
     6  time32_t __mktime32(struct tm *tm)
     7  {
     8  	struct tm tmp = *tm;
     9  	time_t t = mktime(&tmp);
    10  	if (t < INT32_MIN || t > INT32_MAX) {
    11  		errno = EOVERFLOW;
    12  		return -1;
    13  	}
    14  	*tm = tmp;
    15  	return t;
    16  }