2849 std::string funcDesc;
2856 for (i=0; i<nOps;) {
2857 if (pos >nBlanks + 65) {
2866 pos += (int)opName.size() + 1;
2882 funcDesc +=
"else\n";
2908 for (n=0; i+n<nOps; ) {
2920 for (j=0; j<n; j++) {
2924 funcDesc +=
"case\n";
2926 funcDesc +=
"dflt\n";
2943 sDescription += funcDesc;
3012 scanList.push_back(op);
3036 scanList.push_back(op);
3041 scanList.push_back(op);
3056 scanList.push_back(op);
3061 szFuncDef = scan.
GetPos();
3076 scanList.push_back(op);
3078 selList.push_back(pCaseList);
3086 delete pDefaultList;
3093 scanList.push_back(op);
3095 selList.push_back(pDefaultList);
3103 CIccCalcOpListPtrList::iterator l;
3104 for (l=selList.begin(); l!=selList.end(); l++) {
3120 scanList.push_back(op);
3129 scanList.push_back(op);
3141 scanList.push_back(op);
3148 scanList.push_back(op);
3161 scanList.push_back(op);
3175 scanList.push_back(op);
3230 scanList.push_back(op);
3238 sReport +=
"Invalid Operator \"";
3242 if (scanList.rbegin()!=scanList.rend()) {
3243 sReport +=
"Last Few operators in reverse:\n";
3245 CIccCalcOpList::reverse_iterator opi;
3247 for (i=0, opi=scanList.rbegin(); i<10 && opi!=scanList.rend(); i++, opi++) {
3248 opi->Describe(opDesc, 100);
3258 scanList.push_back(op);
3828 for (i=0; i<nOps; i++) {
3833 for (j=0; j<n; j++) {
3834 if (!tempUsage[p+j]) {
3842 memset(tempUsage+p, 1, n);
3847 memset(tempUsage+p, 1, n);
3856 memcpy(ifTemps, tempUsage, nMaxTemp);
3868 memcpy(elseTemps, tempUsage, nMaxTemp);
3874 for (j=0; j<nMaxTemp; j++) {
3875 tempUsage[j] |= (ifTemps[j] && elseTemps[j]);
3910 int n, nIfArgs, nElseArgs, nSelArgs, nCaseArgs;
3912 for (i=0; i<nOps; i++) {
3918 printf(
"%s : %d %d\n", opstr.c_str(), n, nArgs);
3927 sReport +=
"Stack underflow at operation \"" + opDesc +
"\" in \"";
3964 nArgs = bCheckUnderflow ?
icIntMin(nIfArgs, nElseArgs) :
icIntMax(nIfArgs, nElseArgs) ;
3973 nArgs = bCheckUnderflow ?
icIntMin(nArgs, nIfArgs) :
icIntMax(nArgs, nIfArgs);
3982 for (n=1; i+n<nOps; ) {
3998 for (p=0; p<n; p++) {
4009 nSelArgs = nCaseArgs;
4011 nSelArgs = bCheckUnderflow ?
icIntMin(nSelArgs, nCaseArgs) :
icIntMax(nSelArgs, nCaseArgs);