Diff for /rpl/src/analyse_notation_rpn.c between versions 1.3 and 1.9

version 1.3, 2010/02/10 10:14:18 version 1.9, 2010/05/24 10:58:28
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.0.11    RPL/2 (R) version 4.0.16
   Copyright (C) 1989-2010 Dr. BERTRAND Joël    Copyright (C) 1989-2010 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
Line 36 Line 36
 */  */
   
 struct_liste_chainee *  struct_liste_chainee *
 analyse_rpn(struct_processus *s_etat_processus,  analyse_rpn(struct_processus *s_etat_processus, unsigned char *chaine_rpn)
         unsigned char *chaine_rpn)  
 {  {
       struct_liste_chainee            *l_ancienne_base_pile;
     struct_liste_chainee            *l_base_liste;      struct_liste_chainee            *l_base_liste;
     struct_liste_chainee            *l_element_courant;      struct_liste_chainee            *l_element_courant;
     struct_liste_chainee            *l_element_precedent;      struct_liste_chainee            *l_element_precedent;
Line 67  analyse_rpn(struct_processus *s_etat_pro Line 67  analyse_rpn(struct_processus *s_etat_pro
     (*s_etat_processus).definitions_chainees = chaine_rpn;      (*s_etat_processus).definitions_chainees = chaine_rpn;
     (*s_etat_processus).autorisation_empilement_programme = 'N';      (*s_etat_processus).autorisation_empilement_programme = 'N';
   
       l_ancienne_base_pile = (*s_etat_processus).l_base_pile;
     nombre_termes = 0;      nombre_termes = 0;
   
     while((*s_etat_processus).definitions_chainees      while((*s_etat_processus).definitions_chainees
Line 82  analyse_rpn(struct_processus *s_etat_pro Line 83  analyse_rpn(struct_processus *s_etat_pro
   
         if ((*s_etat_processus).erreur_execution != d_ex)          if ((*s_etat_processus).erreur_execution != d_ex)
         {          {
             for(i = 0; i < nombre_termes; i++)              while((*s_etat_processus).l_base_pile != l_ancienne_base_pile)
             {              {
                 if (depilement(s_etat_processus, &((*s_etat_processus)                  if (depilement(s_etat_processus, &((*s_etat_processus)
                         .l_base_pile), &s_objet) == d_erreur)                          .l_base_pile), &s_objet) == d_erreur)

Removed from v.1.3  
changed lines
  Added in v.1.9


CVSweb interface <joel.bertrand@systella.fr>