Time Library, makeTime() function return "4294880896

Hi guys, I was trying to use makeTime() function in Time Library. The code I made should be return 0, but instead it return 4294880896. Could anyone tell me where I did run? Or just tell me how to use makeTime() function?

#include<Time.h>
void setup() {
Serial.begin(9600);
}

void loop() {
setTime(sync());
Serial.println(now());
}

time_t sync() {
tmElements_t tm;
tm.Hour = 0;
tm.Minute = 0;
tm.Second = 0;
tm.Day = 0;
tm.Month = 0;
tm.Year = 0;
return makeTime(tm);
}

The day and month are not zero indexed. The time elements below return 0.

time_t sync() {
  tmElements_t tm;
  tm.Hour = 0;
  tm.Minute = 0;
  tm.Second = 0;
  tm.Day = 1;
  tm.Month = 1;
  tm.Year = 0;
  return makeTime(tm);