Exemple #1
0
/* Help functionality to print out sorted list of test names and suite names */
static void print_targets(testentry_t tests[], int count) {
	 char**array;
	char *previous;
	int i;

	array=(char**)calloc(sizeof(char*),count);

	/* Sort the test names and print unique entries*/

	for(i=0;i<count;i++) array[i]=tests[i].name;
	qsort(array,count,sizeof(array[0]),mystrcmp);

	printf("\nValid tests : all");
	for(i=0,previous="";i<count; i++) if(!eql(previous,array[i])) printf(" %s",(previous=array[i]));

	/* Sort the suite names and print unique entries*/
	for(i=0;i<count;i++) array[i]=tests[i].suite;
	qsort(array, count,sizeof(array[0]),mystrcmp);

	printf("\nValid suites:");

	for(i=0,previous="";i<count; i++) if(!eql(previous,array[i])) printf(" %s",(previous=array[i]));
	printf("\nValid strategies: all ");

	for(i=1;i<5;i++)
	  printf("%s ",strategy_name(i));
	printf("\n");

}
  /*
   * Main entry point for test harness
   */
int
run_testrunner(int argc, const char **argv, testentry_t tests[], int test_count)
{
    const char *test_name, *target;
    int i;
    stats_t stats;
    int target_matched, max_errors_before_quit, redirect_stdouterr;
    memset(&stats, 0, sizeof(stats));

    max_errors_before_quit = 1;
    redirect_stdouterr = 0;

    assert(tests != NULL);
    assert(test_count > 0);
    assert(argc > 0 && argv && *argv);
    while (true) {
	target = argc > 1 ? argv[1] : "";
	assert(target);
	if (*target != '-')
	    break;
	argc--;
	argv++;
	if (target[1] == 'f' && target[2])
	    max_errors_before_quit = atoi(target + 1);
	else if (target[1] == 'r')
	    redirect_stdouterr = 1;
    }

    target_matched = false;

    for (i = 0;
	 i < test_count && (max_errors_before_quit < 1
			    || stats.failed != max_errors_before_quit);
	 i++) {
	test_name = tests[i].name;

	assert(test_name);
	assert(tests[i].suite);
	assert(tests[i].test_function);
	if (eql(target, test_name) || eql(target, "all")
	    || eql(target, tests[i].suite)) {
	    if (!target_matched)
		printf("Running tests...\n");
	    target_matched = true;
	    run_one_test(&stats, &tests[i], redirect_stdouterr, argc - 1,
			 argv + 1);
	}
    }
    if (!target_matched) {
	fprintf(stderr, "Test '%s' not found",
		(strlen(target) > 0 ? target : "(empty)"));
	print_targets(tests, test_count);
    } else {
	printf("\nTest Results:%d tests,%d passed,%d failed.\n", stats.ran,
	       stats.passed, stats.failed);
    }

    return stats.passed == stats.ran && target_matched ? 0 : 1;

}
Exemple #3
0
void cmp_tests() {
	int a = 1, b = 2;
	
	/* greater tests */
	gtl((char *)&a, (char *)&b); assert(*(int32_t *)ecx == 0);
	gtl((char *)&b, (char *)&a); assert(*(int32_t *)ecx == 1);
	gel((char *)&a, (char *)&b); assert(*(int32_t *)ecx == 0);
	gel((char *)&a, (char *)&a); assert(*(int32_t *)ecx == 1);
	gel((char *)&b, (char *)&a); assert(*(int32_t *)ecx == 1);

	/* less tests */
	ltl((char *)&a, (char *)&b); assert(*(int32_t *)ecx == 1);
	ltl((char *)&b, (char *)&a); assert(*(int32_t *)ecx == 0);
	lel((char *)&a, (char *)&b); assert(*(int32_t *)ecx == 1);
	lel((char *)&a, (char *)&a); assert(*(int32_t *)ecx == 1);
	lel((char *)&b, (char *)&a); assert(*(int32_t *)ecx == 0);

	/* (not) equal tests */
	eql((char *)&a, (char *)&b); assert(*(int32_t *)ecx == 0);
	eql((char *)&b, (char *)&b); assert(*(int32_t *)ecx == 1);
	nel((char *)&a, (char *)&b); assert(*(int32_t *)ecx == 1);
	nel((char *)&a, (char *)&a); assert(*(int32_t *)ecx == 0);

	/* and/or tests */
	a = 0, b = 1;
	andl((char *)&a, (char *)&a); assert(*(int32_t *)ecx == 0);
	andl((char *)&a, (char *)&b); assert(*(int32_t *)ecx == 0);
	andl((char *)&b, (char *)&b); assert(*(int32_t *)ecx == 1);
	orl((char *)&a, (char *)&a); assert(*(int32_t *)ecx == 0);
	orl((char *)&a, (char *)&b); assert(*(int32_t *)ecx == 1);
	orl((char *)&b, (char *)&b); assert(*(int32_t *)ecx == 1);
}
Exemple #4
0
/* dotest2 - call a test function with two arguments */
int dotest2 P3C(LVAL, arg1, LVAL, arg2, LVAL, fun)
{
    FRAMEP newfp;

    /* Speedup for default case TAA MOD */
    if (fun == getfunction(s_eql))
        return (eql(arg1,arg2));

    /* Speedup for EQ and EQUAL for hash tables */
    if (fun == getfunction(s_eq))
        return (arg1 == arg2);
    if (fun == getfunction(s_equal))
        return (equal(arg1,arg2));

    /* create the new call frame */
    newfp = xlsp;
    pusharg(cvfixnum((FIXTYPE)(newfp - xlfp)));
    pusharg(fun);
    pusharg(cvfixnum((FIXTYPE)2));
    pusharg(arg1);
    pusharg(arg2);
    xlfp = newfp;

    /* return the result of applying the test function */
    return (xlapply(2) != NIL);

}
Exemple #5
0
Obj delete_eql (Obj item, Obj list, Obj count)
{
  Obj g;
  sint32 g_1;
  Obj g_2, g_3, g_4;

  g = list;
  g_1 = 0;
  g_2 = (Obj)NULL;
  g_3 = (Obj)NULL;
  g_4 = g;
  while (g_4!=NULL) {
    g_3 = CDR(g_4);
    if (eql(CAR(g_4),item)!=NULL) {
      if (g_2!=NULL) 
        CDR(g_2) = g_3;
      else 
        g = g_3;
      if (count!=NULL) {
        g_1 = (g_1+1);
        if (g_1>=UNBOXFIX(count)) 
          return g;
      }
    }
    else 
      g_2 = g_4;
    g_4 = g_3;
  }

  return g;
}
Exemple #6
0
int equal(NODE *arg1, NODE *arg2)
{
if (eql(arg1,arg2))
return (1);
else if (((arg1) && (arg1)->n_type == 3) && ((arg2) && (arg2)->n_type == 3))
return (equal(((arg1)->n_info.n_xlist.xl_car),((arg2)->n_info.n_xlist.xl_car)) && equal(((arg1)->n_info.n_xlist.xl_cdr),((arg2)->n_info.n_xlist.xl_cdr)));
else
return (0);
}
Exemple #7
0
Obj member_eql (Obj item, Obj list)
{
  Obj g;

  g = list;
  for (;g!=NULL;g = CDR(g)) {
    if (eql(item,CAR(g))!=NULL) 
      return g;
  }
  return (Obj)NULL;
}
Exemple #8
0
int
search (char *term)
{
  register int n;

  for (n = 0; n < 255; n++)
     if (hashtable[n].string && eql (hashtable[n].string, term))
        return hashtable[n].o;

  return 0;
}
Exemple #9
0
/* xeql - are these equal? */
LVAL xeql(void)
{
    LVAL arg1,arg2;

    /* get the two arguments */
    arg1 = xlgetarg();
    arg2 = xlgetarg();
    xllastarg();

    /* compare the arguments */
    return (eql(arg1,arg2) ? s_true : NIL);
}
Exemple #10
0
Obj assoc_eql (Obj item, Obj alist)
{
  Obj g, g_1;

  g = alist;
  for (;g!=NULL;g = CDR(g)) {
    g_1 = CAR(g);
    if (eql(CAR(g_1),item)!=NULL) 
      return g_1;
  }
  return (Obj)NULL;
}
Exemple #11
0
double levenshtein_distance (const unsigned char *s1, const unsigned char *s2) {
    const size_t len1 = min(strlen(s1), STRLEN_MAX-1),
                 len2 = min(strlen(s2), STRLEN_MAX-1);
    int cost, i, j;

    for (i = 1; i <= len1; ++i) d[i][0] = i;
    for (i = 1; i <= len2; ++i) d[0][i] = i;
    for (i = 1; i <= len1; ++i) {
        for (j = 1; j <= len2; ++j) {
            cost = (eql(s1[i-1], s2[j-1]) ? 0 : 1);
            d[i][j] = min(min(
                        d[i-1][j  ] + 1,              /* deletion */
                        d[i  ][j-1] + 1),             /* insertion */
                        d[i-1][j-1] + cost);          /* substitution */
            if (i > 1 && j > 1 && eql(s1[i-1], s2[j-2]) && eql(s1[i-2], s2[j-1])) {
               d[i][j] = min( d[i][j],
                              d[i-2][j-2] + cost );   /* transposition */
            }
        }
    }
    return (d[len1][len2] / (double) max(len1, len2));
}
Exemple #12
0
int main() {
  int i;
  string r, t;
  INITIALIZE("%d \t %s \t %s\n", i, t.c_str(), r.c_str());

  set(r, "a");
  i = len(r);

  while(unknown()) {
    PRINT_VARS();
    t = unknown_s(1);
    set(r, cat(r, t));
  }
  PRINT_VARS();

  assert(eql(sub(r, 0, i), "a"));
  return 0;
}
Exemple #13
0
void testController(){
    
    /* Initally values */
    bus clk ("P"); // Clock pulse
    bus rst ("0");
    bus go("P");
    bus gtr("1");
    bus eql("0");
    bus les("0");
    bus en_quo, ready;
    
    DividerController * DC = new DividerController(clk, rst, go, gtr, eql, les, en_quo, ready);
    
    std::cout << "The inital values:\n";
    DC->printValues();
    
    DC->eval();
    std::cout << "\nAfter evaluation:\n";
    DC->printValues();
    
    DC->eval();
    std::cout << "\nAfter evaluation:\n";
    DC->printValues();
    
    /* Next values */
    clk = "P";
    rst = "0";
    go = "0";
    gtr = "0";
    eql = "1";
    les = "0";
    
    DC->eval();
    std::cout << "\nAfter evaluation:\n";
    DC->printValues();
    
}
Exemple #14
0
		bool lte(double a, double b) { return lt(a, b) || eql(a, b); }
Exemple #15
0
static void L15()
{register object *base=vs_base;
	register object *sup=base+VM15; VC15
	vs_check;
	{object V19;
	object V20;
	object V21;
	check_arg(3);
	V19=(base[0]);
	V20=(base[1]);
	V21=(base[2]);
	vs_top=sup;
	goto TTL;
TTL:;
	{object V22;
	object V23;
	object V24;
	object V25;
	{register object x= VV[4],V26= (V20);
	while(V26!=Cnil)
	if(x==(V26->c.c_car)){
	V22= V26;
	goto T62;
	}else V26=V26->c.c_cdr;
	V22= Cnil;}
	goto T62;
T62:;
	if((V22)==Cnil){
	V23= Cnil;
	goto T63;}
	base[7]= (V20);
	base[8]= (V22);
	vs_top=(vs_base=base+7)+2;
	Lldiff();
	vs_top=sup;
	V23= vs_base[0];
	goto T63;
T63:;
	if(((V22))==Cnil){
	goto T68;}
	V24= append((V23),VV[9]);
	goto T66;
	goto T68;
T68:;
	V24= (V20);
	goto T66;
T66:;
	{register object x= VV[11],V28= (V19);
	while(V28!=Cnil)
	if(eql(x,V28->c.c_car)){
	goto T74;
	}else V28=V28->c.c_cdr;
	goto T73;}
	goto T74;
T74:;
	V27= VV[12];
	goto T71;
	goto T73;
T73:;
	V27= Cnil;
	goto T71;
T71:;
	V29= list(3,VV[13],(V24),list(4,VV[14],Cnil,VV[15],(V21)));
	V30= make_cons(/* INLINE-ARGS */V29,Cnil);
	V25= listA(3,VV[10],(V19),append(V27,/* INLINE-ARGS */V30));
	if(((VV[2]->s.s_dbind))==Cnil){
	goto T77;}
	base[7]= list(2,VV[16],(V25));
	goto T75;
	goto T77;
T77:;
	base[8]= (V25);
	vs_top=(vs_base=base+8)+1;
	(void) (*Lnk178)();
	vs_top=sup;
	base[7]= vs_base[0];
	goto T75;
T75:;
	base[8]= Cnil;
	vs_top=(vs_base=base+7)+2;
	return;}
	}
}
Exemple #16
0
static void L16()
{register object *base=vs_base;
	register object *sup=base+VM16; VC16
	vs_check;
	{object V31;
	object V32;
	register object V33;
	check_arg(3);
	V31=(base[0]);
	V32=(base[1]);
	V33=(base[2]);
	vs_top=sup;
	goto TTL;
TTL:;
	if(((VV[2]->s.s_dbind))!=Cnil){
	goto T81;}
	if(((VV[3]->s.s_dbind))==Cnil){
	goto T81;}
	base[3]= (V31);
	base[4]= (V32);
	base[5]= (V33);
	vs_top=(vs_base=base+3)+3;
	(void) (*Lnk179)();
	return;
	goto T81;
T81:;
	{register object V34;
	register object V35;
	object V36;
	object V37;
	object V38;
	object V39;
	V37= (*(LnkLI180))(VV[17]);
	V38= (((V31))==(VV[0])?Ct:Cnil);
	V39= (*(LnkLI181))((V33),VV[18],VV[19]);
	V34= Cnil;
	V35= Cnil;
	V36= Cnil;
	{object V41= V31;
	if((V41!= VV[0]))goto T93;
	V34= (*(LnkLI182))(small_fixnum(0));
	V35= make_cons((V34),Cnil);
	goto T92;
	goto T93;
T93:;
	if((V41!= VV[1]))goto T97;
	V34= (*(LnkLI182))(small_fixnum(1));
	V42= (*(LnkLI182))(small_fixnum(0));
	V35= list(2,/* INLINE-ARGS */V42,(V34));
	goto T92;
	goto T97;
T97:;
	base[3]= VV[20];
	base[4]= VV[21];
	base[5]= VV[22];
	base[6]= VV[23];
	base[7]= V31;
	base[8]= VV[24];
	base[9]= VV[25];
	base[10]= VV[26];
	base[11]= VV[27];
	vs_top=(vs_base=base+3)+9;
	(void) (*Lnk183)();
	vs_top=sup;}
	goto T92;
T92:;
	{object V44= V32;
	if(!eql(V44,VV[28]))goto T111;
	V36= VV[29];
	goto T110;
	goto T111;
T111:;
	if(!eql(V44,VV[30]))goto T113;
	V36= VV[31];
	goto T110;
	goto T113;
T113:;
	base[3]= VV[20];
	base[4]= VV[21];
	base[5]= VV[22];
	base[6]= VV[23];
	base[7]= V32;
	base[8]= VV[24];
	base[9]= VV[32];
	base[10]= VV[26];
	base[11]= VV[33];
	vs_top=(vs_base=base+3)+9;
	(void) (*Lnk183)();
	vs_top=sup;}
	goto T110;
T110:;
	base[3]= (V36);
	base[4]= (V35);
	if(((V33))!=Cnil){
	goto T129;}
	V45= VV[35];
	goto T127;
	goto T129;
T129:;
	V45= Cnil;
	goto T127;
T127:;
	V46= list(2,VV[38],(V34));
	if(((V33))!=Cnil){
	goto T133;}
	V48= list(3,VV[39],VV[19],list(2,VV[40],(V34)));
	V47= make_cons(/* INLINE-ARGS */V48,Cnil);
	goto T131;
	goto T133;
T133:;
	V47= Cnil;
	goto T131;
T131:;
	V49= list(2,VV[41],(V34));
	V50= make_cons(/* INLINE-ARGS */V49,Cnil);
	V51= append(V47,/* INLINE-ARGS */V50);
	V52= make_cons(/* INLINE-ARGS */V46,/* INLINE-ARGS */V51);
	V53= list(2,VV[42],(V34));
	if(((V33))!=Cnil){
	goto T137;}
	V55= list(3,VV[39],VV[19],list(2,VV[43],(V34)));
	V54= make_cons(/* INLINE-ARGS */V55,Cnil);
	goto T135;
	goto T137;
T137:;
	V54= Cnil;
	goto T135;
T135:;
	V56= list(2,VV[44],(V34));
	V57= make_cons(/* INLINE-ARGS */V56,Cnil);
	V58= append(V54,/* INLINE-ARGS */V57);
	V59= list(2,VV[36],list(3,VV[37],/* INLINE-ARGS */V52,make_cons(/* INLINE-ARGS */V53,/* INLINE-ARGS */V58)));
	if(((V38))==Cnil){
	goto T141;}
	V60= VV[45];
	goto T139;
	goto T141;
T141:;
	V60= Cnil;
	goto T139;
T139:;
	V61= make_cons(/* INLINE-ARGS */V59,V60);
	V62= append(V45,/* INLINE-ARGS */V61);
	V63= list(2,VV[49],list(3,VV[50],VV[36],(V37)));
	if(!(eql(small_fixnum(2),(V32)))){
	goto T145;}
	V64= VV[53];
	goto T143;
	goto T145;
T145:;
	V64= Cnil;
	goto T143;
T143:;
	V65= list(2,VV[51],listA(3,VV[47],VV[52],V64));
	if(((V38))==Cnil){
	goto T149;}
	V67= list(3,VV[54],VV[55],list(3,VV[39],VV[56],(V39)));
	V66= make_cons(/* INLINE-ARGS */V67,Cnil);
	goto T147;
	goto T149;
T149:;
	V66= Cnil;
	goto T147;
T147:;
	V68= listA(5,VV[47],VV[48],/* INLINE-ARGS */V63,/* INLINE-ARGS */V65,V66);
	V69= listA(3,VV[57],VV[11],(V35));
	if(((V38))==Cnil){
	goto T153;}
	V70= VV[56];
	goto T151;
	goto T153;
T153:;
	V70= list(3,VV[58],(V39),CMPcar((V35)));
	goto T151;
T151:;
	base[5]= list(3,VV[34],/* INLINE-ARGS */V62,list(4,VV[46],/* INLINE-ARGS */V68,/* INLINE-ARGS */V69,V70));
	vs_top=(vs_base=base+3)+3;
	(void) (*Lnk176)();
	return;}
	}
}
Exemple #17
0
/* Callback function for qsort on strings */
static int mystrcmp( const void *p1, const void *p2) {
	return eql( ( char*)p1, ( char*)p2);
}
Exemple #18
0
void executeInstruction()
{
    switch(ir.op)
    {
    case 1:
        lit();
        break;
    case 2:
        opr();
        break;
    case 3:
        lod();
        break;
    case 4:
        sto();
        break;
    case 5:
        cal();
        break;
    case 6:
        inc();
        break;
    case 7:
        jmp();
        break;
    case 8:
        jpc();
        break;
    case 9:
        sio();
    default:
        break;

    }

    void opr()
{
    switch ( ir.m)
    {
        //rtn
        case 0:
            ret();
            break;
        //neg
        case 1:
            neg();
            break;
       //add
        case 2:
            add();
            break;
       //sub
        case 3:
            sub();
            break;
        //mul
        case 4:
            mul();
            break;
        //div
        case 5:
            divid();
            break;
        //odd
        case 6:
            odd();
            break;
        //mod
        case 7:
            mod();
            break;
        //eql
        case 8:
            eql();
            break;
        //neq
        case 9:
            neq();
            break;
        //lss
        case 10:
            lss();
            break;
        //leq
        case 11:
            leq();
            break;
        //gtr
        case 12:
            gtr();
            break;
        //geq
        case 13:
            geq();
            break;

        default:
            fprintf(output, "OP code input was invalid. ");
            halt = 1;
            break;
    }
}

}
Exemple #19
0
void opr()
{
    switch ( ir.m)
    {
        //rtn
        case 0:
            ret();
            break;
        //neg
        case 1:
            neg();
            break;
       //add
        case 2:
            add();
            break;
       //sub
        case 3:
            sub();
            break;
        //mul
        case 4:
            mul();
            break;
        //div
        case 5:
            divid();
            break;
        //odd
        case 6:
            odd();
            break;
        //mod
        case 7:
            mod();
            break;
        //eql
        case 8:
            eql();
            break;
        //neq
        case 9:
            neq();
            break;
        //lss
        case 10:
            lss();
            break;
        //leq
        case 11:
            leq();
            break;
        //gtr
        case 12:
            gtr();
            break;
        //geq
        case 13:
            geq();
            break;

        default:
            fprintf(output, "OP code input was invalid. ");
            sio3();
    }
}
Exemple #20
0
static void L1()
{register object *base=vs_base;
	register object *sup=base+VM1; VC1
	vs_check;
	{register object V1;
	object V2;
	object V3;
	if(vs_top-vs_base<1) too_few_arguments();
	if(vs_top-vs_base>3) too_many_arguments();
	V1=(base[0]);
	vs_base=vs_base+1;
	if(vs_base>=vs_top){vs_top=sup;goto T1;}
	V2=(base[1]);
	vs_base++;
	if(vs_base>=vs_top){vs_top=sup;goto T2;}
	V3=(base[2]);
	vs_top=sup;
	goto T3;
	goto T1;
T1:;
	V2= Cnil;
	goto T2;
T2:;
	V3= Cnil;
	goto T3;
T3:;
	{object V4;
	{register object x= (V1),V6= (V2);
	while(V6!=Cnil)
	if(eql(x,V6->c.c_car->c.c_car) &&V6->c.c_car != Cnil){
	V5= (V6->c.c_car);
	goto T7;
	}else V6=V6->c.c_cdr;
	V5= Cnil;}
	goto T7;
T7:;
	V4= CMPcadr(V5);
	if(((V4))==Cnil){
	goto T9;}
	base[3]= (V4);
	base[4]= Cnil;
	base[5]= Cnil;
	base[6]= Cnil;
	vs_top=(vs_base=base+3)+4;
	return;
	goto T9;
T9:;
	{object V7;
	register object V8;
	if(!(type_of((V1))==t_cons||((V1))==Cnil)){
	goto T17;}
	base[3]= (V1);
	vs_top=(vs_base=base+3)+1;
	(void) (*Lnk51)();
	goto T15;
	goto T17;
T17:;
	base[3]= Cnil;
	base[5]= (V1);
	vs_top=(vs_base=base+5)+1;
	(void) (*Lnk52)(Lclptr52);
	vs_top=sup;
	base[4]= vs_base[0];
	vs_top=(vs_base=base+3)+2;
	goto T15;
T15:;
	if(vs_base>=vs_top){vs_top=sup;goto T23;}
	V7= vs_base[0];
	vs_base++;
	if(vs_base>=vs_top){vs_top=sup;goto T24;}
	V8= vs_base[0];
	vs_top=sup;
	goto T25;
	goto T23;
T23:;
	V7= Cnil;
	goto T24;
T24:;
	V8= Cnil;
	goto T25;
T25:;
	{register object V9;
	if((V8)==Cnil){
	V9= Cnil;
	goto T26;}
	V9= (*(LnkLI53))((V8));
	goto T26;
T26:;
	if(((V8))==Cnil){
	goto T28;}
	if(((V9))==Cnil){
	goto T27;}
	if(((V3))==Cnil){
	goto T28;}
	goto T27;
T27:;
	{object V10;
	object V11;
	if(((V9))==Cnil){
	goto T36;}
	V10= (*(LnkLI54))((V9),(V3));
	goto T34;
	goto T36;
T36:;
	V10= Cnil;
	goto T34;
T34:;
	if(((V9))==Cnil){
	goto T40;}
	if(((V10))==Cnil){
	goto T40;}
	V11= (*(LnkLI55))((V9),(V10));
	goto T38;
	goto T40;
T40:;
	V11= Cnil;
	goto T38;
T38:;
	base[6]= (V7);
	base[7]= Ct;
	base[8]= (V8);
	base[9]= (V11);
	vs_top=(vs_base=base+6)+4;
	return;}
	goto T28;
T28:;
	if((V7)!=Cnil){
	base[4]= (V7);
	goto T48;}
	if(!(type_of((V1))==t_cons||((V1))==Cnil)){
	goto T50;}
	{object V13;
	V13= (*(LnkLI56))((V8));
	(CMPcdr(V1))->c.c_car = (V13);
	(void)(CMPcdr(V1));
	base[4]= (V13);
	goto T48;}
	goto T50;
T50:;
	base[5]= (V1);
	vs_top=(vs_base=base+5)+1;
	(void) (*Lnk57)(Lclptr57);
	vs_top=sup;
	base[4]= vs_base[0];
	goto T48;
T48:;
	base[5]= Ct;
	base[6]= Cnil;
	base[7]= Cnil;
	vs_top=(vs_base=base+4)+4;
	return;}}}
	}
}
Exemple #21
0
		bool eql(P a, P b) { return eql(a.Y, b.Y) && eql(a.X, b.X); }