>From 3148f5cd3dafdce78a30b609901fc9b27cceb983 Mon Sep 17 00:00:00 2001 From: Chih-Hung Hsieh Date: Wed, 21 Oct 2015 15:44:56 -0700 Subject: [PATCH] Move nested functions in dwfl_module_getsrc_file.c. * Nested functions in this file are moved to file scope to compile with clang. Extra parameters are added to pass local variables. Signed-off-by: Chih-Hung Hsieh Signed-off-by: Mark Wielaard --- libdwfl/ChangeLog | 8 ++++++++ libdwfl/dwfl_module_getsrc_file.c | 35 ++++++++++++++++++++--------------- 2 files changed, 28 insertions(+), 15 deletions(-) diff --git a/libdwfl/ChangeLog b/libdwfl/ChangeLog index e7c373e..27250a9 100644 --- a/libdwfl/ChangeLog +++ b/libdwfl/ChangeLog @@ -1,4 +1,12 @@ 2015-10-21 Chih-Hung Hsieh + Mark Wielaard + + * dwfl_module_getsrc_file.c (dwfl_module_getsrc_file): Move nested + functions 'dwarf_line_file', 'dwfl_line', and 'dwfl_line_file' to + file scope. Rename dwarf_line_file to dwfl_dwarf_line_file. Don't + use INTUSE. + +2015-10-21 Chih-Hung Hsieh * frame_unwind.c (expr_eval): Move nested function 'push' and 'pop' to file scope. Pass used local variables in struct eval_stack. diff --git a/libdwfl/dwfl_module_getsrc_file.c b/libdwfl/dwfl_module_getsrc_file.c index 20aa8a5..21a5915 100644 --- a/libdwfl/dwfl_module_getsrc_file.c +++ b/libdwfl/dwfl_module_getsrc_file.c @@ -30,6 +30,24 @@ #include "../libdw/libdwP.h" +static inline const char * +dwfl_dwarf_line_file (const Dwarf_Line *line) +{ + return line->files->info[line->file].name; +} + +static inline Dwarf_Line * +dwfl_line (const Dwfl_Line *line) +{ + return &dwfl_linecu (line)->die.cu->lines->info[line->idx]; +} + +static inline const char * +dwfl_line_file (const Dwfl_Line *line) +{ + return dwfl_dwarf_line_file (dwfl_line (line)); +} + int dwfl_module_getsrc_file (Dwfl_Module *mod, const char *fname, int lineno, int column, @@ -58,19 +76,6 @@ dwfl_module_getsrc_file (Dwfl_Module *mod, && cu != NULL && (error = __libdwfl_cu_getsrclines (cu)) == DWFL_E_NOERROR) { - inline const char *INTUSE(dwarf_line_file) (const Dwarf_Line *line) - { - return line->files->info[line->file].name; - } - inline Dwarf_Line *dwfl_line (const Dwfl_Line *line) - { - return &dwfl_linecu (line)->die.cu->lines->info[line->idx]; - } - inline const char *dwfl_line_file (const Dwfl_Line *line) - { - return INTUSE(dwarf_line_file) (dwfl_line (line)); - } - /* Search through all the line number records for a matching file and line/column number. If any of the numbers is zero, no match is performed. */ @@ -87,7 +92,7 @@ dwfl_module_getsrc_file (Dwfl_Module *mod, } else { - const char *file = INTUSE(dwarf_line_file) (line); + const char *file = dwfl_dwarf_line_file (line); if (file != lastfile) { /* Match the name with the name the user provided. */ @@ -110,7 +115,7 @@ dwfl_module_getsrc_file (Dwfl_Module *mod, size_t inner; for (inner = 0; inner < cur_match; ++inner) if (dwfl_line_file (match[inner]) - == INTUSE(dwarf_line_file) (line)) + == dwfl_dwarf_line_file (line)) break; if (inner < cur_match && (dwfl_line (match[inner])->line != line->line -- 2.4.3