Diff for /rpl/src/rpl.c between versions 1.56 and 1.65

version 1.56, 2010/12/21 13:47:19 version 1.65, 2011/06/11 09:36:31
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.0.20    RPL/2 (R) version 4.1.0.prerelease.0
   Copyright (C) 1989-2010 Dr. BERTRAND Joël    Copyright (C) 1989-2011 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 107  rplinit(int argc, char *argv[], unsigned Line 107  rplinit(int argc, char *argv[], unsigned
   
     errno = 0;      errno = 0;
   
 #   ifdef DMALLOC  
     atexit(dmalloc_shutdown());  
 #   endif  
   
 #   ifdef DEBUG_MEMOIRE  #   ifdef DEBUG_MEMOIRE
     debug_memoire_initialisation();      debug_memoire_initialisation();
 #   endif  #   endif
Line 311  rplinit(int argc, char *argv[], unsigned Line 307  rplinit(int argc, char *argv[], unsigned
   
     if ((*s_etat_processus).langue == 'F')      if ((*s_etat_processus).langue == 'F')
     {      {
         printf("+++Copyright (C) 1989 à 2009, 2010 BERTRAND Joël\n");          printf("+++Copyright (C) 1989 à 2010, 2011 BERTRAND Joël\n");
     }      }
     else      else
     {      {
         printf("+++Copyright (C) 1989 to 2009, 2010 BERTRAND Joel\n");          printf("+++Copyright (C) 1989 to 2010, 2011 BERTRAND Joel\n");
     }      }
   
     if (getenv("HOME") != NULL)      if (getenv("HOME") != NULL)
Line 1837  rplinit(int argc, char *argv[], unsigned Line 1833  rplinit(int argc, char *argv[], unsigned
             (*s_etat_processus).affichage_arguments = 'N';              (*s_etat_processus).affichage_arguments = 'N';
             (*s_etat_processus).autorisation_conversion_chaine = 'Y';              (*s_etat_processus).autorisation_conversion_chaine = 'Y';
             (*s_etat_processus).autorisation_evaluation_nom = 'Y';              (*s_etat_processus).autorisation_evaluation_nom = 'Y';
             (*s_etat_processus).autorisation_nom_implicite = 'Y';  
               if (mode_interactif == d_vrai)
               {
                   (*s_etat_processus).autorisation_nom_implicite = 'Y';
               }
               else
               {
                   (*s_etat_processus).autorisation_nom_implicite = 'N';
               }
   
             (*s_etat_processus).autorisation_empilement_programme = 'N';              (*s_etat_processus).autorisation_empilement_programme = 'N';
             (*s_etat_processus).requete_arret = 'N';              (*s_etat_processus).requete_arret = 'N';
             (*s_etat_processus).evaluation_forcee = 'N';              (*s_etat_processus).evaluation_forcee = 'N';
Line 1853  rplinit(int argc, char *argv[], unsigned Line 1858  rplinit(int argc, char *argv[], unsigned
             (*s_etat_processus).l_base_pile = NULL;              (*s_etat_processus).l_base_pile = NULL;
             (*s_etat_processus).l_base_pile_last = NULL;              (*s_etat_processus).l_base_pile_last = NULL;
   
             (*s_etat_processus).s_liste_variables = NULL;              (*s_etat_processus).s_arbre_variables = NULL;
               (*s_etat_processus).l_liste_variables_par_niveau = NULL;
             (*s_etat_processus).gel_liste_variables = d_faux;              (*s_etat_processus).gel_liste_variables = d_faux;
             (*s_etat_processus).nombre_variables = 0;              (*s_etat_processus).pointeur_variable_courante = NULL;
             (*s_etat_processus).nombre_variables_allouees = 0;  
             (*s_etat_processus).s_liste_variables_statiques = NULL;              (*s_etat_processus).s_liste_variables_statiques = NULL;
             (*s_etat_processus).nombre_variables_statiques = 0;              (*s_etat_processus).nombre_variables_statiques = 0;
             (*s_etat_processus).nombre_variables_statiques_allouees = 0;              (*s_etat_processus).nombre_variables_statiques_allouees = 0;
Line 1864  rplinit(int argc, char *argv[], unsigned Line 1869  rplinit(int argc, char *argv[], unsigned
             (*s_etat_processus).niveau_initial = 0;              (*s_etat_processus).niveau_initial = 0;
             (*s_etat_processus).creation_variables_statiques = d_faux;              (*s_etat_processus).creation_variables_statiques = d_faux;
             (*s_etat_processus).creation_variables_partagees = d_faux;              (*s_etat_processus).creation_variables_partagees = d_faux;
             (*s_etat_processus).position_variable_courante = 0;  
             (*s_etat_processus).position_variable_statique_courante = 0;              (*s_etat_processus).position_variable_statique_courante = 0;
   
             (*s_etat_processus).s_bibliotheques = NULL;              (*s_etat_processus).s_bibliotheques = NULL;
Line 2010  rplinit(int argc, char *argv[], unsigned Line 2014  rplinit(int argc, char *argv[], unsigned
   
             initialisation_allocateur(s_etat_processus);              initialisation_allocateur(s_etat_processus);
             initialisation_drapeaux(s_etat_processus);              initialisation_drapeaux(s_etat_processus);
               initialisation_variables(s_etat_processus);
               initialisation_instructions(s_etat_processus);
   
             if ((*s_etat_processus).erreur_systeme != d_es)              if ((*s_etat_processus).erreur_systeme != d_es)
             {              {
Line 2395  rplinit(int argc, char *argv[], unsigned Line 2401  rplinit(int argc, char *argv[], unsigned
                     (*s_etat_processus).position_courante = 0;                      (*s_etat_processus).position_courante = 0;
                     (*s_etat_processus).traitement_cycle_exit = 'N';                      (*s_etat_processus).traitement_cycle_exit = 'N';
   
                     if ((*s_etat_processus).nombre_variables == 0)                      if ((*s_etat_processus).s_arbre_variables == NULL)
                     {                      {
                         if ((*s_etat_processus).langue == 'F')                          if ((*s_etat_processus).langue == 'F')
                         {                          {
Line 2455  rplinit(int argc, char *argv[], unsigned Line 2461  rplinit(int argc, char *argv[], unsigned
                         return(EXIT_FAILURE);                          return(EXIT_FAILURE);
                     }                      }
   
                     if ((*s_etat_processus).s_liste_variables                      if ((*(*s_etat_processus).pointeur_variable_courante)
                             [(*s_etat_processus)                              .niveau != 0)
                             .position_variable_courante].niveau != 0)  
                     {                      {
                         if ((*s_etat_processus).langue == 'F')                          if ((*s_etat_processus).langue == 'F')
                         {                          {
Line 2543  rplinit(int argc, char *argv[], unsigned Line 2548  rplinit(int argc, char *argv[], unsigned
   
                     fflush(stdout);                      fflush(stdout);
   
                     initialisation_instructions(s_etat_processus);  
   
                     if (arguments != NULL)                      if (arguments != NULL)
                     {                      {
                         tampon = (*s_etat_processus).definitions_chainees;                          tampon = (*s_etat_processus).definitions_chainees;
Line 3213  rplinit(int argc, char *argv[], unsigned Line 3216  rplinit(int argc, char *argv[], unsigned
                      * le libérer...                       * le libérer...
                      */                       */
   
   #if 0
                     for(i = 0; i < (*s_etat_processus).nombre_variables; i++)                      for(i = 0; i < (*s_etat_processus).nombre_variables; i++)
                     {                      {
                         liberation(s_etat_processus,                          liberation(s_etat_processus,
Line 3221  rplinit(int argc, char *argv[], unsigned Line 3225  rplinit(int argc, char *argv[], unsigned
                     }                      }
   
                     free((*s_etat_processus).s_liste_variables);                      free((*s_etat_processus).s_liste_variables);
   #endif
   
                     for(i = 0; i < (*s_etat_processus)                      for(i = 0; i < (*s_etat_processus)
                             .nombre_variables_statiques; i++)                              .nombre_variables_statiques; i++)

Removed from v.1.56  
changed lines
  Added in v.1.65


CVSweb interface <joel.bertrand@systella.fr>