version 1.27, 2011/07/25 07:44:58
|
version 1.44, 2013/02/27 17:11:44
|
Line 1
|
Line 1
|
/* |
/* |
================================================================================ |
================================================================================ |
RPL/2 (R) version 4.1.2 |
RPL/2 (R) version 4.1.13 |
Copyright (C) 1989-2011 Dr. BERTRAND Joël |
Copyright (C) 1989-2013 Dr. BERTRAND Joël |
|
|
This file is part of RPL/2. |
This file is part of RPL/2. |
|
|
Line 47 instruction_sub(struct_processus *s_etat
|
Line 47 instruction_sub(struct_processus *s_etat
|
struct_objet *s_objet_argument_3; |
struct_objet *s_objet_argument_3; |
struct_objet *s_objet_resultat; |
struct_objet *s_objet_resultat; |
|
|
|
unsigned char *ptr1; |
|
unsigned char *ptr2; |
|
|
unsigned long i; |
unsigned long i; |
|
|
(*s_etat_processus).erreur_execution = d_ex; |
(*s_etat_processus).erreur_execution = d_ex; |
Line 144 instruction_sub(struct_processus *s_etat
|
Line 147 instruction_sub(struct_processus *s_etat
|
if ((*s_objet_argument_3).type == CHN) |
if ((*s_objet_argument_3).type == CHN) |
{ |
{ |
if ((*((integer8 *) (*s_objet_argument_1).objet)) > (integer8) |
if ((*((integer8 *) (*s_objet_argument_1).objet)) > (integer8) |
strlen((unsigned char *) (*s_objet_argument_3).objet)) |
longueur_chaine(s_etat_processus, |
|
(unsigned char *) (*s_objet_argument_3).objet)) |
{ |
{ |
liberation(s_etat_processus, s_objet_argument_1); |
liberation(s_etat_processus, s_objet_argument_1); |
liberation(s_etat_processus, s_objet_argument_2); |
liberation(s_etat_processus, s_objet_argument_2); |
Line 160 instruction_sub(struct_processus *s_etat
|
Line 164 instruction_sub(struct_processus *s_etat
|
return; |
return; |
} |
} |
|
|
if (((*s_objet_resultat).objet = extraction_chaine((unsigned char *) |
if ((ptr1 = pointeur_ieme_caractere(s_etat_processus, (unsigned char *) |
(*s_objet_argument_3).objet, (*((integer8 *) |
(*s_objet_argument_3).objet, (*((integer8 *) |
(*s_objet_argument_2).objet)), (*((integer8 *) |
(*s_objet_argument_2).objet)) - 1)) == NULL) |
(*s_objet_argument_1).objet)))) == NULL) |
{ |
|
liberation(s_etat_processus, s_objet_argument_1); |
|
liberation(s_etat_processus, s_objet_argument_2); |
|
liberation(s_etat_processus, s_objet_argument_3); |
|
|
|
(*s_etat_processus).erreur_execution = d_ex_argument_invalide; |
|
return; |
|
} |
|
|
|
if ((ptr2 = pointeur_ieme_caractere(s_etat_processus, ptr1, |
|
(*((integer8 *) (*s_objet_argument_1).objet)) |
|
- ((*((integer8 *) (*s_objet_argument_2).objet)) - 1))) == NULL) |
|
{ |
|
liberation(s_etat_processus, s_objet_argument_1); |
|
liberation(s_etat_processus, s_objet_argument_2); |
|
liberation(s_etat_processus, s_objet_argument_3); |
|
|
|
(*s_etat_processus).erreur_execution = d_ex_argument_invalide; |
|
return; |
|
} |
|
|
|
if (((*s_objet_resultat).objet = malloc(((ptr2 - ptr1) + 1) * |
|
sizeof(unsigned char))) == NULL) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
return; |
return; |
} |
} |
|
|
|
strncpy((unsigned char *) (*s_objet_resultat).objet, ptr1, |
|
ptr2 - ptr1)[ptr2 - ptr1] = d_code_fin_chaine; |
} |
} |
|
|
/* |
/* |
Line 458 instruction_sto_plus(struct_processus *s
|
Line 487 instruction_sto_plus(struct_processus *s
|
|
|
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == 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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.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_systeme = d_es; |
(*s_etat_processus).erreur_execution = |
(*s_etat_processus).erreur_execution = |
d_ex_variable_non_definie; |
d_ex_variable_non_definie; |
Line 501 instruction_sto_plus(struct_processus *s
|
Line 516 instruction_sto_plus(struct_processus *s
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) == NULL) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 561 instruction_sto_plus(struct_processus *s
|
Line 574 instruction_sto_plus(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 577 instruction_sto_plus(struct_processus *s
|
Line 590 instruction_sto_plus(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 598 instruction_sto_plus(struct_processus *s
|
Line 611 instruction_sto_plus(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 624 instruction_sto_plus(struct_processus *s
|
Line 637 instruction_sto_plus(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
liberation(s_etat_processus, |
liberation(s_etat_processus, |
(*(*s_etat_processus).s_liste_variables_partagees) |
(*(*s_etat_processus).pointeur_variable_partagee_courante) |
.table[(*(*s_etat_processus).s_liste_variables_partagees) |
.objet); |
.position_variable].objet); |
|
|
|
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
(struct_objet **) &((*(*s_etat_processus) |
(struct_objet **) &((*(*s_etat_processus) |
.s_liste_variables_partagees).table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet)) |
.s_liste_variables_partagees).position_variable].objet)) |
|
== d_erreur) |
== d_erreur) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 658 instruction_sto_plus(struct_processus *s
|
Line 669 instruction_sto_plus(struct_processus *s
|
} |
} |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 745 instruction_sto_plus(struct_processus *s
|
Line 756 instruction_sto_plus(struct_processus *s
|
|
|
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == 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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.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_systeme = d_es; |
(*s_etat_processus).erreur_execution = |
(*s_etat_processus).erreur_execution = |
d_ex_variable_non_definie; |
d_ex_variable_non_definie; |
Line 788 instruction_sto_plus(struct_processus *s
|
Line 785 instruction_sto_plus(struct_processus *s
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) == NULL) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 848 instruction_sto_plus(struct_processus *s
|
Line 843 instruction_sto_plus(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 864 instruction_sto_plus(struct_processus *s
|
Line 859 instruction_sto_plus(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 885 instruction_sto_plus(struct_processus *s
|
Line 880 instruction_sto_plus(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 911 instruction_sto_plus(struct_processus *s
|
Line 906 instruction_sto_plus(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
liberation(s_etat_processus, |
liberation(s_etat_processus, |
(*(*s_etat_processus).s_liste_variables_partagees) |
(*(*s_etat_processus).pointeur_variable_partagee_courante) |
.table[(*(*s_etat_processus).s_liste_variables_partagees) |
.objet); |
.position_variable].objet); |
|
|
|
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
(struct_objet **) &((*(*s_etat_processus) |
(struct_objet **) &((*(*s_etat_processus) |
.s_liste_variables_partagees).table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet)) |
.s_liste_variables_partagees).position_variable].objet)) |
|
== d_erreur) |
== d_erreur) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 945 instruction_sto_plus(struct_processus *s
|
Line 938 instruction_sto_plus(struct_processus *s
|
} |
} |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1189 instruction_sto_moins(struct_processus *
|
Line 1182 instruction_sto_moins(struct_processus *
|
|
|
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == 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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.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_systeme = d_es; |
(*s_etat_processus).erreur_execution = |
(*s_etat_processus).erreur_execution = |
d_ex_variable_non_definie; |
d_ex_variable_non_definie; |
Line 1232 instruction_sto_moins(struct_processus *
|
Line 1211 instruction_sto_moins(struct_processus *
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) == NULL) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1292 instruction_sto_moins(struct_processus *
|
Line 1269 instruction_sto_moins(struct_processus *
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1308 instruction_sto_moins(struct_processus *
|
Line 1285 instruction_sto_moins(struct_processus *
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1329 instruction_sto_moins(struct_processus *
|
Line 1306 instruction_sto_moins(struct_processus *
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1355 instruction_sto_moins(struct_processus *
|
Line 1332 instruction_sto_moins(struct_processus *
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
liberation(s_etat_processus, |
liberation(s_etat_processus, |
(*(*s_etat_processus).s_liste_variables_partagees) |
(*(*s_etat_processus).pointeur_variable_partagee_courante) |
.table[(*(*s_etat_processus).s_liste_variables_partagees) |
.objet); |
.position_variable].objet); |
|
|
|
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
(struct_objet **) &((*(*s_etat_processus) |
(struct_objet **) &((*(*s_etat_processus) |
.s_liste_variables_partagees).table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet)) == d_erreur) |
.s_liste_variables_partagees).position_variable].objet)) |
|
== d_erreur) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1389 instruction_sto_moins(struct_processus *
|
Line 1363 instruction_sto_moins(struct_processus *
|
} |
} |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1476 instruction_sto_moins(struct_processus *
|
Line 1450 instruction_sto_moins(struct_processus *
|
|
|
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == 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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.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_systeme = d_es; |
(*s_etat_processus).erreur_execution = |
(*s_etat_processus).erreur_execution = |
d_ex_variable_non_definie; |
d_ex_variable_non_definie; |
Line 1519 instruction_sto_moins(struct_processus *
|
Line 1479 instruction_sto_moins(struct_processus *
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) == NULL) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1579 instruction_sto_moins(struct_processus *
|
Line 1537 instruction_sto_moins(struct_processus *
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1595 instruction_sto_moins(struct_processus *
|
Line 1553 instruction_sto_moins(struct_processus *
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1616 instruction_sto_moins(struct_processus *
|
Line 1574 instruction_sto_moins(struct_processus *
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1642 instruction_sto_moins(struct_processus *
|
Line 1600 instruction_sto_moins(struct_processus *
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
liberation(s_etat_processus, |
liberation(s_etat_processus, |
(*(*s_etat_processus).s_liste_variables_partagees) |
(*(*s_etat_processus).pointeur_variable_partagee_courante) |
.table[(*(*s_etat_processus).s_liste_variables_partagees) |
.objet); |
.position_variable].objet); |
|
|
|
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
(struct_objet **) &((*(*s_etat_processus) |
(struct_objet **) &((*(*s_etat_processus) |
.s_liste_variables_partagees).table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet)) == d_erreur) |
.s_liste_variables_partagees).position_variable].objet)) |
|
== d_erreur) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1676 instruction_sto_moins(struct_processus *
|
Line 1631 instruction_sto_moins(struct_processus *
|
} |
} |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1920 instruction_sto_fois(struct_processus *s
|
Line 1875 instruction_sto_fois(struct_processus *s
|
|
|
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == 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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.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_systeme = d_es; |
(*s_etat_processus).erreur_execution = |
(*s_etat_processus).erreur_execution = |
d_ex_variable_non_definie; |
d_ex_variable_non_definie; |
Line 1963 instruction_sto_fois(struct_processus *s
|
Line 1904 instruction_sto_fois(struct_processus *s
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) == NULL) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2023 instruction_sto_fois(struct_processus *s
|
Line 1962 instruction_sto_fois(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2039 instruction_sto_fois(struct_processus *s
|
Line 1978 instruction_sto_fois(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2060 instruction_sto_fois(struct_processus *s
|
Line 1999 instruction_sto_fois(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2086 instruction_sto_fois(struct_processus *s
|
Line 2025 instruction_sto_fois(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
liberation(s_etat_processus, |
liberation(s_etat_processus, |
(*(*s_etat_processus).s_liste_variables_partagees) |
(*(*s_etat_processus).pointeur_variable_partagee_courante) |
.table[(*(*s_etat_processus).s_liste_variables_partagees) |
.objet); |
.position_variable].objet); |
|
|
|
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
(struct_objet **) &((*(*s_etat_processus) |
(struct_objet **) &((*(*s_etat_processus) |
.s_liste_variables_partagees).table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet)) == d_erreur) |
.s_liste_variables_partagees).position_variable].objet)) |
|
== d_erreur) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2120 instruction_sto_fois(struct_processus *s
|
Line 2056 instruction_sto_fois(struct_processus *s
|
} |
} |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2207 instruction_sto_fois(struct_processus *s
|
Line 2143 instruction_sto_fois(struct_processus *s
|
|
|
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == 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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.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_systeme = d_es; |
(*s_etat_processus).erreur_execution = |
(*s_etat_processus).erreur_execution = |
d_ex_variable_non_definie; |
d_ex_variable_non_definie; |
Line 2250 instruction_sto_fois(struct_processus *s
|
Line 2172 instruction_sto_fois(struct_processus *s
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) == NULL) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2310 instruction_sto_fois(struct_processus *s
|
Line 2230 instruction_sto_fois(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2326 instruction_sto_fois(struct_processus *s
|
Line 2246 instruction_sto_fois(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2347 instruction_sto_fois(struct_processus *s
|
Line 2267 instruction_sto_fois(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2373 instruction_sto_fois(struct_processus *s
|
Line 2293 instruction_sto_fois(struct_processus *s
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
liberation(s_etat_processus, |
liberation(s_etat_processus, |
(*(*s_etat_processus).s_liste_variables_partagees) |
(*(*s_etat_processus).pointeur_variable_partagee_courante) |
.table[(*(*s_etat_processus).s_liste_variables_partagees) |
.objet); |
.position_variable].objet); |
|
|
|
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
(struct_objet **) &((*(*s_etat_processus) |
(struct_objet **) &((*(*s_etat_processus) |
.s_liste_variables_partagees).table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet)) == d_erreur) |
.s_liste_variables_partagees).position_variable].objet)) |
|
== d_erreur) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2407 instruction_sto_fois(struct_processus *s
|
Line 2324 instruction_sto_fois(struct_processus *s
|
} |
} |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2651 instruction_sto_division(struct_processu
|
Line 2568 instruction_sto_division(struct_processu
|
|
|
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == 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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.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_systeme = d_es; |
(*s_etat_processus).erreur_execution = |
(*s_etat_processus).erreur_execution = |
d_ex_variable_non_definie; |
d_ex_variable_non_definie; |
Line 2694 instruction_sto_division(struct_processu
|
Line 2597 instruction_sto_division(struct_processu
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) == NULL) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2754 instruction_sto_division(struct_processu
|
Line 2655 instruction_sto_division(struct_processu
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2770 instruction_sto_division(struct_processu
|
Line 2671 instruction_sto_division(struct_processu
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2791 instruction_sto_division(struct_processu
|
Line 2692 instruction_sto_division(struct_processu
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2817 instruction_sto_division(struct_processu
|
Line 2718 instruction_sto_division(struct_processu
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
liberation(s_etat_processus, |
liberation(s_etat_processus, |
(*(*s_etat_processus).s_liste_variables_partagees) |
(*(*s_etat_processus).pointeur_variable_partagee_courante) |
.table[(*(*s_etat_processus).s_liste_variables_partagees) |
.objet); |
.position_variable].objet); |
|
|
|
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
(struct_objet **) &((*(*s_etat_processus) |
(struct_objet **) &((*(*s_etat_processus) |
.s_liste_variables_partagees).table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet)) == d_erreur) |
.s_liste_variables_partagees).position_variable].objet)) |
|
== d_erreur) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2851 instruction_sto_division(struct_processu
|
Line 2749 instruction_sto_division(struct_processu
|
} |
} |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 2938 instruction_sto_division(struct_processu
|
Line 2836 instruction_sto_division(struct_processu
|
|
|
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == 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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.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_systeme = d_es; |
(*s_etat_processus).erreur_execution = |
(*s_etat_processus).erreur_execution = |
d_ex_variable_non_definie; |
d_ex_variable_non_definie; |
Line 2981 instruction_sto_division(struct_processu
|
Line 2865 instruction_sto_division(struct_processu
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
if ((s_objet_3 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) == NULL) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3041 instruction_sto_division(struct_processu
|
Line 2923 instruction_sto_division(struct_processu
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3057 instruction_sto_division(struct_processu
|
Line 2939 instruction_sto_division(struct_processu
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3078 instruction_sto_division(struct_processu
|
Line 2960 instruction_sto_division(struct_processu
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3104 instruction_sto_division(struct_processu
|
Line 2986 instruction_sto_division(struct_processu
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
liberation(s_etat_processus, |
liberation(s_etat_processus, |
(*(*s_etat_processus).s_liste_variables_partagees) |
(*(*s_etat_processus).pointeur_variable_partagee_courante) |
.table[(*(*s_etat_processus).s_liste_variables_partagees) |
.objet); |
.position_variable].objet); |
|
|
|
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
(struct_objet **) &((*(*s_etat_processus) |
(struct_objet **) &((*(*s_etat_processus) |
.s_liste_variables_partagees).table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet)) == d_erreur) |
.s_liste_variables_partagees).position_variable].objet)) |
|
== d_erreur) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3138 instruction_sto_division(struct_processu
|
Line 3017 instruction_sto_division(struct_processu
|
} |
} |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3343 instruction_sneg(struct_processus *s_eta
|
Line 3222 instruction_sneg(struct_processus *s_eta
|
|
|
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == 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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.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_systeme = d_es; |
(*s_etat_processus).erreur_execution = |
(*s_etat_processus).erreur_execution = |
d_ex_variable_non_definie; |
d_ex_variable_non_definie; |
Line 3385 instruction_sneg(struct_processus *s_eta
|
Line 3250 instruction_sneg(struct_processus *s_eta
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if ((s_objet_2 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
if ((s_objet_2 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) == NULL) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3443 instruction_sneg(struct_processus *s_eta
|
Line 3306 instruction_sneg(struct_processus *s_eta
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3463 instruction_sneg(struct_processus *s_eta
|
Line 3326 instruction_sneg(struct_processus *s_eta
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3489 instruction_sneg(struct_processus *s_eta
|
Line 3352 instruction_sneg(struct_processus *s_eta
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
liberation(s_etat_processus, |
liberation(s_etat_processus, |
(*(*s_etat_processus).s_liste_variables_partagees) |
(*(*s_etat_processus).pointeur_variable_partagee_courante) |
.table[(*(*s_etat_processus).s_liste_variables_partagees) |
.objet); |
.position_variable].objet); |
|
|
|
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
(struct_objet **) &((*(*s_etat_processus) |
(struct_objet **) &((*(*s_etat_processus) |
.s_liste_variables_partagees).table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet)) == d_erreur) |
.s_liste_variables_partagees).position_variable].objet)) |
|
== d_erreur) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3523 instruction_sneg(struct_processus *s_eta
|
Line 3383 instruction_sneg(struct_processus *s_eta
|
} |
} |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3726 instruction_sinv(struct_processus *s_eta
|
Line 3586 instruction_sinv(struct_processus *s_eta
|
|
|
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == 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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.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_systeme = d_es; |
(*s_etat_processus).erreur_execution = |
(*s_etat_processus).erreur_execution = |
d_ex_variable_non_definie; |
d_ex_variable_non_definie; |
Line 3768 instruction_sinv(struct_processus *s_eta
|
Line 3614 instruction_sinv(struct_processus *s_eta
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if ((s_objet_2 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
if ((s_objet_2 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) == NULL) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3826 instruction_sinv(struct_processus *s_eta
|
Line 3670 instruction_sinv(struct_processus *s_eta
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3846 instruction_sinv(struct_processus *s_eta
|
Line 3690 instruction_sinv(struct_processus *s_eta
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3872 instruction_sinv(struct_processus *s_eta
|
Line 3716 instruction_sinv(struct_processus *s_eta
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
liberation(s_etat_processus, |
liberation(s_etat_processus, |
(*(*s_etat_processus).s_liste_variables_partagees) |
(*(*s_etat_processus).pointeur_variable_partagee_courante) |
.table[(*(*s_etat_processus).s_liste_variables_partagees) |
.objet); |
.position_variable].objet); |
|
|
|
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
(struct_objet **) &((*(*s_etat_processus) |
(struct_objet **) &((*(*s_etat_processus) |
.s_liste_variables_partagees).table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet)) == d_erreur) |
.s_liste_variables_partagees).position_variable].objet)) |
|
== d_erreur) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 3906 instruction_sinv(struct_processus *s_eta
|
Line 3747 instruction_sinv(struct_processus *s_eta
|
} |
} |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 4109 instruction_sconj(struct_processus *s_et
|
Line 3950 instruction_sconj(struct_processus *s_et
|
|
|
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == 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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.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_systeme = d_es; |
(*s_etat_processus).erreur_execution = |
(*s_etat_processus).erreur_execution = |
d_ex_variable_non_definie; |
d_ex_variable_non_definie; |
Line 4151 instruction_sconj(struct_processus *s_et
|
Line 3978 instruction_sconj(struct_processus *s_et
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if ((s_objet_2 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
if ((s_objet_2 = copie_objet(s_etat_processus, (*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) == NULL) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 4209 instruction_sconj(struct_processus *s_et
|
Line 4034 instruction_sconj(struct_processus *s_et
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 4229 instruction_sconj(struct_processus *s_et
|
Line 4054 instruction_sconj(struct_processus *s_et
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 4255 instruction_sconj(struct_processus *s_et
|
Line 4080 instruction_sconj(struct_processus *s_et
|
if (variable_partagee == d_vrai) |
if (variable_partagee == d_vrai) |
{ |
{ |
liberation(s_etat_processus, |
liberation(s_etat_processus, |
(*(*s_etat_processus).s_liste_variables_partagees) |
(*(*s_etat_processus).pointeur_variable_partagee_courante) |
.table[(*(*s_etat_processus).s_liste_variables_partagees) |
.objet); |
.position_variable].objet); |
|
|
|
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
(struct_objet **) &((*(*s_etat_processus) |
(struct_objet **) &((*(*s_etat_processus) |
.s_liste_variables_partagees).table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet)) == d_erreur) |
.s_liste_variables_partagees).position_variable].objet)) |
|
== d_erreur) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 4289 instruction_sconj(struct_processus *s_et
|
Line 4111 instruction_sconj(struct_processus *s_et
|
} |
} |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |