--- rpl/src/instructions_p1.c 2011/04/11 13:02:23 1.17.2.1 +++ rpl/src/instructions_p1.c 2012/12/18 13:19:37 1.40 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.0.22 - Copyright (C) 1989-2011 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.12 + Copyright (C) 1989-2012 Dr. BERTRAND Joël This file is part of RPL/2. @@ -2108,8 +2108,6 @@ instruction_puissance(struct_processus * real8 argument; real8 exposant; - integer4 troncature; - integer8 tampon; logical1 drapeau; @@ -2330,17 +2328,7 @@ instruction_puissance(struct_processus * { f77puissanceri_(&((*((real8 *) (*s_objet_argument_2).objet))), &((*((integer8 *) (*s_objet_argument_1).objet))), - &((*((real8 *) (*s_objet_resultat).objet))), &troncature); - - if (troncature != 0) - { - liberation(s_etat_processus, s_objet_argument_1); - liberation(s_etat_processus, s_objet_argument_2); - liberation(s_etat_processus, s_objet_resultat); - - (*s_etat_processus).exception = d_ep_overflow; - return; - } + &((*((real8 *) (*s_objet_resultat).objet)))); } else { @@ -2414,18 +2402,7 @@ instruction_puissance(struct_processus * { f77puissanceci_(&((*((struct_complexe16 *) (*s_objet_argument_2) .objet))), &((*((integer8 *) (*s_objet_argument_1).objet))), - &((*((struct_complexe16 *) (*s_objet_resultat).objet))), - &troncature); - - if (troncature != 0) - { - liberation(s_etat_processus, s_objet_argument_1); - liberation(s_etat_processus, s_objet_argument_2); - liberation(s_etat_processus, s_objet_resultat); - - (*s_etat_processus).exception = d_ep_overflow; - return; - } + &((*((struct_complexe16 *) (*s_objet_resultat).objet)))); } else { @@ -3114,8 +3091,7 @@ instruction_purge(struct_processus *s_et return; } - if ((*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].objet == NULL) + if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) { liberation(s_etat_processus, s_objet); @@ -3154,8 +3130,7 @@ instruction_purge(struct_processus *s_et return; } - if ((*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].objet == NULL) + if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) { liberation(s_etat_processus, s_objet);