Diff for /capa/capa51/pProj/capaFormula.y between versions 1.2 and 1.7

version 1.2, 2000/06/27 18:28:48 version 1.7, 2000/08/23 16:55:12
Line 1 Line 1
   /* formula parser
      Copyright (C) 1992-2000 Michigan State University
   
      The CAPA system is free software; you can redistribute it and/or
      modify it under the terms of the GNU General Public License as
      published by the Free Software Foundation; either version 2 of the
      License, or (at your option) any later version.
   
      The CAPA system is distributed in the hope that it will be useful,
      but WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      General Public License for more details.
   
      You should have received a copy of the GNU General Public
      License along with the CAPA system; see the file COPYING.  If not,
      write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
      Boston, MA 02111-1307, USA.
   
      As a special exception, you have permission to link this program
      with the TtH/TtM library and distribute executables, as long as you
      follow the requirements of the GNU GPL in regard to all of the
      software in the executable aside from TtH/TtM.
   */
   
 /* ====================================================== */  /* ====================================================== */
 /*      capaFormula.y  created by Isaac Tsai @ Feb 1999   */  /*      capaFormula.y  created by Isaac Tsai @ Feb 1999   */
 /*      copyrighted by Isaac Tsai    1999                 */  
 /*  TODO: checking user inputs   2/27/99      IT          */  /*  TODO: checking user inputs   2/27/99      IT          */
 /* ====================================================== */  /* ====================================================== */
 %{  %{
Line 126  basic_item   : F_ID F_LPAR F_RPAR Line 148  basic_item   : F_ID F_LPAR F_RPAR
                 $$ = do_function(tmp, $3->s_argc, $3->s_argp);                  $$ = do_function(tmp, $3->s_argc, $3->s_argp);
                 capa_mfree(FuncStack[Func_idx].s_name);                  capa_mfree(FuncStack[Func_idx].s_name);
                 free_arglist($3->s_argp);                  free_arglist($3->s_argp);
    $3->s_argp=NULL;
                                                       }                                                        }
                                                   }                                                    }
              | V_ID                               { FMLDBUG_PR3("[V %s = %.16g] ",$1->s_name, $1->s_real);               | V_ID                               { FMLDBUG_PR3("[V %s = %.16g] ",$1->s_name, $1->s_real);
Line 194  f_symbol_pow(ap,bp) Symbol *ap; Symbol * Line 217  f_symbol_pow(ap,bp) Symbol *ap; Symbol *
      case S_CONSTANT:        case S_CONSTANT: 
      default:         error = 1; break;       default:         error = 1; break;
   }    }
     if ((!(((double)((int)b)) == b)) && (a < 0.0)) {
       error = 1;
     }
   if (!error) {    if (!error) {
     cp = (Symbol *)capa_malloc(sizeof(Symbol),1);      cp = (Symbol *)capa_malloc(sizeof(Symbol),1);
     cp->s_type = R_CONSTANT;      cp->s_type = R_CONSTANT;

Removed from v.1.2  
changed lines
  Added in v.1.7


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