Diff for /rpl/src/evaluation.c between versions 1.98 and 1.119

version 1.98, 2016/03/01 22:12:27 version 1.119, 2024/01/17 16:57:09
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.1.25    RPL/2 (R) version 4.1.36
   Copyright (C) 1989-2016 Dr. BERTRAND Joël    Copyright (C) 1989-2024 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 786  evaluation(struct_processus *s_etat_proc Line 786  evaluation(struct_processus *s_etat_proc
                                 == 0)                                  == 0)
                         {                          {
                             envoi_signal_processus((*s_etat_processus)                              envoi_signal_processus((*s_etat_processus)
                                     .pid_processus_pere, rpl_sigalrm);                                      .pid_processus_pere, rpl_sigalrm,
                                       d_faux);
                         }                          }
                         else                          else
                         {                          {
Line 1980  evaluation(struct_processus *s_etat_proc Line 1981  evaluation(struct_processus *s_etat_proc
                                     .var_volatile_processus_pere == 0)                                      .var_volatile_processus_pere == 0)
                             {                              {
                                 envoi_signal_processus((*s_etat_processus)                                  envoi_signal_processus((*s_etat_processus)
                                         .pid_processus_pere, rpl_sigalrm);                                          .pid_processus_pere, rpl_sigalrm,
                                           d_faux);
                             }                              }
                             else                              else
                             {                              {
Line 3927  evaluation(struct_processus *s_etat_proc Line 3929  evaluation(struct_processus *s_etat_proc
                                 == 0)                                  == 0)
                         {                          {
                             envoi_signal_processus((*s_etat_processus)                              envoi_signal_processus((*s_etat_processus)
                                     .pid_processus_pere, rpl_sigalrm);                                      .pid_processus_pere, rpl_sigalrm,
                                       d_faux);
                         }                          }
                         else                          else
                         {                          {
Line 4358  evaluation(struct_processus *s_etat_proc Line 4361  evaluation(struct_processus *s_etat_proc
   
                             do                              do
                             {                              {
                                   l_element_courant = (*l_element_courant)
                                           .suivant;
                                 l_registre_atome = l_element_courant;                                  l_registre_atome = l_element_courant;
   
                                 if (l_element_courant == NULL)                                  if (l_element_courant == NULL)
Line 4397  evaluation(struct_processus *s_etat_proc Line 4402  evaluation(struct_processus *s_etat_proc
                                     drapeau_then = TEST(instruction_then)                                      drapeau_then = TEST(instruction_then)
                                             ? d_vrai : d_faux;                                              ? d_vrai : d_faux;
                                 }                                  }
   
                                 l_element_courant = (*l_element_courant)  
                                         .suivant;  
                             } while(drapeau_then == d_faux);                              } while(drapeau_then == d_faux);
   
                             (*s_etat_processus).expression_courante =                              (*s_etat_processus).expression_courante =
Line 5149  evaluation(struct_processus *s_etat_proc Line 5151  evaluation(struct_processus *s_etat_proc
                                     .var_volatile_processus_pere == 0)                                      .var_volatile_processus_pere == 0)
                             {                              {
                                 envoi_signal_processus((*s_etat_processus)                                  envoi_signal_processus((*s_etat_processus)
                                         .pid_processus_pere, rpl_sigalrm);                                          .pid_processus_pere, rpl_sigalrm,
                                           d_faux);
                             }                              }
                             else                              else
                             {                              {
Line 5177  evaluation(struct_processus *s_etat_proc Line 5180  evaluation(struct_processus *s_etat_proc
                                 == 0)                                  == 0)
                         {                          {
                             envoi_signal_processus((*s_etat_processus)                              envoi_signal_processus((*s_etat_processus)
                                     .pid_processus_pere, rpl_sigalrm);                                      .pid_processus_pere, rpl_sigalrm,
                                       d_faux);
                         }                          }
                         else                          else
                         {                          {
Line 5212  evaluation(struct_processus *s_etat_proc Line 5216  evaluation(struct_processus *s_etat_proc
   
                             free(message);                              free(message);
   
                               l_registre_atome = l_element_courant;
   
                             while((*(*s_etat_processus).l_base_pile_systeme)                              while((*(*s_etat_processus).l_base_pile_systeme)
                                     .clause != 'R')                                      .clause != 'R')
                             {                              {
Line 5608  evaluation(struct_processus *s_etat_proc Line 5614  evaluation(struct_processus *s_etat_proc
   
                             do                              do
                             {                              {
                                   (*s_etat_processus).expression_courante =
                                           l_registre_atome;
                                 l_registre_atome = l_element_courant;                                  l_registre_atome = l_element_courant;
   
                                 if (l_element_courant == NULL)                                  if (l_element_courant == NULL)
Line 5652  evaluation(struct_processus *s_etat_proc Line 5660  evaluation(struct_processus *s_etat_proc
                                         .suivant;                                          .suivant;
                             } while(drapeau_then == d_faux);                              } while(drapeau_then == d_faux);
   
                             (*s_etat_processus).expression_courante =  
                                     l_registre_atome;  
   
                             (*(*s_etat_processus).l_base_pile_systeme)                              (*(*s_etat_processus).l_base_pile_systeme)
                                     .clause = 'X';                                      .clause = 'X';
                             instruction_then(s_etat_processus);                              instruction_then(s_etat_processus);
Line 6398  evaluation(struct_processus *s_etat_proc Line 6403  evaluation(struct_processus *s_etat_proc
                                     .var_volatile_processus_pere == 0)                                      .var_volatile_processus_pere == 0)
                             {                              {
                                 envoi_signal_processus((*s_etat_processus)                                  envoi_signal_processus((*s_etat_processus)
                                         .pid_processus_pere, rpl_sigalrm);                                          .pid_processus_pere, rpl_sigalrm,
                                           d_faux);
                             }                              }
                             else                              else
                             {                              {

Removed from v.1.98  
changed lines
  Added in v.1.119


CVSweb interface <joel.bertrand@systella.fr>