--- rpl/src/analyse_notation_rpn.c 2015/01/05 15:32:11 1.56 +++ rpl/src/analyse_notation_rpn.c 2015/01/28 20:58:02 1.57 @@ -75,6 +75,23 @@ analyse_rpn(struct_processus *s_etat_pro { if (recherche_instruction_suivante(s_etat_processus) == d_erreur) { + while((*s_etat_processus).l_base_pile != l_ancienne_base_pile) + { + if (depilement(s_etat_processus, &((*s_etat_processus) + .l_base_pile), &s_objet) == d_erreur) + { + return NULL; + } + + liberation(s_etat_processus, s_objet); + } + + (*s_etat_processus).position_courante = registre_compteur_programme; + (*s_etat_processus).definitions_chainees = registre_programme; + (*s_etat_processus).instruction_courante = registre_instruction; + (*s_etat_processus).autorisation_empilement_programme = + registre_autorisation_empilement; + return NULL; }