Need little help with this code

void timeError()  {
.
.
.
  loop();
}

This recursive call to loop() will cause a new set of local variables to be allocated on the stack. Eventually the stack will run out of space and your program will crash.