The getsecs() function is implemented in platform- and bootfw-specific files and, in a number of these places, there are problems with how they are declared.
- Some use int return instead of time_t. On some architectures the bit width of time_t does not naturally fit into an integer and can lead to some unexpected behavior. (For example, 32-bit ARM builds use a 64-bit time_t.)
- The function prototypes do not always specify void for the argument list, which can cause some compilers to complain about the prototype.
This block of if() can be naturally moved before calculating newinterp.