Diff for /capa/capa51/pProj/capaUnit.c between versions 1.9 and 1.12

version 1.9, 2000/09/14 20:25:12 version 1.12, 2004/03/26 20:02:03
Line 781  int  check_correct_unit(char *u_symb,Uni Line 781  int  check_correct_unit(char *u_symb,Uni
   (Pstack[Ptopidx]->u_count == t->u_count) ) { /* has unit */    (Pstack[Ptopidx]->u_count == t->u_count) ) { /* has unit */
  *scale = units_ratio(Pstack[Ptopidx], t);   *scale = units_ratio(Pstack[Ptopidx], t);
  if( *scale == 0.0 ) {   if( *scale == 0.0 ) {
   result = UNIT_FAIL;    result = UNIT_IRRECONCIBLE;
  }   }
  free_utree(ap);   free_utree(ap);
       } else {        } else {
  result = UNIT_FAIL;   result = UNIT_INVALID_STUDENT3;
       }        }
     } else { /* invalid unit representation */      } else { /* invalid unit representation */
       result = UNIT_FAIL;        result = UNIT_INVALID_STUDENT2;
     }      }
   } else {    } else {
     result = UNIT_FAIL;      result = UNIT_INVALID_STUDENT1;
   }    }
 #ifdef UNIT_DBUG  #ifdef UNIT_DBUG
   fclose(ufp);    fclose(ufp);
Line 912  u_copy_unit(Unit_t *a_p, Unit_t *b_p, do Line 912  u_copy_unit(Unit_t *a_p, Unit_t *b_p, do
       a_p->u_count++;        a_p->u_count++;
     } else if( b_p->u_type == U_DERIVED) {      } else if( b_p->u_type == U_DERIVED) {
       /* derived units but without any units elements (scalar) */        /* derived units but without any units elements (scalar) */
       /* do nothing, ignore this units  WE REALLY MEAN THIS DON'T DO THE NEXT LINE!*/  
       /*a_p->u_count++;*/        /*a_p->u_count++;*/
         scale = pow(b_p->u_scale, exp_scale);
         a_p->u_scale = a_p->u_scale * scale;
     } else if( b_p->u_type == U_CONSTANT ) {      } else if( b_p->u_type == U_CONSTANT ) {
       scale = pow(b_p->u_scale, exp_scale);        scale = pow(b_p->u_scale, exp_scale);
       a_p->u_scale = a_p->u_scale * scale;        a_p->u_scale = a_p->u_scale * scale;
Line 1407  u_insert_derived(n_p,s_p,c_p,u_p)char  * Line 1408  u_insert_derived(n_p,s_p,c_p,u_p)char  *
   strcpy(new_p->u_comment,c_p);    strcpy(new_p->u_comment,c_p);
       
   simplify_unit(new_p);    simplify_unit(new_p);
   /*  #ifdef UNIT_DBUG
   printf("Derived Unit:%s\n",new_p->u_name);    printf("Derived Unit:%s\n",new_p->u_name);
   print_unit_t(new_p);     print_unit_t(new_p); 
   */  #endif
   if (c_result < 0 ) {    if (c_result < 0 ) {
     new_p->u_left = t->u_left; new_p->u_right = t;      new_p->u_left = t->u_left; new_p->u_right = t;
     t->u_left = NULL;      t->u_left = NULL;

Removed from v.1.9  
changed lines
  Added in v.1.12


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