gdb: use gdb:hash_enum as hash function in offset_map_type
authorSimon Marchi <simon.marchi@efficios.com>
Tue, 28 Apr 2020 13:49:58 +0000 (09:49 -0400)
committerSimon Marchi <simon.marchi@efficios.com>
Tue, 28 Apr 2020 13:50:12 +0000 (09:50 -0400)
commit1b95cdb76caca1b7a9ecf9324acf23139f11f7d1
treed1c8f27c992e1f62e45214a3c5d098bf20ac78c0
parent56b1e56d2c2fa7611dc87192f26aac1da9fc63df
gdb: use gdb:hash_enum as hash function in offset_map_type

When building with g++ 4.8, we get this error (just an excerpt, because
g++ outputs a very long error message):

      CXX    dwarf2/read.o
    ...
    /home/smarchi/src/binutils-gdb/gdb/dwarf2/read.c:14616:31:   required from here
    /usr/include/c++/4.8/bits/hashtable_policy.h:1070:12: error: invalid use of incomplete type ‘struct std::hash<sect_offset>’
         struct _Hash_code_base<_Key, _Value, _ExtractKey, _H1, _H2,

This is the same problem and fix as in commit f23f598e28ad ("[gdb] Fix
build breaker with gcc 4.8").  Pass an explicit hash function rather
than relying on the default std::hash<sect_offset>.

gdb/ChangeLog:

PR gdb/25881
* dwarf2/read.c (offset_map_type): Use
gdb:hash_enum<sect_offset> as hash function.
gdb/ChangeLog
gdb/dwarf2/read.c