ErrorHandler is now template<class string_type> basic_ErrorHandler, and ErrorHandler is a typedef for basic_ErrorHandler<std::string>. The change is necessary because the basic_ErrorHandler::warning/error/fatalError methods take a SAXParseException. SAXParseException is parameterised on string_type because it takes a Locator, which is (you guessed!) is parameterised on string_type. Corresponding corrections to DefaultHandler and XMLFilterImpl. The end of all is that you don't have to change any code :) If you were using wide characters, you'd have tripped over this already.
Wide character (well, std::wstring) fixes to the Writer filter. Discovered it is vitally important to set VC7 to build with wchar_t as a builtin type. You have to do this on a project by project basis, and why it isn't the default is anyone's guess. If it isn't, the wchar_t is treated as a typedef for unsigned short, and doing things like std::wcout << L'<' will print 60, which is wildly, wildly wrong and really generally unhelpful.
Tagged
code,
arabica,
xml, and
c++