Index: branches/apertium-separable/src/lsx_processor.cc =================================================================== --- branches/apertium-separable/src/lsx_processor.cc (revision 80702) +++ branches/apertium-separable/src/lsx_processor.cc (revision 80703) @@ -123,7 +123,7 @@ } new_states.clear(); - cout << "val: " << val << " " << (char) val << " alive_states size: " << alive_states.size() << " tagCount: " << tagCount << endl; + cout << "val: " << val << " " << (char) val << " alive_states size: " << alive_states.size() << " tagCount: " << tagCount << " isTag: " << alphabet.isTag(val) << endl; for(vector::const_iterator it = alive_states.begin(); it != alive_states.end(); it++) { State s = *it; @@ -130,17 +130,20 @@ if(val == L'$') { s.step(alphabet(L"<$>")); - cout << "wb" << endl; + cout << " wb" << endl; tagCount = 0; } else if(alphabet.isTag(val) && tagCount <= 1) { - cout << "first tag" << endl; + cout << " first tag" << endl; + // if ( alphabet(L"") == val) { cout << "equal" ;} else { cout << "not equal" ;} // cout << "vblex defined? " << alphabet.isSymbolDefined(L"") << endl; + s.step(val); + // s.step(-18); // s.step(alphabet(L"")); - s.step_override(val, alphabet(L""), val); + // s.step_override(val, alphabet(L""), val); - } else if(alphabet.isTag(val) && tagCount > 1) { - cout << "second tag" << endl; + } else if(/*alphabet.isTag(val) &&*/ tagCount > 1) { + cout << " second tag" << endl; s.step_override(val, alphabet(L""), val); } else if(val > 0) @@ -147,7 +150,7 @@ { // s.step_override(val, alphabet(L""), val); s.step(val); - cout << "original char" << endl; + cout << " original char" << endl; } else { cout << "error?" << endl; @@ -154,6 +157,7 @@ } if(s.size() > 0) // alive if the vector isn't empty { + cout << "pushing new states" << endl; new_states.push_back(s); }