1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
|
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
|
+
+
-
+
|
break;
case OP_TRACE:
if(main_options['t']) {
printf("ptr=%d cpi=%d x=%d y=%d dir=%d obj=%lu ",ptr,cpi,x,y,d,(long)n);
printf("[ptr=%d x=%d y=%d dir=%d]\n",cp[cpi].ptr,cp[cpi].x,cp[cpi].y,cp[cpi].dir);
}
break;
default:
fprintf(stderr,"Unrecognized opcode 0x%04X at 0x%04X in pattern\n",code[ptr-1],ptr-1);
default: Throw("Unimplemented opcode in pattern");
Throw("Internal error: Unimplemented opcode in pattern");
}
goto again;
fail:
if(!all) {
if(vstackptr<cp->depth) Throw("Stack underflow in pattern matching");
vstackptr=cp[cpi].depth;
}
|