The Intel Fortran portability function SECNDS() seems to have a bug in version 16.1, at least on Red Hat Enterprise Linux 6.
SECNDS() is supposed to return the elapsed seconds since midnight, minus the argument. If you begin a program before midnight and invoke SECNDS(0.0) one or more times, then invoke SECNDS(0.0) after midnight, all calls after midnight return the value of the last call before midnight.
Code to re-produce this is trivial; the hard part is executing it at the right time. Having root privileges to change system time helps!
I do not recall seeing this in version 15, but could be mistaken. And if there is a bug, it might not be in Intel Fortran. A workaround is as good as a fix.
Jay