--- rpl/src/instructions_j1.c 2011/06/22 13:27:01 1.22 +++ rpl/src/instructions_j1.c 2019/10/31 15:40:12 1.65 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.1.0.prerelease.3 - Copyright (C) 1989-2011 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.32 + Copyright (C) 1989-2019 Dr. BERTRAND Joël This file is part of RPL/2. @@ -165,7 +165,7 @@ instruction_jdate(struct_processus *s_et if ((*(*l_element_courant).donnee).type == INT) { - heure_julienne = (*((integer8 *) (*(*l_element_courant) + heure_julienne = (real8) (*((integer8 *) (*(*l_element_courant) .donnee).objet)); } else if ((*(*l_element_courant).donnee).type == REL) @@ -196,9 +196,9 @@ instruction_jdate(struct_processus *s_et e = c - ((1461 * d) / 4); m = ((5 * (e - 1)) + 2) / 153; - stm.tm_mday = e - (((153 * m) + 2) / 5); - stm.tm_mon = m + 3 - ((12 * (m / 10)) + 1); - stm.tm_year = (100 * b) + (m / 10) + d - (4800 + 1900); + stm.tm_mday = (int) (e - (((153 * m) + 2) / 5)); + stm.tm_mon = (int) (m + 3 - ((12 * (m / 10)) + 1)); + stm.tm_year = (int) ((100 * b) + (m / 10) + d - (4800 + 1900)); heure_julienne *= 24; stm.tm_hour = (int) floor(heure_julienne); @@ -214,7 +214,7 @@ instruction_jdate(struct_processus *s_et heure_julienne -= stm.tm_sec; horodatage.tv_sec = mktime(&stm); - horodatage.tv_usec = heure_julienne * 1000000; + horodatage.tv_usec = (suseconds_t) (heure_julienne * 1000000); if (horodatage.tv_sec == -1) {