Update XMLParser.close documentation and fix formatting.

Using ``method`` markup because the method is on a callback object, not an
explicitly documented method. :meth: markup creates links within the current
class which is incorrect.

In addition, indent the paragraph correctly.
Merge doc fix from 3.3
#18803: fix more typos.  Patch by F?vry Thibault.
#18803: merge with 3.3.
Remove the obsolete XMLParser._start/_start_list duality.

XMLParser configures expat to report attributes in a list (ordered_attributes),
so only _start_list is needed. Rename it to _start and kill _start.
Clarify pyexpat documentation in StartElementHandler
Clarify pyexpat documentation in StartElementHandler
#18839: document that sys.exit() will not accept a non-integer numeric value as exit status.
#18839: merge with 3.3.
Issue #18408: _PyObject_Dump() now saves/restores the current exception

So it can be called even if an exception was raised
Issue #18664, #18408: Rewrite PyErr_WriteUnraisable() to handle errors

 * Catch PyFile_WriteString() and PyFile_WriteObject() errors
 * Clear the current exception on _PyObject_GetAttrId() failure
 * Use PyUnicode_CompareWithASCIIString() and PyFile_WriteObject() instead of
   _PyUnicode_AsString() and strcmp() to avoid Unicode encoding error. stderr
   has a more tolerant error handler than utf-8/strict.
Restore changeset 5bd9db528aed (issue #18408)

"Issue #18408: PyObject_Str(), PyObject_Repr() and type_call() now fail with an
assertion error if they are called with an exception set (PyErr_Occurred()).

As PyEval_EvalFrameEx(), they may clear the current exception and so the caller
looses its exception."
Close #11619: The parser and the import machinery do not encode Unicode
filenames anymore on Windows.