Diff for /rpl/src/gestion_pile.c between versions 1.37 and 1.54

version 1.37, 2012/01/17 14:44:05 version 1.54, 2014/01/26 18:21:30
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.1.6    RPL/2 (R) version 4.1.17
   Copyright (C) 1989-2012 Dr. BERTRAND Joël    Copyright (C) 1989-2014 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 54  estimation_taille_pile(struct_processus Line 54  estimation_taille_pile(struct_processus
     else      else
     {      {
         (*s_etat_processus).estimation_taille_pile_tampon =          (*s_etat_processus).estimation_taille_pile_tampon =
                 ((*s_etat_processus).estimation_taille_pile_tampon *                  (((double) (*s_etat_processus).estimation_taille_pile_tampon) *
                 ((double) 0.95)) + ((*s_etat_processus)                  ((double) 0.95)) + (((double) (*s_etat_processus)
                 .hauteur_pile_operationnelle * ((double) 0.05));                  .hauteur_pile_operationnelle) * ((double) 0.05));
     }      }
   
     return;      return;
Line 128  empilement(struct_processus *s_etat_proc Line 128  empilement(struct_processus *s_etat_proc
             if ((*s_etat_processus).langue == 'F')              if ((*s_etat_processus).langue == 'F')
             {              {
                 printf("[%d] Empilement de type %d "                  printf("[%d] Empilement de type %d "
                         "(profondeur %lu)\n", (int) getpid(),                          "(profondeur %lld)\n", (int) getpid(),
                         (*s_objet).type,                          (*s_objet).type,
                         (*s_etat_processus).hauteur_pile_operationnelle);                          (*s_etat_processus).hauteur_pile_operationnelle);
             }              }
             else              else
             {              {
                 printf("[%d] Pushing a type %d object "                  printf("[%d] Pushing a type %d object "
                         "(depth %lu)\n", (int) getpid(), (*s_objet).type,                          "(depth %lld)\n", (int) getpid(), (*s_objet).type,
                         (*s_etat_processus).hauteur_pile_operationnelle);                          (*s_etat_processus).hauteur_pile_operationnelle);
             }              }
   
Line 192  depilement(struct_processus *s_etat_proc Line 192  depilement(struct_processus *s_etat_proc
                 if ((*s_etat_processus).langue == 'F')                  if ((*s_etat_processus).langue == 'F')
                 {                  {
                     printf("[%d] Dépilement de type %d "                      printf("[%d] Dépilement de type %d "
                             "(profondeur %lu)\n", (int) getpid(),                              "(profondeur %lld)\n", (int) getpid(),
                             (*(*s_objet)).type,                              (*(*s_objet)).type,
                             (*s_etat_processus).hauteur_pile_operationnelle);                              (*s_etat_processus).hauteur_pile_operationnelle);
                 }                  }
                 else                  else
                 {                  {
                     printf("[%d] Pulling a type %d object "                      printf("[%d] Pulling a type %d object "
                             "(depth %lu)\n", (int) getpid(), (*(*s_objet)).type,                              "(depth %lld)\n", (int) getpid(),
                               (*(*s_objet)).type,
                             (*s_etat_processus).hauteur_pile_operationnelle);                              (*s_etat_processus).hauteur_pile_operationnelle);
                 }                  }
   
Line 251  depilement(struct_processus *s_etat_proc Line 252  depilement(struct_processus *s_etat_proc
   
 void  void
 affichage_pile(struct_processus *s_etat_processus, struct_liste_chainee  affichage_pile(struct_processus *s_etat_processus, struct_liste_chainee
         *l_element_courant, unsigned long niveau_courant)          *l_element_courant, integer8 niveau_courant)
 {  {
     unsigned char           registre;      unsigned char           registre;
   
Line 268  affichage_pile(struct_processus *s_etat_ Line 269  affichage_pile(struct_processus *s_etat_
   
 void  void
 ecriture_pile(struct_processus *s_etat_processus, file *flux,  ecriture_pile(struct_processus *s_etat_processus, file *flux,
         struct_liste_chainee *l, unsigned long niveau_courant)          struct_liste_chainee *l, integer8 niveau_courant)
 {  {
     unsigned char               *chaine;      unsigned char               *chaine;
     unsigned char               *registre;      unsigned char               *registre;
Line 294  ecriture_pile(struct_processus *s_etat_p Line 295  ecriture_pile(struct_processus *s_etat_p
   
                 if ((*s_etat_processus).var_volatile_recursivite == 0)                  if ((*s_etat_processus).var_volatile_recursivite == 0)
                 {                  {
                     if (fprintf(flux, "%lu: ...\n", niveau_courant) < 0)                      if (fprintf(flux, "%lld: ...\n", niveau_courant) < 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme =                          (*s_etat_processus).erreur_systeme =
                                 d_es_erreur_fichier;                                  d_es_erreur_fichier;
Line 321  ecriture_pile(struct_processus *s_etat_p Line 322  ecriture_pile(struct_processus *s_etat_p
             return;              return;
         }          }
   
         sprintf(tampon, "%lu: ", niveau_courant);          sprintf(tampon, "%lld: ", niveau_courant);
   
         if ((chaine = formateur(s_etat_processus, strlen(tampon),          if ((chaine = formateur(s_etat_processus, (long) strlen(tampon),
                 (*l_element_courant).donnee)) == NULL)                  (*l_element_courant).donnee)) == NULL)
         {          {
             (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;              (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
Line 345  ecriture_pile(struct_processus *s_etat_p Line 346  ecriture_pile(struct_processus *s_etat_p
             free(registre);              free(registre);
         }          }
   
         if (fprintf(flux, "%lu: %s\n", niveau_courant, chaine) < 0)          if (fprintf(flux, "%lld: %s\n", niveau_courant, chaine) < 0)
         {          {
             (*s_etat_processus).erreur_systeme = d_es_erreur_fichier;              (*s_etat_processus).erreur_systeme = d_es_erreur_fichier;
             return;              return;
Line 372  ecriture_pile(struct_processus *s_etat_p Line 373  ecriture_pile(struct_processus *s_etat_p
   
 void  void
 impression_pile(struct_processus *s_etat_processus,  impression_pile(struct_processus *s_etat_processus,
         struct_liste_chainee *l, unsigned char methode,          struct_liste_chainee *l, unsigned char methode, integer8 niveau_courant)
         unsigned long niveau_courant)  
 {  {
     struct_objet                s_objet;      struct_objet                s_objet;
   
Line 421  impression_pile(struct_processus *s_etat Line 421  impression_pile(struct_processus *s_etat
         if (methode == 'C')          if (methode == 'C')
         {          {
             s_objet.type = CHN;              s_objet.type = CHN;
             sprintf(tampon, "%lu: ", niveau_courant);              sprintf(tampon, "%lld: ", niveau_courant);
   
             if ((chaine = formateur(s_etat_processus, strlen(tampon),              if ((chaine = formateur(s_etat_processus, (long) strlen(tampon),
                     (*l_element_courant).donnee)) == NULL)                      (*l_element_courant).donnee)) == NULL)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;                  (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
Line 454  impression_pile(struct_processus *s_etat Line 454  impression_pile(struct_processus *s_etat
             }              }
   
             sprintf((unsigned char *) s_objet.objet,              sprintf((unsigned char *) s_objet.objet,
                     "\n\\noindent\\begin{verbatim}\n%lu: %s\n\\end{verbatim}",                      "\n\\noindent\\begin{verbatim}\n%lld: %s\n\\end{verbatim}",
                     niveau_courant, chaine);                      niveau_courant, chaine);
             free(chaine);              free(chaine);
   

Removed from v.1.37  
changed lines
  Added in v.1.54


CVSweb interface <joel.bertrand@systella.fr>