gdb: New function to open source file and compute line charpos data
authorAndrew Burgess <andrew.burgess@embecosm.com>
Fri, 14 Jun 2019 21:16:52 +0000 (22:16 +0100)
committerAndrew Burgess <andrew.burgess@embecosm.com>
Sat, 15 Jun 2019 20:39:04 +0000 (21:39 +0100)
commit00df30ae1ea6db8f3693cad8a499f55f1d66e913
tree39181f1204ddee4a04f5768a42271742da31bc59
parentafda45a206f83389782a400f86668714400a1cb7
gdb: New function to open source file and compute line charpos data

Every place that a symtab's line_charpos data is loaded always follows
the same pattern, so create a new function to contain this logic and
make use of it throughout GDB.

There should be no user visible changes after this commit.

gdb/ChangeLog:

* source-cache.c (source_cache::get_plain_source_lines): Use
open_source_file_with_line_charpos instead of just
open_source_file, remove call to find_source_lines.
(source_cache::get_source_lines): Likewise.
* source.c (find_source_lines): Make static.
(get_filename_and_charpos): Renamed into...
(open_source_file_with_line_charpos): ..this along with changes to
return a scoped_fd, and some other minor clean ups.
(identify_source_line): Use open_source_file_with_line_charpos.
(search_command_helper): Use open_source_file_with_line_charpos
instead of just open_source_file, remove call to
find_source_lines.
* source.h (open_source_file_with_line_charpos): Declare new
function.
(find_source_lines): Delete declaration.
gdb/ChangeLog
gdb/source-cache.c
gdb/source.c
gdb/source.h