--- rpl/src/instructions_j1.c 2013/02/27 17:11:42 1.40 +++ rpl/src/instructions_j1.c 2013/03/20 17:11:45 1.41 @@ -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) {