From: David Malcolm Date: Fri, 23 Feb 2018 14:54:02 +0000 (-0500) Subject: Explicitly qualify specializations of elfutils::to_string X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fheads%2Fdwarflint;p=thirdparty%2Felfutils.git Explicitly qualify specializations of elfutils::to_string I attempted to build the "dwarflint" branch with gcc 7.3.1 , but ran into various problems of the form: c++/known.cc:220:1: error: explicit specialization of ‘template std::__cxx11::string elfutils::to_string(const type&)’ outside its namespace must use a nested-name-specifier [-fpermissive] to_string (const dwarf::dwarf_enum &value) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ The fix appears to be trivial. Signed-off-by: David Malcolm --- diff --git a/libdw/ChangeLog b/libdw/ChangeLog index e6e7f3bef..9696d4d7c 100644 --- a/libdw/ChangeLog +++ b/libdw/ChangeLog @@ -1,3 +1,16 @@ +2018-02-26 David Malcolm + + * c++/edit-values.cc (to_string): + Explicitly qualify with "elfutils::". + * c++/known.cc (to_string): Likewise. + (to_string): Likewise. + * c++/output-values.cc (to_string): + Likewise. + * c++/values.cc (to_string): Likewise. + (to_string): Likewise. + (to_string): Likewise. + (to_string): Likewise. + 2017-10-03 Mark Wielaard * libdw.h: Define LIBDW_CIE_ID and use it in dwarf_cfi_cie_p. diff --git a/libdw/c++/edit-values.cc b/libdw/c++/edit-values.cc index aefb5fd16..ca83a967d 100644 --- a/libdw/c++/edit-values.cc +++ b/libdw/c++/edit-values.cc @@ -41,7 +41,7 @@ template class dwarf_data::value; template<> std::string -to_string (const dwarf_edit::attribute &attr) +elfutils::to_string (const dwarf_edit::attribute &attr) { return attribute_string (attr); } diff --git a/libdw/c++/known.cc b/libdw/c++/known.cc index bd84f52c8..cb5fe693c 100644 --- a/libdw/c++/known.cc +++ b/libdw/c++/known.cc @@ -217,14 +217,14 @@ enum_string (const value_type &value) template<> string -to_string (const dwarf::dwarf_enum &value) +elfutils::to_string (const dwarf::dwarf_enum &value) { return enum_string (value); } template<> string -to_string (const dwarf_data::dwarf_enum &value) +elfutils::to_string (const dwarf_data::dwarf_enum &value) { return enum_string (value); } diff --git a/libdw/c++/output-values.cc b/libdw/c++/output-values.cc index 199c72bd3..60abc0b5e 100644 --- a/libdw/c++/output-values.cc +++ b/libdw/c++/output-values.cc @@ -46,7 +46,7 @@ template class dwarf_output::copier; template<> std::string -to_string (const dwarf_output::attribute &attr) +elfutils::to_string (const dwarf_output::attribute &attr) { return attribute_string (attr); } diff --git a/libdw/c++/values.cc b/libdw/c++/values.cc index 335074fb2..c70d793fa 100644 --- a/libdw/c++/values.cc +++ b/libdw/c++/values.cc @@ -227,28 +227,28 @@ value_string (const value_type &value) template<> string -to_string (const dwarf::attribute &attr) +elfutils::to_string (const dwarf::attribute &attr) { return attribute_string (attr); } template<> string -to_string (const dwarf::attr_value &value) +elfutils::to_string (const dwarf::attr_value &value) { return value_string (value); } template<> string -to_string (const dwarf_edit::attr_value &value) +elfutils::to_string (const dwarf_edit::attr_value &value) { return value_string (value); } template<> string -to_string (const dwarf_output::attr_value &value) +elfutils::to_string (const dwarf_output::attr_value &value) { return value_string (value); }