Diff for /rpl/src/instructions_f3.c between versions 1.25.2.2 and 1.54

version 1.25.2.2, 2011/04/14 08:46:42 version 1.54, 2013/02/27 17:11:42
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.0.23    RPL/2 (R) version 4.1.13
   Copyright (C) 1989-2011 Dr. BERTRAND Joël    Copyright (C) 1989-2013 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 72  instruction_format(struct_processus *s_e Line 72  instruction_format(struct_processus *s_e
         }          }
   
         printf("    { \"STANDARD*(*)\" }\n");          printf("    { \"STANDARD*(*)\" }\n");
         printf("    { \"lambda\" 'SEQUENTIAL' 'NEW' 'WRITEONLY' 'FORMATTED' }"          printf("    { { \"NAME\" \"lambda\" } \"SEQUENTIAL\" \"NEW\""
                 " OPEN FORMAT\n\n");                  "\"WRITEONLY\" \"FORMATTED\" } OPEN\n            FORMAT\n\n");
   
         if ((*s_etat_processus).langue == 'F')          if ((*s_etat_processus).langue == 'F')
         {          {
Line 108  instruction_format(struct_processus *s_e Line 108  instruction_format(struct_processus *s_e
         printf("    { \"CHARACTER\" }\n\n");          printf("    { \"CHARACTER\" }\n\n");
   
         printf("  FLOW\n");          printf("  FLOW\n");
         printf("    { \"CHARACTER*(*)\" }\n");  
         printf("    { \"CHARACTER*(%s)\" }\n", d_INT);  
         printf("    { \"LENGTH*(*)\" }\n");          printf("    { \"LENGTH*(*)\" }\n");
         printf("    { \"LENGTH*(%s)\" }\n", d_INT);          printf("    { \"LENGTH*(%s)\" }\n", d_INT);
   
Line 148  instruction_format(struct_processus *s_e Line 146  instruction_format(struct_processus *s_e
     if (((*s_objet_argument_1).type == FCH) &&      if (((*s_objet_argument_1).type == FCH) &&
             ((*s_objet_argument_2).type == LST))              ((*s_objet_argument_2).type == LST))
     {      {
         if ((*((struct_fichier *) (*s_objet_argument_1).objet)).binaire  
                 == 'F')  
         {  
             liberation(s_etat_processus, s_objet_argument_1);  
             liberation(s_etat_processus, s_objet_argument_2);  
   
             (*s_etat_processus).erreur_execution =  
                     d_ex_erreur_format_fichier;  
             return;  
         }  
   
         if ((s_copie_argument_1 = copie_objet(s_etat_processus,          if ((s_copie_argument_1 = copie_objet(s_etat_processus,
                 s_objet_argument_1, 'N')) == NULL)                  s_objet_argument_1, 'N')) == NULL)
         {          {
Line 178  instruction_format(struct_processus *s_e Line 165  instruction_format(struct_processus *s_e
     else if (((*s_objet_argument_1).type == SCK) &&      else if (((*s_objet_argument_1).type == SCK) &&
             ((*s_objet_argument_2).type == LST))              ((*s_objet_argument_2).type == LST))
     {      {
         if ((*((struct_socket *) (*s_objet_argument_1).objet)).binaire  
                 == 'F')  
         {  
             liberation(s_etat_processus, s_objet_argument_1);  
             liberation(s_etat_processus, s_objet_argument_2);  
   
             (*s_etat_processus).erreur_execution =  
                     d_ex_erreur_format_fichier;  
             return;  
         }  
   
         if ((s_copie_argument_1 = copie_objet(s_etat_processus,          if ((s_copie_argument_1 = copie_objet(s_etat_processus,
                 s_objet_argument_1, 'N')) == NULL)                  s_objet_argument_1, 'N')) == NULL)
         {          {
Line 1837  instruction_fuse(struct_processus *s_eta Line 1813  instruction_fuse(struct_processus *s_eta
         return;          return;
     }      }
   
 #   ifndef OS2  #   ifdef SCHED_OTHER
 #   ifndef Cygwin  
     if (pthread_attr_setschedpolicy(&attributs, SCHED_OTHER) != 0)      if (pthread_attr_setschedpolicy(&attributs, SCHED_OTHER) != 0)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_processus;          (*s_etat_processus).erreur_systeme = d_es_processus;
         return;          return;
     }      }
   #   endif
   
   #   ifdef PTHREAD_EXPLICIT_SCHED
     if (pthread_attr_setinheritsched(&attributs,      if (pthread_attr_setinheritsched(&attributs,
             PTHREAD_EXPLICIT_SCHED) != 0)              PTHREAD_EXPLICIT_SCHED) != 0)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_processus;          (*s_etat_processus).erreur_systeme = d_es_processus;
         return;          return;
     }      }
   #   endif
   
   #   ifdef PTHREAD_SCOPE_SYSTEM
     if (pthread_attr_setscope(&attributs, PTHREAD_SCOPE_SYSTEM) != 0)      if (pthread_attr_setscope(&attributs, PTHREAD_SCOPE_SYSTEM) != 0)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_processus;          (*s_etat_processus).erreur_systeme = d_es_processus;
         return;          return;
     }      }
 #   endif  #   endif
 #   endif  
   
     if (pthread_create(&(*s_etat_processus).thread_fusible, &attributs,       if (pthread_create(&(*s_etat_processus).thread_fusible, &attributs, 
             fusible, s_etat_processus) != 0)              fusible, s_etat_processus) != 0)

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


CVSweb interface <joel.bertrand@systella.fr>