--- rpl/src/instructions_v2.c 2011/04/21 16:00:59 1.18 +++ rpl/src/instructions_v2.c 2017/08/03 17:17:49 1.60 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.1.0.prerelease.0 - Copyright (C) 1989-2011 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.28 + Copyright (C) 1989-2017 Dr. BERTRAND Joël This file is part of RPL/2. @@ -94,13 +94,11 @@ instruction_volatile(struct_processus *s return; } - if (((*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].origine == 'P') - ? ((*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].variable_statique.adresse == 0) - : ((*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].variable_statique.pointeur - == NULL)) + if (((*(*s_etat_processus).pointeur_variable_courante).origine == 'P') + ? ((*(*s_etat_processus).pointeur_variable_courante) + .variable_statique.adresse == 0) + : ((*(*s_etat_processus).pointeur_variable_courante) + .variable_statique.pointeur == NULL)) { liberation(s_etat_processus, s_objet); @@ -111,26 +109,23 @@ instruction_volatile(struct_processus *s { if (retrait_variable_statique(s_etat_processus, (*((struct_nom *) (*s_objet).objet)).nom, - (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].variable_statique) - == d_erreur) + (*(*s_etat_processus).pointeur_variable_courante) + .variable_statique) == d_erreur) { liberation(s_etat_processus, s_objet); return; } - if ((*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].origine == 'P') + if ((*(*s_etat_processus).pointeur_variable_courante).origine + == 'P') { - (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].variable_statique.adresse - = 0; + (*(*s_etat_processus).pointeur_variable_courante) + .variable_statique.adresse = 0; } else { - (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].variable_statique.pointeur - = NULL; + (*(*s_etat_processus).pointeur_variable_courante) + .variable_statique.pointeur = NULL; } } } @@ -159,13 +154,11 @@ instruction_volatile(struct_processus *s return; } - if (((*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].origine == 'P') - ? ((*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].variable_statique.adresse == 0) - : ((*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].variable_statique.pointeur - == NULL)) + if (((*(*s_etat_processus).pointeur_variable_courante) + .origine == 'P') ? ((*(*s_etat_processus) + .pointeur_variable_courante).variable_statique.adresse == 0) + : ((*(*s_etat_processus).pointeur_variable_courante) + .variable_statique.pointeur == NULL)) { liberation(s_etat_processus, s_objet); @@ -176,26 +169,23 @@ instruction_volatile(struct_processus *s { if (retrait_variable_statique(s_etat_processus, (*((struct_nom *) (*s_objet).objet)).nom, - (*s_etat_processus).s_liste_variables - [(*s_etat_processus).position_variable_courante] + (*(*s_etat_processus).pointeur_variable_courante) .variable_statique) == d_erreur) { liberation(s_etat_processus, s_objet); return; } - if ((*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].origine == 'P') + if ((*(*s_etat_processus).pointeur_variable_courante) + .origine == 'P') { - (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].variable_statique - .adresse = 0; + (*(*s_etat_processus).pointeur_variable_courante) + .variable_statique.adresse = 0; } else { - (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].variable_statique - .pointeur = NULL; + (*(*s_etat_processus).pointeur_variable_courante) + .variable_statique.pointeur = NULL; } } @@ -353,7 +343,8 @@ instruction_verify(struct_processus *s_e { if ((*(*l_element_courant).donnee).type == CHN) { - if ((chaine_majuscule = conversion_majuscule((unsigned char *) + if ((chaine_majuscule = conversion_majuscule( + s_etat_processus, (unsigned char *) (*(*l_element_courant).donnee).objet)) == NULL) { (*s_etat_processus).erreur_systeme = @@ -477,6 +468,7 @@ instruction_verify(struct_processus *s_e if ((*(*l_element_version).donnee).type == CHN) { if ((chaine_majuscule = conversion_majuscule( + s_etat_processus, (unsigned char *) (*(*l_element_version) .donnee).objet)) == NULL) {