gdb: avoid accessing global C++ language implementation functions
authorAndrew Burgess <andrew.burgess@embecosm.com>
Tue, 20 Oct 2020 11:38:42 +0000 (12:38 +0100)
committerAndrew Burgess <andrew.burgess@embecosm.com>
Wed, 23 Dec 2020 20:53:14 +0000 (20:53 +0000)
commit2c75ccb24cec32180e057aade6bd9141296860e0
treec61eba8249f1c31268ecc38f59230c7d43f2ece5
parent016382f8a43a59eca49f68c7d8b8058f64eaf40f
gdb: avoid accessing global C++ language implementation functions

The function c_printchar is called from two places; it provides the
implementation of language_defn::printchar and it is called from
dwarf2_compute_name.

It would be nice to rename c_printchar as language_defn::printchar and
so avoid the trampoline.

To achieve this, instead of calling c_printchar directly from the
DWARF code, I lookup the C++ language object and call the printchar
member function.

In a later commit I can then rename c_printchar.

There should be no user visible changes after this commit.

gdb/ChangeLog:

* dwarf2/read.c (dwarf2_compute_name): Call methods on C++
language object instead of calling global functions directly.
gdb/ChangeLog
gdb/dwarf2/read.c