[Ada] Set GNAT.OS_Lib.GM_Split's granularity back to 1 second

Message ID 20190820095127.GA75566@adacore.com
State New
Headers show
  • [Ada] Set GNAT.OS_Lib.GM_Split's granularity back to 1 second
Related show

Commit Message

Pierre-Marie de Rodat Aug. 20, 2019, 9:51 a.m.
The modification to round time up to even second was added decades ago.
It was done to avoid unneeded recompilations when the project was built
on non-FAT filesystems and then moved to FAT filesystems. Such a
situation is now very rare and does not deserve time distortion.

Tested on x86_64-pc-linux-gnu, committed on trunk

2019-08-20  Dmitriy Anisimkov  <anisimko@adacore.com>


	* adaint.c (__gnat_to_gm_time): On _WIN32, don't round time up
	to even second.


--- gcc/ada/adaint.c
+++ gcc/ada/adaint.c
@@ -344,7 +344,7 @@  int __gnat_use_acl = 1;
    system provides the routine readdir_r.
    ... but we never define it anywhere???  */
 #define MAYBE_TO_PTR32(argv) argv
 static const char ATTR_UNSET = 127;
@@ -411,13 +411,6 @@  __gnat_to_gm_time (OS_Time *p_time, int *p_year, int *p_month, int *p_day,
   struct tm *res;
   time_t time = (time_t) *p_time;
-#ifdef _WIN32
-  /* On Windows systems, the time is sometimes rounded up to the nearest
-     even second, so if the number of seconds is odd, increment it.  */
-  if (time & 1)
-    time++;
   res = gmtime (&time);
   if (res)