]> rtime.felk.cvut.cz Git - coffee/buildroot.git/blob - package/rapidxml/0001-ensure-internal-print-operations-are-declared-before.patch
lrzsz: install symlinks for XMODEM and YMODEM
[coffee/buildroot.git] / package / rapidxml / 0001-ensure-internal-print-operations-are-declared-before.patch
1 [PATCH] ensure internal print operations are declared before use
2
3 Stock rapidxml-1.13 does not allow implementers of the
4 `rapidxml_print.hpp` header to build under GCC 4.7 (or newer) due to
5 compliation issues. This is a result of "Name lookup changes" introduced
6 in GCC 4.7 [1]. The following adds forward declarations required to
7 compile with GCC 4.7+.
8
9 This issue has been mentioned upstream [2], but it has yet to be fixed
10 in official sources.
11
12 [1]: https://gcc.gnu.org/gcc-4.7/porting_to.html
13 [2]: https://sourceforge.net/p/rapidxml/bugs/16/
14
15 Signed-off-by: James Knight <james.knight@rockwellcollins.com>
16
17 Index: b/rapidxml_print.hpp
18 ===================================================================
19 --- a/rapidxml_print.hpp
20 +++ b/rapidxml_print.hpp
21 @@ -101,7 +101,16 @@
22  \r
23          ///////////////////////////////////////////////////////////////////////////\r
24          // Internal printing operations\r
25 -    \r
26 +\r
27 +        template<class OutIt, class Ch> inline OutIt print_cdata_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);\r
28 +        template<class OutIt, class Ch> inline OutIt print_children(OutIt out, const xml_node<Ch> *node, int flags, int indent);\r
29 +        template<class OutIt, class Ch> inline OutIt print_comment_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);\r
30 +        template<class OutIt, class Ch> inline OutIt print_data_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);\r
31 +        template<class OutIt, class Ch> inline OutIt print_declaration_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);\r
32 +        template<class OutIt, class Ch> inline OutIt print_doctype_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);\r
33 +        template<class OutIt, class Ch> inline OutIt print_element_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);\r
34 +        template<class OutIt, class Ch> inline OutIt print_pi_node(OutIt out, const xml_node<Ch> *node, int flags, int indent);\r
35 +\r
36          // Print node\r
37          template<class OutIt, class Ch>\r
38          inline OutIt print_node(OutIt out, const xml_node<Ch> *node, int flags, int indent)\r