Diff for /rpl/src/interface_cas.cpp between versions 1.14 and 1.55

version 1.14, 2011/08/09 10:30:37 version 1.55, 2017/08/03 17:17:49
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.1.2    RPL/2 (R) version 4.1.28
   Copyright (C) 1989-2011 Dr. BERTRAND Joël    Copyright (C) 1989-2017 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 21 Line 21
   
   
 #ifdef RPLCAS  #ifdef RPLCAS
   
   // Giac inclut <semaphore.h> et définit sem_t. Or l'émulation
   // des IPCS POSIX requiert une redéfinition de sem_t.
   
   #   ifdef IPCS_SYSV
   //      NetBSD : _SEMAPHORE_H_
   #       define _SEMAPHORE_H_
   //      Linux : _SEMAPHORE_H
   #       define _SEMAPHORE_H
   #   endif
   
   #   pragma GCC diagnostic push
   #   pragma GCC diagnostic ignored "-Wstrict-aliasing"
   #   pragma GCC diagnostic ignored "-Wunused-parameter"
   #   pragma GCC diagnostic ignored "-Wempty-body"
   #   pragma GCC diagnostic ignored "-Wunknown-pragmas"
 #   include "giac.h"  #   include "giac.h"
   #   pragma GCC diagnostic pop
   
 #   undef PACKAGE  #   undef PACKAGE
 #   undef PACKAGE_NAME  #   undef PACKAGE_NAME
Line 55  initialisation_contexte_cas(struct_proce Line 72  initialisation_contexte_cas(struct_proce
 void  void
 liberation_contexte_cas(struct_processus *s_etat_processus)  liberation_contexte_cas(struct_processus *s_etat_processus)
 {  {
     delete reinterpret_cast<giac::context *>(s_etat_processus->contexte_cas);      if (s_etat_processus->contexte_cas != NULL)
     s_etat_processus->contexte_cas = NULL;      {
   #       ifdef RPLCAS
           delete reinterpret_cast<giac::context *>(
                   s_etat_processus->contexte_cas);
   #       endif
           s_etat_processus->contexte_cas = NULL;
       }
   
     return;      return;
 }  }
   
   #ifdef RPLCAS
 static unsigned char *  static unsigned char *
 conversion_rpl_vers_cas(struct_processus *s_etat_processus,  conversion_rpl_vers_cas(struct_processus *s_etat_processus,
         struct_objet **s_objet)          struct_objet **s_objet)
Line 68  conversion_rpl_vers_cas(struct_processus Line 92  conversion_rpl_vers_cas(struct_processus
     logical1                drapeau;      logical1                drapeau;
   
     struct_liste_chainee    *l_element_courant;      struct_liste_chainee    *l_element_courant;
     struct_liste_chainee    *l_element_precedent;  
   
     struct_objet            *s_objet_temporaire;      struct_objet            *s_objet_temporaire;
   
Line 199  conversion_rpl_vers_cas(struct_processus Line 222  conversion_rpl_vers_cas(struct_processus
                 }                  }
             }              }
   
             l_element_precedent = l_element_courant;  
             l_element_courant = l_element_courant->suivant;              l_element_courant = l_element_courant->suivant;
         }          }
     }      }
Line 253  conversion_cas_vers_rpl(struct_processus Line 275  conversion_cas_vers_rpl(struct_processus
     logical1                    drapeau;      logical1                    drapeau;
   
     struct_liste_chainee        *l_element_courant;      struct_liste_chainee        *l_element_courant;
     struct_liste_chainee        *l_element_precedent;  
   
     struct_objet                *s_objet;      struct_objet                *s_objet;
   
Line 326  conversion_cas_vers_rpl(struct_processus Line 347  conversion_cas_vers_rpl(struct_processus
   
     if ((s_objet->type == ALG) || (s_objet->type == RPN))      if ((s_objet->type == ALG) || (s_objet->type == RPN))
     {      {
         l_element_precedent = NULL;  
         l_element_courant = reinterpret_cast<struct_liste_chainee *>(          l_element_courant = reinterpret_cast<struct_liste_chainee *>(
                 s_objet->objet);                  s_objet->objet);
   
Line 372  conversion_cas_vers_rpl(struct_processus Line 392  conversion_cas_vers_rpl(struct_processus
                 }                  }
             }              }
   
             l_element_precedent = l_element_courant;  
             l_element_courant = l_element_courant->suivant;              l_element_courant = l_element_courant->suivant;
         }          }
     }      }
Line 385  conversion_cas_vers_rpl(struct_processus Line 404  conversion_cas_vers_rpl(struct_processus
   
     return;      return;
 }  }
   #endif
   
   
 /*  /*
Line 400  conversion_cas_vers_rpl(struct_processus Line 420  conversion_cas_vers_rpl(struct_processus
 ================================================================================  ================================================================================
 */  */
   
   #pragma GCC diagnostic push
   #pragma GCC diagnostic ignored "-Wunused-parameter"
 void  void
 interface_cas(struct_processus *s_etat_processus,  interface_cas(struct_processus *s_etat_processus,
         enum t_rplcas_commandes commande)          enum t_rplcas_commandes commande)
 {  {
 #   ifdef RPLCAS  #ifdef RPLCAS
     struct_objet            *s_objet_argument_1;      struct_objet            *s_objet_argument_1;
     struct_objet            *s_objet_argument_2;      struct_objet            *s_objet_argument_2;
     struct_objet            *s_objet_temporaire;      struct_objet            *s_objet_temporaire;
Line 557  interface_cas(struct_processus *s_etat_p Line 579  interface_cas(struct_processus *s_etat_p
             l_element_courant = reinterpret_cast<struct_liste_chainee *>              l_element_courant = reinterpret_cast<struct_liste_chainee *>
                     (s_objet_argument_1->objet);                      (s_objet_argument_1->objet);
             position = 1;              position = 1;
               argument_1 = NULL;
               argument_3 = NULL;
             argument_4 = NULL;              argument_4 = NULL;
   
             while(l_element_courant != NULL)              while(l_element_courant != NULL)
Line 682  interface_cas(struct_processus *s_etat_p Line 706  interface_cas(struct_processus *s_etat_p
     }      }
   
     return;      return;
   
 #else  #else
   
     if (s_etat_processus->langue == 'F')      if (s_etat_processus->langue == 'F')
Line 700  interface_cas(struct_processus *s_etat_p Line 723  interface_cas(struct_processus *s_etat_p
   
 #endif  #endif
 }  }
   #pragma GCC diagnostic pop
   
 // vim: ts=4  // vim: ts=4

Removed from v.1.14  
changed lines
  Added in v.1.55


CVSweb interface <joel.bertrand@systella.fr>