The `pugixml.cpp` in this directory differs from the one in the `origininal/` directory only because it has been run through `clang-format`. The reason this is done is to break apart the lines containing multiple statements into separate lines. Having separate lines makes it a _lot_ easier to set break points so that you can see the XML node state _before_ the error is thrown. Once the error is thrown, you only have the very minimal error details which may not have the information you need to find exactly where the probelm is occuring. For example, an unclosed node won't show you the name of the node that wasn't closed, and the offset  value returned by `PUGI__THROW_ERROR()` can point to the end of the parent node or even the end of the entire document, leaving you to guess what node wasn't closed properly.

To update pugixml from a new release on https://github.com/halx99/pugixml, you need to merge the changes into `pugixml.hpp` and `original/pugixml.cpp`. Then copy `original/pugixml.cpp` over the `pugixml.cpp` in this directory, and re-run clang-format on the file.
