--- src/csvparser.cpp~ 2012-09-21 14:19:12.000000000 -0500 +++ src/csvparser.cpp 2012-09-21 14:32:10.667705093 -0500 @@ -76,7 +76,7 @@ void CsvParser::advance(Char ch) { - if (ch == L'\n') + if ( (int) ch == (int) L'\n') ++_lineNo; switch (_state) @@ -82,7 +82,7 @@ switch (_state) { case state_detectDelim: - if (isalnum(ch) || ch == L'_' || ch == L' ') + if (isalnum(ch) || (int) ch == (int) L'_' || (int) ch == (int) ' ') { _titles.back() += ch.narrow(); } @@ -86,13 +86,13 @@ { _titles.back() += ch.narrow(); } - else if (ch == L'\n' || ch == L'\r') + else if ( (int) ch == (int) L'\n' || (int) ch == (int) L'\r') { log_debug("title=\"" << _titles.back() << '"'); _noColumns = 1; - _state = (ch == L'\r' ? state_cr : state_rowstart); + _state = ( (int) ch == (int) L'\r' ? state_cr : state_rowstart); } - else if (ch == L'\'' || ch == L'"') + else if ( (int) ch == (int) L'\'' || (int) ch == (int) L'"') { _quote = ch; _state = state_detectDelim_q; @@ -119,17 +119,17 @@ break; case state_detectDelim_postq: - if (isalnum(ch) || ch == L'_' || ch == L'\'' || ch == L'"' || ch == L' ') + if (isalnum(ch) || (int) ch == (int) L'_' || (int) ch == (int) L'\'' || (int) ch == (int) L'"' || (int) ch == (int) L' ') { std::ostringstream msg; msg << "invalid character '" << ch.narrow() << "' within csv title of column " << _titles.size(); SerializationError::doThrow(msg.str()); } - else if (ch == L'\n' || ch == L'\r') + else if ( (int) ch == (int) L'\n' || (int) ch == (int) L'\r') { log_debug("title=\"" << _titles.back() << '"'); _noColumns = 1; - _state = (ch == L'\r' ? state_cr : state_rowstart); + _state = ( (int) ch == (int) L'\r' ? state_cr : state_rowstart); } else { @@ -142,10 +142,10 @@ break; case state_title: - if (ch == L'\n' || ch == L'\r') + if ( (int) ch == (int) L'\n' || (int) ch == (int) L'\r') { log_debug("title=\"" << _titles.back() << '"'); - _state = (ch == L'\r' ? state_cr : state_rowstart); + _state = ( (int) ch == (int) L'\r' ? state_cr : state_rowstart); _noColumns = _titles.size(); } else if (ch == _delimiter) @@ -153,7 +153,7 @@ log_debug("title=\"" << _titles.back() << '"'); _titles.push_back(std::string()); } - else if (ch == L'\'' || ch == L'\"') + else if ( (int) ch == (int) L'\'' || (int) ch == (int) L'\"') { if (_titles.back().empty()) { @@ -185,10 +185,10 @@ break; case state_qtitlep: - if (ch == L'\n' || ch == L'\r') + if ( (int) ch == (int) L'\n' || (int) ch == (int) L'\r') { log_debug("title=\"" << _titles.back() << '"'); - _state = (ch == L'\r' ? state_cr : state_rowstart); + _state = ( (int) ch == (int) L'\r' ? state_cr : state_rowstart); _noColumns = _titles.size(); } else if (ch == _delimiter) @@ -207,7 +207,7 @@ case state_cr: _state = state_rowstart; - if (ch == L'\n') + if ( (int) ch == (int) L'\n') { break; } @@ -228,14 +228,14 @@ _column < _titles.size() ? _titles[_column] : std::string(), std::string(), SerializationInfo::Value); - if (ch == L'\n' || ch == L'\r') + if ( (int) ch == (int) L'\n' || (int) ch == (int) L'\r') { _deserializer->leaveMember(); checkNoColumns(_column, _noColumns, _lineNo); _deserializer->leaveMember(); - _state = (ch == L'\r' ? state_cr : state_rowstart); + _state = ( (int) ch == (int) L'\r' ? state_cr : state_rowstart); } - else if (ch == L'"' || ch == L'\'') + else if ((int) ch == L'"' || (int) ch == L'\'') { _quote = ch; _state = state_qdata; @@ -253,7 +253,7 @@ break; case state_data0: - if (ch == L'"' || ch == L'\'') + if ( (int) ch == (int) L'"' || (int) ch == (int) L'\'') { _quote = ch; _state = state_qdata; @@ -269,7 +269,7 @@ checkNoColumns(_column, _noColumns, _lineNo); _deserializer->leaveMember(); // leave data item _deserializer->leaveMember(); // leave row - _state = (ch == L'\r' ? state_cr : state_rowstart); + _state = ( (int) ch == (int) L'\r' ? state_cr : state_rowstart); } else if (ch == _delimiter) { --- src/xml/entityresolver.cpp~ 2012-05-03 11:06:15.000000000 -0500 +++ src/xml/entityresolver.cpp 2012-09-21 17:51:22.973780927 -0500 @@ -563,19 +563,19 @@ String EntityResolver::resolveEntity(const String& entity) const { - if (!entity.empty() && entity[0] == L'#') + if (!entity.empty() && (int) entity[0] == (int) L'#') { int code = 0; - if (entity.size() > 2 && entity[1] == L'x') + if (entity.size() > 2 && (int) entity[1] == (int) L'x') { // hex notation: ꯍ for (String::const_iterator it = entity.begin() + 2; it != entity.end(); ++it) { - if (*it >= L'0' && *it <= L'9') + if ( (int) *it >= (int) L'0' && (int) *it <= (int) L'9') code = code * 16 + (it->value() - L'0'); - else if (*it >= L'A' && *it <= L'F') + else if ( (int) *it >= (int) L'A' && (int) *it <= (int) L'F') code = code * 16 + (it->value() - L'A' + 10); - else if (*it >= L'a' && *it <= L'f') + else if ( (int) *it >= (int) L'a' && (int) *it <= (int) L'f') code = code * 16 + (it->value() - L'a' + 10); else throw std::runtime_error(std::string("invalid entity ") + entity.narrow()); @@ -586,7 +586,7 @@ // dec notation: ✏ for (String::const_iterator it = entity.begin() + 1; it != entity.end(); ++it) { - if (*it >= L'0' && *it <= L'9') + if ( (int) *it >= (int) L'0' && (int) *it <= (int) L'9') code = code * 10 + (it->value() - '0'); else throw std::runtime_error(std::string("invalid entity ") + entity.narrow());