GCC 5.4 can't build a sym_name_t from a const char * because
sym_name_t constructor is marked explicit.  Use the constructor then.

gcc/cobol/ChangeLog:

        * symfind.cc (reduce_ancestry::reduce): Use sym_name_t
        constructor when initializing symbol_map_t::value_type none.

Signed-off-by: Pietro Monteiro <[email protected]>
---
 gcc/cobol/symfind.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gcc/cobol/symfind.cc b/gcc/cobol/symfind.cc
index cefc560bf31..21f4dabf1d4 100644
--- a/gcc/cobol/symfind.cc
+++ b/gcc/cobol/symfind.cc
@@ -297,7 +297,8 @@ public:
     }
   symbol_map_t::value_type
   reduce( const symbol_map_t::value_type& item ) {
-    static symbol_map_t::value_type none( "", std::vector<size_t>() );
+    static symbol_map_t::value_type none( sym_name_t(""),
+                                         std::vector<size_t>() );
 
     auto ancestors = candidates.begin();
     for( ; ancestors != candidates.end(); ancestors++ ) {
-- 
2.43.0

Reply via email to