Diff for /rpl/src/instructions_e1.c between versions 1.39 and 1.68

version 1.39, 2012/12/18 13:19:36 version 1.68, 2019/02/03 14:40:38
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.1.12    RPL/2 (R) version 4.1.31
   Copyright (C) 1989-2012 Dr. BERTRAND Joël    Copyright (C) 1989-2019 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 121  instruction_eval(struct_processus *s_eta Line 121  instruction_eval(struct_processus *s_eta
             sf(s_etat_processus, 31);              sf(s_etat_processus, 31);
         }          }
   
           liberation(s_etat_processus, s_objet);
         return;          return;
     }      }
   
Line 475  instruction_else(struct_processus *s_eta Line 476  instruction_else(struct_processus *s_eta
     unsigned char               *instruction_majuscule;      unsigned char               *instruction_majuscule;
     unsigned char               *tampon;      unsigned char               *tampon;
   
     unsigned long               niveau;      integer8                    niveau;
   
     void                        (*fonction)();      void                        (*fonction)();
   
Line 543  instruction_else(struct_processus *s_eta Line 544  instruction_else(struct_processus *s_eta
                 }                  }
   
                 if ((instruction_majuscule = conversion_majuscule(                  if ((instruction_majuscule = conversion_majuscule(
                           s_etat_processus,
                         (*s_etat_processus).instruction_courante)) == NULL)                          (*s_etat_processus).instruction_courante)) == NULL)
                 {                  {
                     free((*s_etat_processus).instruction_courante);                      free((*s_etat_processus).instruction_courante);
Line 556  instruction_else(struct_processus *s_eta Line 558  instruction_else(struct_processus *s_eta
                 {                  {
                     if (strcmp(instruction_majuscule, "END") == 0)                      if (strcmp(instruction_majuscule, "END") == 0)
                     {                      {
                         (*s_etat_processus).position_courante -= (strlen(                          (*s_etat_processus).position_courante -=
                                 instruction_majuscule) + 1);                                  (((integer8) strlen(
                                   instruction_majuscule)) + 1);
                         drapeau_fin = d_vrai;                          drapeau_fin = d_vrai;
                     }                      }
                     else                      else
Line 754  instruction_elseif(struct_processus *s_e Line 757  instruction_elseif(struct_processus *s_e
     unsigned char               *instruction_majuscule;      unsigned char               *instruction_majuscule;
     unsigned char               *tampon;      unsigned char               *tampon;
   
     unsigned long               niveau;      integer8                    niveau;
   
     void                        (*fonction)();      void                        (*fonction)();
   
Line 833  instruction_elseif(struct_processus *s_e Line 836  instruction_elseif(struct_processus *s_e
                 }                  }
   
                 if ((instruction_majuscule = conversion_majuscule(                  if ((instruction_majuscule = conversion_majuscule(
                           s_etat_processus,
                         (*s_etat_processus).instruction_courante)) == NULL)                          (*s_etat_processus).instruction_courante)) == NULL)
                 {                  {
                     free((*s_etat_processus).instruction_courante);                      free((*s_etat_processus).instruction_courante);
Line 846  instruction_elseif(struct_processus *s_e Line 850  instruction_elseif(struct_processus *s_e
                 {                  {
                     if (strcmp(instruction_majuscule, "END") == 0)                      if (strcmp(instruction_majuscule, "END") == 0)
                     {                      {
                         (*s_etat_processus).position_courante -= (strlen(                          (*s_etat_processus).position_courante -=
                                 instruction_majuscule) + 1);                                  (((integer8) strlen(
                                   instruction_majuscule)) + 1);
                         drapeau_fin = d_vrai;                          drapeau_fin = d_vrai;
                     }                      }
                     else                      else
Line 1035  instruction_elseif(struct_processus *s_e Line 1040  instruction_elseif(struct_processus *s_e
 void  void
 instruction_sensible_e(struct_processus *s_etat_processus)  instruction_sensible_e(struct_processus *s_etat_processus)
 {  {
       (*s_etat_processus).instruction_sensible = 'Y';
   
     if (strcmp((*s_etat_processus).instruction_courante, "e") == 0)      if (strcmp((*s_etat_processus).instruction_courante, "e") == 0)
     {      {
         instruction_e(s_etat_processus);          instruction_e(s_etat_processus);
Line 1195  instruction_eng(struct_processus *s_etat Line 1202  instruction_eng(struct_processus *s_etat
                 return;                  return;
             }              }
   
             (*((logical8 *) (*s_objet).objet)) =              (*((logical8 *) (*s_objet).objet)) = (logical8)
                     (*((integer8 *) (*s_objet_argument).objet));                      (*((integer8 *) (*s_objet_argument).objet));
   
             i43 = test_cfsf(s_etat_processus, 43);              i43 = test_cfsf(s_etat_processus, 43);
Line 1233  instruction_eng(struct_processus *s_etat Line 1240  instruction_eng(struct_processus *s_etat
             {              {
                 if (valeur_binaire[i] == '0')                  if (valeur_binaire[i] == '0')
                 {                  {
                     cf(s_etat_processus, j++);                      cf(s_etat_processus, (unsigned char) j++);
                 }                  }
                 else                  else
                 {                  {
                     sf(s_etat_processus, j++);                      sf(s_etat_processus, (unsigned char) j++);
                 }                  }
             }              }
   
             for(; j <= 56; cf(s_etat_processus, j++));              for(; j <= 56; cf(s_etat_processus, (unsigned char) j++));
   
             sf(s_etat_processus, 49);              sf(s_etat_processus, 49);
             sf(s_etat_processus, 50);              sf(s_etat_processus, 50);

Removed from v.1.39  
changed lines
  Added in v.1.68


CVSweb interface <joel.bertrand@systella.fr>