version 1.71, 2018/12/21 10:56:17
|
version 1.78, 2021/03/13 12:50:43
|
Line 1
|
Line 1
|
/* |
/* |
================================================================================ |
================================================================================ |
RPL/2 (R) version 4.1.29 |
RPL/2 (R) version 4.1.33 |
Copyright (C) 1989-2018 Dr. BERTRAND Joël |
Copyright (C) 1989-2021 Dr. BERTRAND Joël |
|
|
This file is part of RPL/2. |
This file is part of RPL/2. |
|
|
Line 1283 instruction_exit(struct_processus *s_eta
|
Line 1283 instruction_exit(struct_processus *s_eta
|
presence_boucle = d_vrai; |
presence_boucle = d_vrai; |
drapeau_boucle_definie = d_vrai; |
drapeau_boucle_definie = d_vrai; |
} |
} |
else if (((*l_element_pile_systeme).type_cloture == 'D') || |
else if (((*l_element_pile_systeme).type_cloture == 'D') || |
((*l_element_pile_systeme).type_cloture == 'W')) |
((*l_element_pile_systeme).type_cloture == 'W')) |
{ |
{ |
presence_boucle = d_vrai; |
presence_boucle = d_vrai; |
Line 1301 instruction_exit(struct_processus *s_eta
|
Line 1301 instruction_exit(struct_processus *s_eta
|
|
|
if ((*s_etat_processus).mode_execution_programme == 'Y') |
if ((*s_etat_processus).mode_execution_programme == 'Y') |
{ |
{ |
|
uprintf("PROG\n"); |
drapeau_presence_fin_boucle = d_vrai; |
drapeau_presence_fin_boucle = d_vrai; |
tampon = (*s_etat_processus).instruction_courante; |
tampon = (*s_etat_processus).instruction_courante; |
niveau = 1; |
niveau = 1; |
Line 1325 instruction_exit(struct_processus *s_eta
|
Line 1326 instruction_exit(struct_processus *s_eta
|
(*s_etat_processus).erreur_systeme = d_es; |
(*s_etat_processus).erreur_systeme = d_es; |
instruction_majuscule = conversion_majuscule(s_etat_processus, |
instruction_majuscule = conversion_majuscule(s_etat_processus, |
(*s_etat_processus).instruction_courante); |
(*s_etat_processus).instruction_courante); |
|
uprintf("%s\n", instruction_majuscule); |
|
|
if (instruction_majuscule == NULL) |
if (instruction_majuscule == NULL) |
{ |
{ |
Line 1482 instruction_exit(struct_processus *s_eta
|
Line 1484 instruction_exit(struct_processus *s_eta
|
} |
} |
else |
else |
{ |
{ |
if ((strcmp(instruction_majuscule, "DO") == 0) || |
empilement_pile_systeme(s_etat_processus); |
(strcmp(instruction_majuscule, "WHILE") |
|
== 0)) |
if (strcmp(instruction_majuscule, "DO") == 0) |
{ |
{ |
|
(*(*s_etat_processus).l_base_pile_systeme) |
|
.type_cloture = 'D'; |
|
niveau++; |
|
} |
|
else if (strcmp(instruction_majuscule, "WHILE") == 0) |
|
{ |
|
(*(*s_etat_processus).l_base_pile_systeme) |
|
.type_cloture = 'W'; |
niveau++; |
niveau++; |
} |
} |
|
|
empilement_pile_systeme(s_etat_processus); |
|
|
|
if ((*s_etat_processus).erreur_systeme != d_es) |
if ((*s_etat_processus).erreur_systeme != d_es) |
{ |
{ |
Line 1752 instruction_exit(struct_processus *s_eta
|
Line 1760 instruction_exit(struct_processus *s_eta
|
} |
} |
else |
else |
{ |
{ |
if ((fonction == instruction_do) || |
empilement_pile_systeme(s_etat_processus); |
(fonction == instruction_while)) |
|
|
if (fonction == instruction_while) |
{ |
{ |
|
(*(*s_etat_processus).l_base_pile_systeme) |
|
.type_cloture = 'W'; |
|
niveau++; |
|
} |
|
else if (fonction == instruction_do) |
|
{ |
|
(*(*s_etat_processus).l_base_pile_systeme) |
|
.type_cloture = 'D'; |
niveau++; |
niveau++; |
} |
} |
|
|
empilement_pile_systeme(s_etat_processus); |
|
|
|
if ((*s_etat_processus).erreur_systeme != d_es) |
if ((*s_etat_processus).erreur_systeme != d_es) |
{ |
{ |