anchor.diff:  
   [source,subs="+quotes"]
   ----
  -_implementation-defined-type_ xml_node::children() const;
  -_implementation-defined-type_ xml_node::children(const char_t* name) const;
  -_implementation-defined-type_ xml_node::attributes() const;
  +_implementation_-_defined_-_type_ xml_node::children() const;
  +_implementation_-_defined_-_type_ xml_node::children(const char_t* name) const;
  +_implementation_-_defined_-_type_ xml_node::attributes() const;
   ----
   
   `children` function allows you to enumerate all child nodes; `children` function with `name` argument allows you to enumerate all child nodes with a specific name; `attributes` function allows you to enumerate all attributes of the node. Note that you can also use node object itself in a range-based for construct, which is equivalent to using `children()`.
  
positive.code: 
  * [[parse_escapes]]`parse_escapes` determines if character and entity references are to be expanded during the parsing process. Character references have the form `&#...;` or `&#x...;` (`...` is Unicode numeric representation of character in either decimal (`&#...;`) or hexadecimal (`&#x...;`) form), entity references are `&lt;`, `&gt;`, `&amp;`, `&apos;` and `&quot;` (note that as pugixml does not handle DTD, the only allowed entities are predefined ones). If character/entity reference can not be expanded, it is left as is, so you can do additional processing later. Reference expansion is performed on attribute values and PCDATA content. This flag is *on* by default.
  
  * [[parse_eol]]`parse_eol` determines if EOL handling (that is, replacing sequences `0x0d 0x0a` by a single `0x0a` character, and replacing all standalone `0x0d` characters by `0x0a`) is to be performed on input data (that is, comments contents, PCDATA/CDATA contents and attribute values). This flag is *on* by default.
  
  * [[parse_wconv_attribute]]`parse_wconv_attribute` determines if attribute value normalization should be performed for all attributes. This means, that whitespace characters (new line, tab and space) are replaced with space (`' '`). New line characters are always treated as if <<parse_eol,parse_eol>> is set, i.e. `\r\n` is converted to a single space.  This flag is *on* by default.
  
  
negative.code: 
  Types:
  
  [source,subs="+macros"]
  ----
  typedef configuration-defined-type +++<a href="#char_t">char_t</a>+++;
  typedef configuration-defined-type +++<a href="#string_t">string_t</a>+++;
  typedef void* (*+++<a href="#allocation_function">allocation_function</a>+++)(size_t size);
  typedef void (*+++<a href="#deallocation_function">deallocation_function</a>+++)(void* ptr);
  ----
  