--- rpl/src/instructions_g2.c 2010/04/07 13:45:06 1.6 +++ rpl/src/instructions_g2.c 2015/11/26 11:44:36 1.57 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.0.14 - Copyright (C) 1989-2010 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.24 + Copyright (C) 1989-2015 Dr. BERTRAND Joël This file is part of RPL/2. @@ -20,7 +20,7 @@ */ -#include "rpl.conv.h" +#include "rpl-conv.h" /* @@ -48,9 +48,9 @@ instruction_get(struct_processus *s_etat struct_objet *s_objet_element; struct_objet *s_objet_resultat; - unsigned long indice_i; - unsigned long indice_j; - unsigned long nombre_dimensions; + integer8 indice_i; + integer8 indice_j; + integer8 nombre_dimensions; (*s_etat_processus).erreur_execution = d_ex; @@ -535,33 +535,16 @@ instruction_get(struct_processus *s_etat return; } - s_objet_3 = (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].objet; + s_objet_3 = (*(*s_etat_processus).pointeur_variable_courante).objet; if (s_objet_3 == NULL) { - if (pthread_mutex_lock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) - { - (*s_etat_processus).erreur_systeme = d_es_processus; - return; - } - if (recherche_variable_partagee(s_etat_processus, - (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].nom, - (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].variable_partagee, - (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].origine) == d_faux) + (*(*s_etat_processus).pointeur_variable_courante).nom, + (*(*s_etat_processus).pointeur_variable_courante) + .variable_partagee, (*(*s_etat_processus) + .pointeur_variable_courante).origine) == NULL) { - if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) - { - (*s_etat_processus).erreur_systeme = d_es_processus; - return; - } - (*s_etat_processus).erreur_systeme = d_es; (*s_etat_processus).erreur_execution = d_ex_variable_non_definie; @@ -572,9 +555,8 @@ instruction_get(struct_processus *s_etat return; } - s_objet_3 = (*(*s_etat_processus).s_liste_variables_partagees) - .table[(*(*s_etat_processus).s_liste_variables_partagees) - .position_variable].objet; + s_objet_3 = (*(*s_etat_processus) + .pointeur_variable_partagee_courante).objet; variable_partagee = d_vrai; } @@ -587,7 +569,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -616,7 +598,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -638,7 +620,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -658,7 +640,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -678,7 +660,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -706,7 +688,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -734,7 +717,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -762,7 +746,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -793,7 +778,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -822,7 +807,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -849,7 +834,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -870,7 +856,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -906,7 +893,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -932,7 +919,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -961,7 +949,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -989,7 +978,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1019,7 +1009,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1053,7 +1043,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1070,7 +1061,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1091,7 +1082,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1116,7 +1107,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1136,7 +1128,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1160,7 +1153,8 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1186,7 +1180,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1202,7 +1196,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1219,7 +1213,7 @@ instruction_get(struct_processus *s_etat if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1280,10 +1274,10 @@ instruction_geti(struct_processus *s_eta struct_objet *s_objet_3; struct_objet *s_objet_resultat; - unsigned long indice_i; - unsigned long indice_j; - unsigned long nombre_dimensions; - unsigned long nombre_elements; + integer8 indice_i; + integer8 indice_j; + integer8 nombre_dimensions; + integer8 nombre_elements; (*s_etat_processus).erreur_execution = d_ex; @@ -1740,33 +1734,16 @@ instruction_geti(struct_processus *s_eta return; } - s_objet_3 = (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].objet; + s_objet_3 = (*(*s_etat_processus).pointeur_variable_courante).objet; if (s_objet_3 == NULL) { - if (pthread_mutex_lock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) - { - (*s_etat_processus).erreur_systeme = d_es_processus; - return; - } - if (recherche_variable_partagee(s_etat_processus, - (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].nom, - (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].variable_partagee, - (*s_etat_processus).s_liste_variables[(*s_etat_processus) - .position_variable_courante].origine) == d_faux) + (*(*s_etat_processus).pointeur_variable_courante).nom, + (*(*s_etat_processus).pointeur_variable_courante) + .variable_partagee, (*(*s_etat_processus) + .pointeur_variable_courante).origine) == NULL) { - if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) - { - (*s_etat_processus).erreur_systeme = d_es_processus; - return; - } - (*s_etat_processus).erreur_systeme = d_es; (*s_etat_processus).erreur_execution = d_ex_variable_non_definie; @@ -1777,9 +1754,8 @@ instruction_geti(struct_processus *s_eta return; } - s_objet_3 = (*(*s_etat_processus).s_liste_variables_partagees) - .table[(*(*s_etat_processus).s_liste_variables_partagees) - .position_variable].objet; + s_objet_3 = (*(*s_etat_processus) + .pointeur_variable_partagee_courante).objet; variable_partagee = d_vrai; } @@ -1792,7 +1768,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1821,7 +1797,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1843,7 +1819,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1863,7 +1839,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1883,7 +1859,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1911,7 +1887,8 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1939,7 +1916,8 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1967,7 +1945,8 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2002,7 +1981,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2031,7 +2010,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2058,7 +2037,8 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2079,7 +2059,8 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2115,7 +2096,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2141,7 +2122,8 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2170,7 +2152,8 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2198,7 +2181,8 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2246,7 +2230,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2288,7 +2272,8 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) + != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2305,7 +2290,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2327,7 +2312,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -2344,7 +2329,7 @@ instruction_geti(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return;