Diff for /rpl/src/instructions_c5.c between versions 1.16 and 1.66

version 1.16, 2011/03/06 16:44:10 version 1.66, 2019/01/01 09:02:56
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.0.21    RPL/2 (R) version 4.1.30
   Copyright (C) 1989-2011 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 48  instruction_col_plus(struct_processus *s Line 48  instruction_col_plus(struct_processus *s
     struct_objet                    *s_objet_argument_2;      struct_objet                    *s_objet_argument_2;
     struct_objet                    *s_objet_argument_3;      struct_objet                    *s_objet_argument_3;
   
     unsigned long                   i;      integer8                        i;
     unsigned long                   j;      integer8                        j;
     unsigned long                   l;      integer8                        l;
   
     void                            *tampon;      void                            *tampon;
   
Line 174  instruction_col_plus(struct_processus *s Line 174  instruction_col_plus(struct_processus *s
   
         liberation(s_etat_processus, s_objet_argument_3);          liberation(s_etat_processus, s_objet_argument_3);
   
         if ((*s_etat_processus).s_liste_variables[(*s_etat_processus)          if ((*(*s_etat_processus).pointeur_variable_courante)
                 .position_variable_courante].variable_verrouillee == d_vrai)                  .variable_verrouillee == d_vrai)
         {          {
             liberation(s_etat_processus, s_objet_argument_1);              liberation(s_etat_processus, s_objet_argument_1);
             liberation(s_etat_processus, s_objet_argument_2);              liberation(s_etat_processus, s_objet_argument_2);
Line 184  instruction_col_plus(struct_processus *s Line 184  instruction_col_plus(struct_processus *s
             return;              return;
         }          }
   
         if ((*s_etat_processus).s_liste_variables          if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL)
                 [(*s_etat_processus).position_variable_courante].objet == NULL)  
         {          {
             if (pthread_mutex_lock(&((*(*s_etat_processus)  
                     .s_liste_variables_partagees).mutex)) != 0)  
             {  
                 (*s_etat_processus).erreur_systeme = d_es_processus;  
                 return;  
             }  
   
             if (recherche_variable_partagee(s_etat_processus,              if (recherche_variable_partagee(s_etat_processus,
                     (*s_etat_processus).s_liste_variables[(*s_etat_processus)                      (*(*s_etat_processus).pointeur_variable_courante).nom,
                     .position_variable_courante].nom, (*s_etat_processus)                      (*(*s_etat_processus).pointeur_variable_courante)
                     .s_liste_variables[(*s_etat_processus)                      .variable_partagee, (*(*s_etat_processus)
                     .position_variable_courante].variable_partagee,                      .pointeur_variable_courante).origine) == NULL)
                     (*s_etat_processus).s_liste_variables[(*s_etat_processus)  
                     .position_variable_courante].origine) == d_faux)  
             {              {
                 (*s_etat_processus).erreur_systeme = d_es;                  (*s_etat_processus).erreur_systeme = d_es;
                 (*s_etat_processus).erreur_execution =                  (*s_etat_processus).erreur_execution =
                         d_ex_variable_non_definie;                          d_ex_variable_non_definie;
   
                 if (pthread_mutex_unlock(&((*(*s_etat_processus)  
                         .s_liste_variables_partagees).mutex)) != 0)  
                 {  
                     (*s_etat_processus).erreur_systeme = d_es_processus;  
                     return;  
                 }  
   
                 liberation(s_etat_processus, s_objet_argument_1);                  liberation(s_etat_processus, s_objet_argument_1);
                 liberation(s_etat_processus, s_objet_argument_2);                  liberation(s_etat_processus, s_objet_argument_2);
                 return;                  return;
Line 220  instruction_col_plus(struct_processus *s Line 203  instruction_col_plus(struct_processus *s
   
             variable_partagee = d_vrai;              variable_partagee = d_vrai;
             s_objet_argument_3 = (*(*s_etat_processus)              s_objet_argument_3 = (*(*s_etat_processus)
                     .s_liste_variables_partagees).table[(*(*s_etat_processus)                      .pointeur_variable_partagee_courante).objet;
                     .s_liste_variables_partagees).position_variable].objet;  
         }          }
         else          else
         {          {
             s_objet_argument_3 = (*s_etat_processus).s_liste_variables              s_objet_argument_3 = (*(*s_etat_processus)
                     [(*s_etat_processus).position_variable_courante].objet;                      .pointeur_variable_courante).objet;
         }          }
     }      }
     else      else
Line 244  instruction_col_plus(struct_processus *s Line 226  instruction_col_plus(struct_processus *s
         if (variable_partagee == d_vrai)          if (variable_partagee == d_vrai)
         {          {
             if (pthread_mutex_unlock(&((*(*s_etat_processus)              if (pthread_mutex_unlock(&((*(*s_etat_processus)
                     .s_liste_variables_partagees).mutex)) != 0)                      .pointeur_variable_partagee_courante).mutex)) != 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_processus;                  (*s_etat_processus).erreur_systeme = d_es_processus;
                 return;                  return;
Line 266  instruction_col_plus(struct_processus *s Line 248  instruction_col_plus(struct_processus *s
         if (variable_partagee == d_vrai)          if (variable_partagee == d_vrai)
         {          {
             if (pthread_mutex_unlock(&((*(*s_etat_processus)              if (pthread_mutex_unlock(&((*(*s_etat_processus)
                     .s_liste_variables_partagees).mutex)) != 0)                      .pointeur_variable_partagee_courante).mutex)) != 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_processus;                  (*s_etat_processus).erreur_systeme = d_es_processus;
                 return;                  return;
Line 290  instruction_col_plus(struct_processus *s Line 272  instruction_col_plus(struct_processus *s
                         .tableau[i];                          .tableau[i];
   
                 if (((*((struct_matrice *) (*s_copie_argument_3).objet))                  if (((*((struct_matrice *) (*s_copie_argument_3).objet))
                         .tableau[i] = malloc((*((struct_matrice *)                          .tableau[i] = malloc(((size_t) (*((struct_matrice *)
                         (*s_copie_argument_3).objet)).nombre_colonnes *                          (*s_copie_argument_3).objet)).nombre_colonnes) *
                         sizeof(real8))) == NULL)                          sizeof(real8))) == NULL)
                 {                  {
                     if (variable_partagee == d_vrai)                      if (variable_partagee == d_vrai)
                     {                      {
                         if (pthread_mutex_unlock(&((*(*s_etat_processus)                          if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                 .s_liste_variables_partagees).mutex)) != 0)                                  .pointeur_variable_partagee_courante).mutex))
                                   != 0)
                         {                          {
                             (*s_etat_processus).erreur_systeme = d_es_processus;                              (*s_etat_processus).erreur_systeme = d_es_processus;
                             return;                              return;
Line 337  instruction_col_plus(struct_processus *s Line 320  instruction_col_plus(struct_processus *s
                         .tableau[i];                          .tableau[i];
   
                 if (((*((struct_matrice *) (*s_copie_argument_3).objet))                  if (((*((struct_matrice *) (*s_copie_argument_3).objet))
                         .tableau[i] = malloc((*((struct_matrice *)                          .tableau[i] = malloc(((size_t) (*((struct_matrice *)
                         (*s_copie_argument_3).objet)).nombre_colonnes *                          (*s_copie_argument_3).objet)).nombre_colonnes) *
                         sizeof(complex16))) == NULL)                          sizeof(complex16))) == NULL)
                 {                  {
                     if (variable_partagee == d_vrai)                      if (variable_partagee == d_vrai)
                     {                      {
                         if (pthread_mutex_unlock(&((*(*s_etat_processus)                          if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                 .s_liste_variables_partagees).mutex)) != 0)                                  .pointeur_variable_partagee_courante).mutex))
                                   != 0)
                         {                          {
                             (*s_etat_processus).erreur_systeme = d_es_processus;                              (*s_etat_processus).erreur_systeme = d_es_processus;
                             return;                              return;
Line 383  instruction_col_plus(struct_processus *s Line 367  instruction_col_plus(struct_processus *s
                         .tableau[i];                          .tableau[i];
   
                 if (((*((struct_matrice *) (*s_copie_argument_3).objet))                  if (((*((struct_matrice *) (*s_copie_argument_3).objet))
                         .tableau[i] = malloc((*((struct_matrice *)                          .tableau[i] = malloc(((size_t) (*((struct_matrice *)
                         (*s_copie_argument_3).objet)).nombre_colonnes *                          (*s_copie_argument_3).objet)).nombre_colonnes) *
                         sizeof(complex16))) == NULL)                          sizeof(complex16))) == NULL)
                 {                  {
                     if (variable_partagee == d_vrai)                      if (variable_partagee == d_vrai)
                     {                      {
                         if (pthread_mutex_unlock(&((*(*s_etat_processus)                          if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                 .s_liste_variables_partagees).mutex)) != 0)                                  .pointeur_variable_partagee_courante).mutex))
                                   != 0)
                         {                          {
                             (*s_etat_processus).erreur_systeme = d_es_processus;                              (*s_etat_processus).erreur_systeme = d_es_processus;
                             return;                              return;
Line 431  instruction_col_plus(struct_processus *s Line 416  instruction_col_plus(struct_processus *s
             if (variable_partagee == d_vrai)              if (variable_partagee == d_vrai)
             {              {
                 if (pthread_mutex_unlock(&((*(*s_etat_processus)                  if (pthread_mutex_unlock(&((*(*s_etat_processus)
                         .s_liste_variables_partagees).mutex)) != 0)                          .pointeur_variable_partagee_courante).mutex)) != 0)
                 {                  {
                     (*s_etat_processus).erreur_systeme = d_es_processus;                      (*s_etat_processus).erreur_systeme = d_es_processus;
                     return;                      return;
Line 451  instruction_col_plus(struct_processus *s Line 436  instruction_col_plus(struct_processus *s
             return;              return;
         }          }
   
         if ((position < 1) || (position > ((signed long) (*((struct_matrice *)          if ((position < 1) || (position > (*((struct_matrice *)
                 (*s_copie_argument_3).objet)).nombre_colonnes + 1)))                  (*s_copie_argument_3).objet)).nombre_colonnes + 1))
         {          {
             if (variable_partagee == d_vrai)              if (variable_partagee == d_vrai)
             {              {
                 if (pthread_mutex_unlock(&((*(*s_etat_processus)                  if (pthread_mutex_unlock(&((*(*s_etat_processus)
                         .s_liste_variables_partagees).mutex)) != 0)                          .pointeur_variable_partagee_courante).mutex)) != 0)
                 {                  {
                     (*s_etat_processus).erreur_systeme = d_es_processus;                      (*s_etat_processus).erreur_systeme = d_es_processus;
                     return;                      return;
Line 485  instruction_col_plus(struct_processus *s Line 470  instruction_col_plus(struct_processus *s
                     .tableau[i];                      .tableau[i];
   
             if (((*((struct_matrice *) (*s_copie_argument_3).objet)).tableau[i]              if (((*((struct_matrice *) (*s_copie_argument_3).objet)).tableau[i]
                     = malloc((((*((struct_matrice *) (*s_copie_argument_3)                      = malloc((((size_t) (*((struct_matrice *)
                     .objet)).nombre_colonnes) + 1) * sizeof(integer8))) == NULL)                      (*s_copie_argument_3).objet)).nombre_colonnes) + 1) *
                       sizeof(integer8))) == NULL)
             {              {
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 505  instruction_col_plus(struct_processus *s Line 491  instruction_col_plus(struct_processus *s
             for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)              for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)
                     .objet)).nombre_colonnes; j++)                      .objet)).nombre_colonnes; j++)
             {              {
                 if ((signed long) j == (position - 1))                  if (j == (position - 1))
                 {                  {
                     ((integer8 **) (*((struct_matrice *) (*s_copie_argument_3)                      ((integer8 **) (*((struct_matrice *) (*s_copie_argument_3)
                             .objet)).tableau)[i][j] = ((integer8 **)                              .objet)).tableau)[i][j] = ((integer8 **)
Line 543  instruction_col_plus(struct_processus *s Line 529  instruction_col_plus(struct_processus *s
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 564  instruction_col_plus(struct_processus *s Line 550  instruction_col_plus(struct_processus *s
                 return;                  return;
             }              }
   
             if ((position < 1) || (position > ((signed long)              if ((position < 1) || (position >
                     (*((struct_matrice *) (*s_copie_argument_3).objet))                      (*((struct_matrice *) (*s_copie_argument_3).objet))
                     .nombre_colonnes + 1)))                      .nombre_colonnes + 1))
             {              {
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 599  instruction_col_plus(struct_processus *s Line 585  instruction_col_plus(struct_processus *s
                         .tableau[i];                          .tableau[i];
   
                 if (((*((struct_matrice *) (*s_copie_argument_3).objet))                  if (((*((struct_matrice *) (*s_copie_argument_3).objet))
                         .tableau[i] = malloc((((*((struct_matrice *)                          .tableau[i] = malloc((((size_t) (*((struct_matrice *)
                         (*s_copie_argument_3).objet)).nombre_colonnes) + 1) *                          (*s_copie_argument_3).objet)).nombre_colonnes) + 1) *
                         sizeof(real8))) == NULL)                          sizeof(real8))) == NULL)
                 {                  {
                     if (variable_partagee == d_vrai)                      if (variable_partagee == d_vrai)
                     {                      {
                         if (pthread_mutex_unlock(&((*(*s_etat_processus)                          if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                 .s_liste_variables_partagees).mutex)) != 0)                                  .pointeur_variable_partagee_courante).mutex))
                                   != 0)
                         {                          {
                             (*s_etat_processus).erreur_systeme = d_es_processus;                              (*s_etat_processus).erreur_systeme = d_es_processus;
                             return;                              return;
Line 621  instruction_col_plus(struct_processus *s Line 608  instruction_col_plus(struct_processus *s
                 for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)                  for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)
                         .objet)).nombre_colonnes; j++)                          .objet)).nombre_colonnes; j++)
                 {                  {
                     if ((signed long) j == (position - 1))                      if (j == (position - 1))
                     {                      {
                         ((real8 **) (*((struct_matrice *) (*s_copie_argument_3)                          ((real8 **) (*((struct_matrice *) (*s_copie_argument_3)
                                 .objet)).tableau)[i][j] = ((integer8 **)                                  .objet)).tableau)[i][j] = (real8) ((integer8 **)
                                 (*((struct_matrice *) (*s_objet_argument_1)                                  (*((struct_matrice *) (*s_objet_argument_1)
                                 .objet)).tableau)[i][0];                                  .objet)).tableau)[i][0];
                         l = 1;                          l = 1;
Line 639  instruction_col_plus(struct_processus *s Line 626  instruction_col_plus(struct_processus *s
                     ((real8 **) (*((struct_matrice *) (*s_copie_argument_3)                      ((real8 **) (*((struct_matrice *) (*s_copie_argument_3)
                             .objet)).tableau)[i][(*((struct_matrice *)                              .objet)).tableau)[i][(*((struct_matrice *)
                             (*s_copie_argument_3).objet)).nombre_colonnes] =                              (*s_copie_argument_3).objet)).nombre_colonnes] =
                             ((integer8 **) (*((struct_matrice *)                              (real8) ((integer8 **) (*((struct_matrice *)
                             (*s_objet_argument_1).objet)).tableau)[i][0];                              (*s_objet_argument_1).objet)).tableau)[i][0];
                 }                  }
   
Line 658  instruction_col_plus(struct_processus *s Line 645  instruction_col_plus(struct_processus *s
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 679  instruction_col_plus(struct_processus *s Line 666  instruction_col_plus(struct_processus *s
                 return;                  return;
             }              }
   
             if ((position < 1) || (position > ((signed long)              if ((position < 1) || (position >
                     (*((struct_matrice *) (*s_copie_argument_3).objet))                      (*((struct_matrice *) (*s_copie_argument_3).objet))
                     .nombre_colonnes + 1)))                      .nombre_colonnes + 1))
             {              {
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 714  instruction_col_plus(struct_processus *s Line 701  instruction_col_plus(struct_processus *s
                         .tableau[i];                          .tableau[i];
   
                 if (((*((struct_matrice *) (*s_copie_argument_3).objet))                  if (((*((struct_matrice *) (*s_copie_argument_3).objet))
                         .tableau[i] = malloc((((*((struct_matrice *)                          .tableau[i] = malloc((((size_t) (*((struct_matrice *)
                         (*s_copie_argument_3).objet)).nombre_colonnes) + 1) *                          (*s_copie_argument_3).objet)).nombre_colonnes) + 1) *
                         sizeof(real8))) == NULL)                          sizeof(real8))) == NULL)
                 {                  {
                     if (variable_partagee == d_vrai)                      if (variable_partagee == d_vrai)
                     {                      {
                         if (pthread_mutex_unlock(&((*(*s_etat_processus)                          if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                 .s_liste_variables_partagees).mutex)) != 0)                                  .pointeur_variable_partagee_courante).mutex))
                                   != 0)
                         {                          {
                             (*s_etat_processus).erreur_systeme = d_es_processus;                              (*s_etat_processus).erreur_systeme = d_es_processus;
                             return;                              return;
Line 736  instruction_col_plus(struct_processus *s Line 724  instruction_col_plus(struct_processus *s
                 for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)                  for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)
                         .objet)).nombre_colonnes; j++)                          .objet)).nombre_colonnes; j++)
                 {                  {
                     if ((signed long) j == (position - 1))                      if (j == (position - 1))
                     {                      {
                         ((real8 **) (*((struct_matrice *) (*s_copie_argument_3)                          ((real8 **) (*((struct_matrice *) (*s_copie_argument_3)
                                 .objet)).tableau)[i][j] = ((real8 **)                                  .objet)).tableau)[i][j] = ((real8 **)
Line 776  instruction_col_plus(struct_processus *s Line 764  instruction_col_plus(struct_processus *s
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 797  instruction_col_plus(struct_processus *s Line 785  instruction_col_plus(struct_processus *s
                 return;                  return;
             }              }
   
             if ((position < 1) || (position > ((signed long)              if ((position < 1) || (position > (*((struct_matrice *)
                     (*((struct_matrice *)                      (*s_copie_argument_3).objet)).nombre_colonnes + 1))
                     (*s_copie_argument_3).objet)).nombre_colonnes + 1)))  
             {              {
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 832  instruction_col_plus(struct_processus *s Line 819  instruction_col_plus(struct_processus *s
                         .tableau[i];                          .tableau[i];
   
                 if (((*((struct_matrice *) (*s_copie_argument_3).objet))                  if (((*((struct_matrice *) (*s_copie_argument_3).objet))
                         .tableau[i] = malloc((((*((struct_matrice *)                          .tableau[i] = malloc((((size_t) (*((struct_matrice *)
                         (*s_copie_argument_3).objet)).nombre_colonnes) + 1) *                          (*s_copie_argument_3).objet)).nombre_colonnes) + 1) *
                         sizeof(complex16))) == NULL)                          sizeof(complex16))) == NULL)
                 {                  {
                     if (variable_partagee == d_vrai)                      if (variable_partagee == d_vrai)
                     {                      {
                         if (pthread_mutex_unlock(&((*(*s_etat_processus)                          if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                 .s_liste_variables_partagees).mutex)) != 0)                                  .pointeur_variable_partagee_courante).mutex))
                                   != 0)
                         {                          {
                             (*s_etat_processus).erreur_systeme = d_es_processus;                              (*s_etat_processus).erreur_systeme = d_es_processus;
                             return;                              return;
Line 854  instruction_col_plus(struct_processus *s Line 842  instruction_col_plus(struct_processus *s
                 for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)                  for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)
                         .objet)).nombre_colonnes; j++)                          .objet)).nombre_colonnes; j++)
                 {                  {
                     if ((signed long) j == (position - 1))                      if (j == (position - 1))
                     {                      {
                         ((complex16 **) (*((struct_matrice *)                          ((complex16 **) (*((struct_matrice *)
                                 (*s_copie_argument_3).objet)).tableau)[i][j]                                  (*s_copie_argument_3).objet)).tableau)[i][j]
                                 .partie_reelle = ((integer8 **)                                  .partie_reelle = (real8) ((integer8 **)
                                 (*((struct_matrice *) (*s_objet_argument_1)                                  (*((struct_matrice *) (*s_objet_argument_1)
                                 .objet)).tableau)[i][0];                                  .objet)).tableau)[i][0];
                         ((complex16 **) (*((struct_matrice *)                          ((complex16 **) (*((struct_matrice *)
Line 880  instruction_col_plus(struct_processus *s Line 868  instruction_col_plus(struct_processus *s
                     ((complex16 **) (*((struct_matrice *) (*s_copie_argument_3)                      ((complex16 **) (*((struct_matrice *) (*s_copie_argument_3)
                             .objet)).tableau)[i][(*((struct_matrice *)                              .objet)).tableau)[i][(*((struct_matrice *)
                             (*s_copie_argument_3).objet)).nombre_colonnes]                              (*s_copie_argument_3).objet)).nombre_colonnes]
                             .partie_reelle = ((integer8 **)                              .partie_reelle = (real8) ((integer8 **)
                             (*((struct_matrice *) (*s_objet_argument_1).objet))                              (*((struct_matrice *) (*s_objet_argument_1).objet))
                             .tableau)[i][0];                              .tableau)[i][0];
                     ((complex16 **) (*((struct_matrice *) (*s_copie_argument_3)                      ((complex16 **) (*((struct_matrice *) (*s_copie_argument_3)
Line 904  instruction_col_plus(struct_processus *s Line 892  instruction_col_plus(struct_processus *s
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 925  instruction_col_plus(struct_processus *s Line 913  instruction_col_plus(struct_processus *s
                 return;                  return;
             }              }
   
             if ((position < 1) || (position > ((signed long)              if ((position < 1) || (position > (*((struct_matrice *)
                     (*((struct_matrice *)                      (*s_copie_argument_3).objet)).nombre_colonnes + 1))
                     (*s_copie_argument_3).objet)).nombre_colonnes + 1)))  
             {              {
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 960  instruction_col_plus(struct_processus *s Line 947  instruction_col_plus(struct_processus *s
                         .tableau[i];                          .tableau[i];
   
                 if (((*((struct_matrice *) (*s_copie_argument_3).objet))                  if (((*((struct_matrice *) (*s_copie_argument_3).objet))
                         .tableau[i] = malloc((((*((struct_matrice *)                          .tableau[i] = malloc((((size_t) (*((struct_matrice *)
                         (*s_copie_argument_3).objet)).nombre_colonnes) + 1) *                          (*s_copie_argument_3).objet)).nombre_colonnes) + 1) *
                         sizeof(complex16))) == NULL)                          sizeof(complex16))) == NULL)
                 {                  {
                     if (variable_partagee == d_vrai)                      if (variable_partagee == d_vrai)
                     {                      {
                         if (pthread_mutex_unlock(&((*(*s_etat_processus)                          if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                 .s_liste_variables_partagees).mutex)) != 0)                                  .pointeur_variable_partagee_courante).mutex))
                                   != 0)
                         {                          {
                             (*s_etat_processus).erreur_systeme = d_es_processus;                              (*s_etat_processus).erreur_systeme = d_es_processus;
                             return;                              return;
Line 982  instruction_col_plus(struct_processus *s Line 970  instruction_col_plus(struct_processus *s
                 for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)                  for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)
                         .objet)).nombre_colonnes; j++)                          .objet)).nombre_colonnes; j++)
                 {                  {
                     if ((signed long) j == (position - 1))                      if (j == (position - 1))
                     {                      {
                         ((complex16 **) (*((struct_matrice *)                          ((complex16 **) (*((struct_matrice *)
                                 (*s_copie_argument_3).objet)).tableau)[i][j]                                  (*s_copie_argument_3).objet)).tableau)[i][j]
Line 1032  instruction_col_plus(struct_processus *s Line 1020  instruction_col_plus(struct_processus *s
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 1053  instruction_col_plus(struct_processus *s Line 1041  instruction_col_plus(struct_processus *s
                 return;                  return;
             }              }
   
             if ((position < 1) || (position > ((signed long)              if ((position < 1) || (position > (*((struct_matrice *)
                     (*((struct_matrice *)                      (*s_copie_argument_3).objet)).nombre_colonnes + 1))
                     (*s_copie_argument_3).objet)).nombre_colonnes + 1)))  
             {              {
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 1088  instruction_col_plus(struct_processus *s Line 1075  instruction_col_plus(struct_processus *s
                         .tableau[i];                          .tableau[i];
   
                 if (((*((struct_matrice *) (*s_copie_argument_3).objet))                  if (((*((struct_matrice *) (*s_copie_argument_3).objet))
                         .tableau[i] = malloc((((*((struct_matrice *)                          .tableau[i] = malloc((((size_t) (*((struct_matrice *)
                         (*s_copie_argument_3).objet)).nombre_colonnes) + 1) *                          (*s_copie_argument_3).objet)).nombre_colonnes) + 1) *
                         sizeof(complex16))) == NULL)                          sizeof(complex16))) == NULL)
                 {                  {
                     if (variable_partagee == d_vrai)                      if (variable_partagee == d_vrai)
                     {                      {
                         if (pthread_mutex_unlock(&((*(*s_etat_processus)                          if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                 .s_liste_variables_partagees).mutex)) != 0)                                  .pointeur_variable_partagee_courante).mutex))
                                   != 0)
                         {                          {
                             (*s_etat_processus).erreur_systeme = d_es_processus;                              (*s_etat_processus).erreur_systeme = d_es_processus;
                             return;                              return;
Line 1110  instruction_col_plus(struct_processus *s Line 1098  instruction_col_plus(struct_processus *s
                 for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)                  for(l = j = 0; j < (*((struct_matrice *) (*s_copie_argument_3)
                         .objet)).nombre_colonnes; j++)                          .objet)).nombre_colonnes; j++)
                 {                  {
                     if ((signed long) j == (position - 1))                      if (j == (position - 1))
                     {                      {
                         ((complex16 **) (*((struct_matrice *)                          ((complex16 **) (*((struct_matrice *)
                                 (*s_copie_argument_3).objet)).tableau)[i][j]                                  (*s_copie_argument_3).objet)).tableau)[i][j]
Line 1183  instruction_col_plus(struct_processus *s Line 1171  instruction_col_plus(struct_processus *s
     {      {
         if (variable_partagee == d_faux)          if (variable_partagee == d_faux)
         {          {
             (*s_etat_processus).s_liste_variables              (*(*s_etat_processus).pointeur_variable_courante).objet =
                     [(*s_etat_processus).position_variable_courante].objet =  
                     s_copie_argument_3;                      s_copie_argument_3;
         }          }
         else          else
         {          {
             (*(*s_etat_processus).s_liste_variables_partagees).table              (*(*s_etat_processus).pointeur_variable_partagee_courante).objet =
                     [(*(*s_etat_processus).s_liste_variables_partagees)                      s_copie_argument_3;
                     .position_variable].objet = s_copie_argument_3;              (*(*s_etat_processus).pointeur_variable_courante).objet = NULL;
             (*s_etat_processus).s_liste_variables  
                     [(*s_etat_processus).position_variable_courante].objet =  
                     NULL;  
   
             if (pthread_mutex_unlock(&((*(*s_etat_processus)              if (pthread_mutex_unlock(&((*(*s_etat_processus)
                     .s_liste_variables_partagees).mutex)) != 0)                      .pointeur_variable_partagee_courante).mutex)) != 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_processus;                  (*s_etat_processus).erreur_systeme = d_es_processus;
                 return;                  return;
Line 1238  instruction_col_moins(struct_processus * Line 1222  instruction_col_moins(struct_processus *
     struct_objet                *s_objet_argument_2;      struct_objet                *s_objet_argument_2;
     struct_objet                *s_objet_resultat;      struct_objet                *s_objet_resultat;
   
     unsigned long               i;      integer8                    i;
     unsigned long               j;      integer8                    j;
     unsigned long               k;      integer8                    k;
     unsigned long               colonne;      integer8                    colonne;
   
     void                        *tampon;      void                        *tampon;
   
Line 1319  instruction_col_moins(struct_processus * Line 1303  instruction_col_moins(struct_processus *
   
         liberation(s_etat_processus, s_objet_argument_2);          liberation(s_etat_processus, s_objet_argument_2);
   
         if ((*s_etat_processus).s_liste_variables[(*s_etat_processus)          if ((*(*s_etat_processus).pointeur_variable_courante)
                 .position_variable_courante].variable_verrouillee == d_vrai)                  .variable_verrouillee == d_vrai)
         {          {
             liberation(s_etat_processus, s_objet_argument_1);              liberation(s_etat_processus, s_objet_argument_1);
   
Line 1328  instruction_col_moins(struct_processus * Line 1312  instruction_col_moins(struct_processus *
             return;              return;
         }          }
   
         if ((*s_etat_processus).s_liste_variables[(*s_etat_processus)          if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL)
                 .position_variable_courante].objet == NULL)  
         {          {
             if (pthread_mutex_lock(&((*(*s_etat_processus)  
                     .s_liste_variables_partagees).mutex)) != 0)  
             {  
                 (*s_etat_processus).erreur_systeme = d_es_processus;  
                 return;  
             }  
   
             if (recherche_variable_partagee(s_etat_processus,              if (recherche_variable_partagee(s_etat_processus,
                     (*s_etat_processus).s_liste_variables[(*s_etat_processus)                      (*(*s_etat_processus).pointeur_variable_courante).nom,
                     .position_variable_courante].nom, (*s_etat_processus)                      (*(*s_etat_processus).pointeur_variable_courante)
                     .s_liste_variables[(*s_etat_processus)                      .variable_partagee, (*(*s_etat_processus)
                     .position_variable_courante].variable_partagee,                      .pointeur_variable_courante).origine) == NULL)
                     (*s_etat_processus).s_liste_variables[(*s_etat_processus)  
                     .position_variable_courante].origine) == d_faux)  
             {              {
                 (*s_etat_processus).erreur_systeme = d_es;                  (*s_etat_processus).erreur_systeme = d_es;
                 (*s_etat_processus).erreur_execution =                  (*s_etat_processus).erreur_execution =
                         d_ex_variable_non_definie;                          d_ex_variable_non_definie;
   
                 if (pthread_mutex_unlock(&((*(*s_etat_processus)  
                         .s_liste_variables_partagees).mutex)) != 0)  
                 {  
                     (*s_etat_processus).erreur_systeme = d_es_processus;  
                     return;  
                 }  
   
                 liberation(s_etat_processus, s_objet_argument_1);                  liberation(s_etat_processus, s_objet_argument_1);
                 return;                  return;
             }              }
   
             variable_partagee = d_vrai;              variable_partagee = d_vrai;
             s_objet_argument_2 = (*(*s_etat_processus)              s_objet_argument_2 = (*(*s_etat_processus)
                     .s_liste_variables_partagees).table[(*(*s_etat_processus)                      .pointeur_variable_partagee_courante).objet;
                     .s_liste_variables_partagees).position_variable].objet;  
         }          }
         else          else
         {          {
             s_objet_argument_2 = (*s_etat_processus).s_liste_variables              s_objet_argument_2 = (*(*s_etat_processus)
                     [(*s_etat_processus).position_variable_courante].objet;                      .pointeur_variable_courante).objet;
         }          }
   
         presence_variable = d_vrai;          presence_variable = d_vrai;
Line 1385  instruction_col_moins(struct_processus * Line 1351  instruction_col_moins(struct_processus *
         if (variable_partagee == d_vrai)          if (variable_partagee == d_vrai)
         {          {
             if (pthread_mutex_unlock(&((*(*s_etat_processus)              if (pthread_mutex_unlock(&((*(*s_etat_processus)
                     .s_liste_variables_partagees).mutex)) != 0)                      .pointeur_variable_partagee_courante).mutex)) != 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_processus;                  (*s_etat_processus).erreur_systeme = d_es_processus;
                 return;                  return;
Line 1404  instruction_col_moins(struct_processus * Line 1370  instruction_col_moins(struct_processus *
         {          {
             position = (*((integer8 *) (*s_objet_argument_1).objet));              position = (*((integer8 *) (*s_objet_argument_1).objet));
   
             if ((position <= 0) || (position > (signed long)              if ((position <= 0) || (position > (*((struct_matrice *)
                     (*((struct_matrice *)  
                     (*s_copie_argument_2).objet)).nombre_colonnes))                      (*s_copie_argument_2).objet)).nombre_colonnes))
             {              {
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 1437  instruction_col_moins(struct_processus * Line 1402  instruction_col_moins(struct_processus *
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 1454  instruction_col_moins(struct_processus * Line 1419  instruction_col_moins(struct_processus *
                 if (variable_partagee == d_vrai)                  if (variable_partagee == d_vrai)
                 {                  {
                     if (pthread_mutex_unlock(&((*(*s_etat_processus)                      if (pthread_mutex_unlock(&((*(*s_etat_processus)
                             .s_liste_variables_partagees).mutex)) != 0)                              .pointeur_variable_partagee_courante).mutex)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 1480  instruction_col_moins(struct_processus * Line 1445  instruction_col_moins(struct_processus *
                     (*s_objet_resultat).type = MIN;                      (*s_objet_resultat).type = MIN;
   
                     if (((*((struct_matrice *) (*s_objet_resultat).objet))                      if (((*((struct_matrice *) (*s_objet_resultat).objet))
                             .tableau = malloc((*((struct_matrice *)                              .tableau = malloc(((size_t) (*((struct_matrice *)
                             (*s_objet_resultat).objet)).nombre_lignes *                              (*s_objet_resultat).objet)).nombre_lignes) *
                             sizeof(integer8 *))) == NULL)                              sizeof(integer8 *))) == NULL)
                     {                      {
                         if (variable_partagee == d_vrai)                          if (variable_partagee == d_vrai)
                         {                          {
                             if (pthread_mutex_unlock(&((*(*s_etat_processus)                              if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                     .s_liste_variables_partagees).mutex)) != 0)                                      .pointeur_variable_partagee_courante)
                                       .mutex)) != 0)
                             {                              {
                                 (*s_etat_processus).erreur_systeme =                                  (*s_etat_processus).erreur_systeme =
                                         d_es_processus;                                          d_es_processus;
Line 1509  instruction_col_moins(struct_processus * Line 1475  instruction_col_moins(struct_processus *
                             if (variable_partagee == d_vrai)                              if (variable_partagee == d_vrai)
                             {                              {
                                 if (pthread_mutex_unlock(&((*(*s_etat_processus)                                  if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                         .s_liste_variables_partagees).mutex))                                          .pointeur_variable_partagee_courante)
                                         != 0)                                          .mutex)) != 0)
                                 {                                  {
                                     (*s_etat_processus).erreur_systeme =                                      (*s_etat_processus).erreur_systeme =
                                             d_es_processus;                                              d_es_processus;
Line 1540  instruction_col_moins(struct_processus * Line 1506  instruction_col_moins(struct_processus *
                                 (*s_copie_argument_2).objet)).tableau)[i];                                  (*s_copie_argument_2).objet)).tableau)[i];
   
                         if ((((*((struct_matrice *) (*s_copie_argument_2)                          if ((((*((struct_matrice *) (*s_copie_argument_2)
                                 .objet)).tableau)[i] = malloc(                                  .objet)).tableau)[i] = malloc(((size_t)
                                 ((*((struct_matrice *) (*s_copie_argument_2)                                  ((*((struct_matrice *) (*s_copie_argument_2)
                                 .objet)).nombre_colonnes - 1) *                                  .objet)).nombre_colonnes) - 1) *
                                 sizeof(integer8))) == NULL)                                  sizeof(integer8))) == NULL)
                         {                           { 
                             if (variable_partagee == d_vrai)                              if (variable_partagee == d_vrai)
                             {                              {
                                 if (pthread_mutex_unlock(&((*(*s_etat_processus)                                  if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                         .s_liste_variables_partagees).mutex))                                          .pointeur_variable_partagee_courante)
                                         != 0)                                          .mutex)) != 0)
                                 {                                  {
                                     (*s_etat_processus).erreur_systeme =                                      (*s_etat_processus).erreur_systeme =
                                             d_es_processus;                                              d_es_processus;
Line 1589  instruction_col_moins(struct_processus * Line 1555  instruction_col_moins(struct_processus *
                     (*s_objet_resultat).type = MRL;                      (*s_objet_resultat).type = MRL;
   
                     if (((*((struct_matrice *) (*s_objet_resultat).objet))                      if (((*((struct_matrice *) (*s_objet_resultat).objet))
                             .tableau = malloc((*((struct_matrice *)                              .tableau = malloc(((size_t) (*((struct_matrice *)
                             (*s_objet_resultat).objet)).nombre_lignes *                              (*s_objet_resultat).objet)).nombre_lignes) *
                             sizeof(real8 *))) == NULL)                              sizeof(real8 *))) == NULL)
                     {                      {
                         if (variable_partagee == d_vrai)                          if (variable_partagee == d_vrai)
                         {                          {
                             if (pthread_mutex_unlock(&((*(*s_etat_processus)                              if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                     .s_liste_variables_partagees).mutex)) != 0)                                      .pointeur_variable_partagee_courante)
                                       .mutex)) != 0)
                             {                              {
                                 (*s_etat_processus).erreur_systeme =                                  (*s_etat_processus).erreur_systeme =
                                         d_es_processus;                                          d_es_processus;
Line 1618  instruction_col_moins(struct_processus * Line 1585  instruction_col_moins(struct_processus *
                             if (variable_partagee == d_vrai)                              if (variable_partagee == d_vrai)
                             {                              {
                                 if (pthread_mutex_unlock(&((*(*s_etat_processus)                                  if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                         .s_liste_variables_partagees).mutex))                                          .pointeur_variable_partagee_courante)
                                         != 0)                                          .mutex)) != 0)
                                 {                                  {
                                     (*s_etat_processus).erreur_systeme =                                      (*s_etat_processus).erreur_systeme =
                                             d_es_processus;                                              d_es_processus;
Line 1649  instruction_col_moins(struct_processus * Line 1616  instruction_col_moins(struct_processus *
                                 (*s_copie_argument_2).objet)).tableau)[i];                                  (*s_copie_argument_2).objet)).tableau)[i];
   
                         if ((((*((struct_matrice *) (*s_copie_argument_2)                          if ((((*((struct_matrice *) (*s_copie_argument_2)
                                 .objet)).tableau)[i] = malloc(                                  .objet)).tableau)[i] = malloc(((size_t)
                                 ((*((struct_matrice *) (*s_copie_argument_2)                                  ((*((struct_matrice *) (*s_copie_argument_2)
                                 .objet)).nombre_colonnes - 1) *                                  .objet)).nombre_colonnes) - 1) *
                                 sizeof(real8))) == NULL)                                  sizeof(real8))) == NULL)
                         {                          {
                             if (variable_partagee == d_vrai)                              if (variable_partagee == d_vrai)
                             {                              {
                                 if (pthread_mutex_unlock(&((*(*s_etat_processus)                                  if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                         .s_liste_variables_partagees).mutex))                                          .pointeur_variable_partagee_courante)
                                         != 0)                                          .mutex)) != 0)
                                 {                                  {
                                     (*s_etat_processus).erreur_systeme =                                      (*s_etat_processus).erreur_systeme =
                                             d_es_processus;                                              d_es_processus;
Line 1698  instruction_col_moins(struct_processus * Line 1665  instruction_col_moins(struct_processus *
                     (*s_objet_resultat).type = MCX;                      (*s_objet_resultat).type = MCX;
   
                     if (((*((struct_matrice *) (*s_objet_resultat).objet))                      if (((*((struct_matrice *) (*s_objet_resultat).objet))
                             .tableau = malloc((*((struct_matrice *)                              .tableau = malloc(((size_t) (*((struct_matrice *)
                             (*s_objet_resultat).objet)).nombre_lignes *                              (*s_objet_resultat).objet)).nombre_lignes) *
                             sizeof(complex16 *))) == NULL)                              sizeof(complex16 *))) == NULL)
                     {                      {
                         if (variable_partagee == d_vrai)                          if (variable_partagee == d_vrai)
                         {                          {
                             if (pthread_mutex_unlock(&((*(*s_etat_processus)                              if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                     .s_liste_variables_partagees).mutex))                                      .pointeur_variable_partagee_courante)
                                     != 0)                                      .mutex)) != 0)
                             {                              {
                                 (*s_etat_processus).erreur_systeme =                                  (*s_etat_processus).erreur_systeme =
                                         d_es_processus;                                          d_es_processus;
Line 1729  instruction_col_moins(struct_processus * Line 1696  instruction_col_moins(struct_processus *
                             if (variable_partagee == d_vrai)                              if (variable_partagee == d_vrai)
                             {                              {
                                 if (pthread_mutex_unlock(&((*(*s_etat_processus)                                  if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                         .s_liste_variables_partagees).mutex))                                          .pointeur_variable_partagee_courante)
                                         != 0)                                          .mutex)) != 0)
                                 {                                  {
                                     (*s_etat_processus).erreur_systeme =                                      (*s_etat_processus).erreur_systeme =
                                             d_es_processus;                                              d_es_processus;
Line 1767  instruction_col_moins(struct_processus * Line 1734  instruction_col_moins(struct_processus *
                                 (*s_copie_argument_2).objet)).tableau)[i];                                  (*s_copie_argument_2).objet)).tableau)[i];
   
                         if ((((*((struct_matrice *) (*s_copie_argument_2)                          if ((((*((struct_matrice *) (*s_copie_argument_2)
                                 .objet)).tableau)[i] = malloc(                                  .objet)).tableau)[i] = malloc(((size_t)
                                 ((*((struct_matrice *) (*s_copie_argument_2)                                  ((*((struct_matrice *) (*s_copie_argument_2)
                                 .objet)).nombre_colonnes - 1) *                                  .objet)).nombre_colonnes) - 1) *
                                 sizeof(complex16))) == NULL)                                  sizeof(complex16))) == NULL)
                         {                          {
                             if (variable_partagee == d_vrai)                              if (variable_partagee == d_vrai)
                             {                              {
                                 if (pthread_mutex_unlock(&((*(*s_etat_processus)                                  if (pthread_mutex_unlock(&((*(*s_etat_processus)
                                         .s_liste_variables_partagees).mutex))                                          .pointeur_variable_partagee_courante)
                                         != 0)                                          .mutex)) != 0)
                                 {                                  {
                                     (*s_etat_processus).erreur_systeme =                                      (*s_etat_processus).erreur_systeme =
                                             d_es_processus;                                              d_es_processus;
Line 1860  instruction_col_moins(struct_processus * Line 1827  instruction_col_moins(struct_processus *
     {      {
         if (variable_partagee == d_faux)          if (variable_partagee == d_faux)
         {          {
             (*s_etat_processus).s_liste_variables              (*(*s_etat_processus).pointeur_variable_courante).objet =
                     [(*s_etat_processus).position_variable_courante].objet =  
                     s_copie_argument_2;                      s_copie_argument_2;
         }          }
         else          else
         {          {
             (*(*s_etat_processus).s_liste_variables_partagees).table              (*(*s_etat_processus).pointeur_variable_partagee_courante).objet =
                     [(*(*s_etat_processus).s_liste_variables_partagees)                      s_copie_argument_2;
                     .position_variable].objet = s_copie_argument_2;              (*(*s_etat_processus).pointeur_variable_courante).objet = NULL;
             (*s_etat_processus).s_liste_variables  
                     [(*s_etat_processus).position_variable_courante].objet =  
                     NULL;  
   
             if (pthread_mutex_unlock(&((*(*s_etat_processus)              if (pthread_mutex_unlock(&((*(*s_etat_processus)
                     .s_liste_variables_partagees).mutex)) != 0)                      .pointeur_variable_partagee_courante).mutex)) != 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_processus;                  (*s_etat_processus).erreur_systeme = d_es_processus;
                 return;                  return;

Removed from v.1.16  
changed lines
  Added in v.1.66


CVSweb interface <joel.bertrand@systella.fr>