version 1.65, 2009/03/04 09:15:36 |
version 1.67, 2010/05/24 01:59:52 |
|
|
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* |
* |
* $OpenXM: OpenXM_contrib2/asir2000/parse/eval.c,v 1.64 2008/11/18 20:52:47 ohara Exp $ |
* $OpenXM: OpenXM_contrib2/asir2000/parse/eval.c,v 1.66 2010/04/23 04:44:52 noro Exp $ |
*/ |
*/ |
#include <ctype.h> |
#include <ctype.h> |
#include "ca.h" |
#include "ca.h" |
Line 987 pointer evalf(FUNC f,FNODE a,FNODE opt) |
|
Line 987 pointer evalf(FUNC f,FNODE a,FNODE opt) |
|
for ( tn = f->f.usrf->args, sn = BDY(args); |
for ( tn = f->f.usrf->args, sn = BDY(args); |
sn; tn = NEXT(tn), sn = NEXT(sn) ) |
sn; tn = NEXT(tn), sn = NEXT(sn) ) |
ASSPV((int)FA0((FNODE)BDY(tn)),BDY(sn)); |
ASSPV((int)FA0((FNODE)BDY(tn)),BDY(sn)); |
|
f_return = f_break = f_continue = 0; |
if ( f->f.usrf->module ) { |
if ( f->f.usrf->module ) { |
prev_mpvs = MPVS; |
prev_mpvs = MPVS; |
MPVS = f->f.usrf->module->pvs; |
MPVS = f->f.usrf->module->pvs; |
Line 995 pointer evalf(FUNC f,FNODE a,FNODE opt) |
|
Line 996 pointer evalf(FUNC f,FNODE a,FNODE opt) |
|
} else |
} else |
val = evalstat((SNODE)BDY(f->f.usrf)); |
val = evalstat((SNODE)BDY(f->f.usrf)); |
f_return = f_break = f_continue = 0; poppvs(); |
f_return = f_break = f_continue = 0; poppvs(); |
|
if ( PVSS ) |
|
evalstatline = ((VS)BDY(PVSS))->at; |
break; |
break; |
case A_PURE: |
case A_PURE: |
args = (LIST)eval(a); |
args = (LIST)eval(a); |
Line 1195 pointer bevalf(FUNC f,NODE a) |
|
Line 1198 pointer bevalf(FUNC f,NODE a) |
|
for ( tn = f->f.usrf->args, sn = a; |
for ( tn = f->f.usrf->args, sn = a; |
sn; tn = NEXT(tn), sn = NEXT(sn) ) |
sn; tn = NEXT(tn), sn = NEXT(sn) ) |
ASSPV((int)FA0((FNODE)BDY(tn)),BDY(sn)); |
ASSPV((int)FA0((FNODE)BDY(tn)),BDY(sn)); |
|
f_return = f_break = f_continue = 0; |
if ( f->f.usrf->module ) { |
if ( f->f.usrf->module ) { |
prev_mpvs = MPVS; |
prev_mpvs = MPVS; |
MPVS = f->f.usrf->module->pvs; |
MPVS = f->f.usrf->module->pvs; |
Line 1273 pointer bevalf_with_opts(FUNC f,NODE a,NODE opts) |
|
Line 1277 pointer bevalf_with_opts(FUNC f,NODE a,NODE opts) |
|
for ( tn = f->f.usrf->args, sn = a; |
for ( tn = f->f.usrf->args, sn = a; |
sn; tn = NEXT(tn), sn = NEXT(sn) ) |
sn; tn = NEXT(tn), sn = NEXT(sn) ) |
ASSPV((int)FA0((FNODE)BDY(tn)),BDY(sn)); |
ASSPV((int)FA0((FNODE)BDY(tn)),BDY(sn)); |
|
f_return = f_break = f_continue = 0; |
if ( f->f.usrf->module ) { |
if ( f->f.usrf->module ) { |
prev_mpvs = MPVS; |
prev_mpvs = MPVS; |
MPVS = f->f.usrf->module->pvs; |
MPVS = f->f.usrf->module->pvs; |