Diff for /capa/capa51/pProj/capaGrammarDef.y between versions 1.5 and 1.6

version 1.5, 1999/10/20 19:57:37 version 1.6, 1999/11/08 22:30:02
Line 554  pt_list      :   pt_list  ','  point_coo Line 554  pt_list      :   pt_list  ','  point_coo
              |   pt_range                           { }               |   pt_range                           { }
              ;               ;
   
 pt_range     :   point_coord   ':'  point_coord  '#'  IDENTIFIER   { PointsList_t *pt;  pt_range     :   point_coord   ':'  point_coord  '#'  IDENTIFIER   
                                 { 
                                                                      if( LastPtsList != NULL ) {   assign_pts($1,$3,$5);
                                                                         LastPtsList->pts_next = gen_ptslist( $1, $3, $5 );   /*PointsList_t *pt;
                                                                         pt = LastPtsList->pts_next;          if( LastPtsList != NULL ) {
                                                                         while( pt->pts_next != NULL ) {    LastPtsList->pts_next = gen_ptslist( $1, $3, $5 );
                                                                            pt = pt->pts_next;    pt = LastPtsList->pts_next;
                                                                         }    while( pt->pts_next != NULL ) {
                                                                         LastPtsList = pt;      pt = pt->pts_next;
                                                                      } else {    }
                                                                         CurrPtsList = gen_ptslist( $1, $3, $5 );    LastPtsList = pt;
                                                                         LastPtsList = CurrPtsList;   } else {
                                                                      }    CurrPtsList = gen_ptslist( $1, $3, $5 );
                                                                      if( $1->s_type == S_CONSTANT ) {    LastPtsList = CurrPtsList;
                                                                          capa_mfree($1->s_str); capa_mfree((char *)$1);   }
                                                                      }   if( $1->s_type == S_CONSTANT ) {
                                                                      if( $3->s_type == S_CONSTANT ) {    capa_mfree($1->s_str); capa_mfree((char *)$1);
                                                                          capa_mfree($3->s_str); capa_mfree((char *)$3);   }
                                                                      }   if( $3->s_type == S_CONSTANT ) {
                                                                    }    capa_mfree($3->s_str); capa_mfree((char *)$3);
              |   point_coord   ':'  point_coord  '#'  a_number     { PointsList_t *pt;   }
    */
                                                                      if( LastPtsList != NULL ) {        }
                                                                         LastPtsList->pts_next = gen_ptslist( $1, $3, $5 );               |   point_coord   ':'  point_coord  '#'  ARRAY_ID '[' calc_expr ']'
                                                                         pt = LastPtsList->pts_next;                                { assign_pts($1,$3,get_array_symbol($5,$7,1)); }
                                                                         while( pt->pts_next != NULL ) {               |   point_coord   ':'  point_coord  '#'  a_number     
                                                                            pt = pt->pts_next;                                { 
                                                                         }   assign_pts($1,$3,$5);
                                                                         LastPtsList = pt;   /*PointsList_t *pt;
                                                                      } else {        
                                                                         CurrPtsList = gen_ptslist( $1, $3, $5 );   if( LastPtsList != NULL ) {
                                                                         LastPtsList = CurrPtsList;     LastPtsList->pts_next = gen_ptslist( $1, $3, $5 );
                                                                      }     pt = LastPtsList->pts_next;
                                                                      if( $1->s_type == S_CONSTANT ) {     while( pt->pts_next != NULL ) {
                                                                          capa_mfree($1->s_str); capa_mfree((char *)$1);       pt = pt->pts_next;
                                                                      }     }
                                                                      if( $3->s_type == S_CONSTANT ) {     LastPtsList = pt;
                                                                          capa_mfree($3->s_str); capa_mfree((char *)$3);   } else {
                                                                      }     CurrPtsList = gen_ptslist( $1, $3, $5 );
                                                                      if( $5->s_type == I_CONSTANT || $5->s_type == R_CONSTANT) {     LastPtsList = CurrPtsList;
                                                                          capa_mfree((char *)$5);   }
                                                                      }   if( $1->s_type == S_CONSTANT ) {
                                                                    }     capa_mfree($1->s_str); capa_mfree((char *)$1);
    }
    if( $3->s_type == S_CONSTANT ) {
      capa_mfree($3->s_str); capa_mfree((char *)$3);
    }
    if( $5->s_type == I_CONSTANT || $5->s_type == R_CONSTANT) {
      capa_mfree((char *)$5);
    }
    */
         }
              ;               ;
   
   
 point_coord  :   IDENTIFIER            { $$ = $1;  }  point_coord  :   IDENTIFIER                 { $$ = $1;  }
              |   S_CONSTANT            { $$ = $1;  }               |   ARRAY_ID '[' calc_expr ']' { $$ = get_array_symbol($1,$3,1); }
                |   S_CONSTANT                 { $$ = $1;  }
              ;               ;
   
   
Line 1789  assign_id_list( s ) Symbol *s; Line 1799  assign_id_list( s ) Symbol *s;
   }    }
 }  }
   
   void assign_pts ( Symbol* coord1, Symbol* coord2, Symbol* num) {
     PointsList_t *pt;
     if( LastPtsList != NULL ) {
       LastPtsList->pts_next = gen_ptslist( coord1, coord2, num );
       pt = LastPtsList->pts_next;
       while( pt->pts_next != NULL ) {
         pt = pt->pts_next;
       }
       LastPtsList = pt;
     } else {
       CurrPtsList = gen_ptslist( coord1, coord2, num );
       LastPtsList = CurrPtsList;
     }
     if(coord1->s_type == S_CONSTANT) {
       capa_mfree(coord1->s_str); capa_mfree((char *)coord1);
     }
     if(coord2->s_type == S_CONSTANT) {
       capa_mfree(coord2->s_str); capa_mfree((char *)coord2);
     }
     if(num->s_type == I_CONSTANT || num->s_type == R_CONSTANT) {
       capa_mfree((char *)num);
     }
   }
   
 /* =========================================================================== */  /* =========================================================================== */
   
   

Removed from v.1.5  
changed lines
  Added in v.1.6


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>