anchor.diff:  ----
   
   * Cache the parsing step - instead of keeping in-memory buffers, keep document objects that already contain the parsed fragment:
  -
  ++
   [source]
   ----
   bool append_fragment(pugi::xml_node target, const pugi::xml_document& cached_fragment)
  
positive.code: pugixml is written in standard-compliant C{plus}{plus} with some compiler-specific workarounds where appropriate. pugixml is compatible with the C{plus}{plus}11 standard, but does not require C{plus}{plus}11 support. Each version is tested with a unit test suite (with code coverage about 99%) on the following platforms:
  
  * Microsoft Windows:
      * Borland C{plus}{plus} Compiler 5.82
      * Digital Mars C{plus}{plus} Compiler 8.51
      * Intel C{plus}{plus} Compiler 8.0, 9.0 x86/x64, 10.0 x86/x64, 11.0 x86/x64
      * Metrowerks CodeWarrior 8.0
      * Microsoft Visual C{plus}{plus} 6.0, 7.0 (2002), 7.1 (2003), 8.0 (2005) x86/x64, 9.0 (2008) x86/x64, 10.0 (2010) x86/x64, 11.0 (2011) x86/x64/ARM, 12.0 (2013) x86/x64/ARM and some CLR versions
      * MinGW (GCC) 3.4, 4.4, 4.5, 4.6 x64
  
  * Linux (GCC 4.4.3 x86/x64, GCC 4.8.1 x64, Clang 3.2 x64)
  * FreeBSD (GCC 4.2.1 x86/x64)
  * Apple MacOSX (GCC 4.0.1 x86/x64/PowerPC)
  * Sun Solaris (sunCC x86/x64)
  * Microsoft Xbox 360
  * Nintendo Wii (Metrowerks CodeWarrior 4.1)
  
negative.code: ----
  
  * Use `xml_node::append_buffer` directly:
  +
  [source]
  ----
  xml_parse_result xml_node::append_buffer(const void* contents, size_t size, unsigned int options = parse_default, xml_encoding encoding = encoding_auto);
  