From: Per Bothner Date: Sat, 14 Feb 2004 17:40:53 +0000 (-0800) Subject: fix-header.c (line_table): Move local variable in main to global. X-Git-Tag: releases/gcc-4.0.0~10121 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c7762b449dca23277872cd1365c84522e42caadc;p=thirdparty%2Fgcc.git fix-header.c (line_table): Move local variable in main to global. * fix-header.c (line_table): Move local variable in main to global. * scan.h (line_table): Use it. * scan-decls.c (scan_decls): Need to call linemap_lookup on token's line (recently renamed to src_loc) before calling recognized_function. From-SVN: r77808 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6121ea73e710..db4ae6f15dd3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2004-02-14 Per Bothner + + * fix-header.c (line_table): Move local variable in main to global. + * scan.h (line_table): Use it. + * scan-decls.c (scan_decls): Need to call linemap_lookup on token's + line (recently renamed to src_loc) before calling recognized_function. + 2004-02-14 Matt Kraai * Makefile.in: Fix comment typos. diff --git a/gcc/fix-header.c b/gcc/fix-header.c index 43916c547891..67666b6544ce 100644 --- a/gcc/fix-header.c +++ b/gcc/fix-header.c @@ -84,6 +84,8 @@ static void v_fatal (const char *, va_list) ATTRIBUTE_PRINTF (1,0) ATTRIBUTE_NORETURN; static void fatal (const char *, ...) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN; +struct line_maps line_table; + sstring buf; int verbose = 0; @@ -590,7 +592,6 @@ read_scan_file (char *in_fname, int argc, char **argv) struct fn_decl *fn; int i, strings_processed; struct symbol_list *cur_symbols; - struct line_maps line_table; obstack_init (&scan_file_obstack); diff --git a/gcc/scan-decls.c b/gcc/scan-decls.c index ebd69cb05c11..70b95bf50ae4 100644 --- a/gcc/scan-decls.c +++ b/gcc/scan-decls.c @@ -165,6 +165,8 @@ scan_decls (cpp_reader *pfile, int argc ATTRIBUTE_UNUSED, { int nesting = 1; int have_arg_list = 0; + const struct line_map *map; + unsigned int line; for (;;) { token = get_a_token (pfile); @@ -182,7 +184,9 @@ scan_decls (cpp_reader *pfile, int argc ATTRIBUTE_UNUSED, || token->type == CPP_ELLIPSIS) have_arg_list = 1; } - recognized_function (&prev_id, token->line, + map = linemap_lookup (&line_table, token->src_loc); + line = SOURCE_LINE (map, token->src_loc); + recognized_function (&prev_id, line, (saw_inline ? 'I' : in_extern_C_brace || current_extern_C ? 'F' : 'f'), have_arg_list); diff --git a/gcc/scan.h b/gcc/scan.h index 7062cdaf90ed..0d42de5caf87 100644 --- a/gcc/scan.h +++ b/gcc/scan.h @@ -70,3 +70,5 @@ extern int source_lineno; extern sstring source_filename; /* Current physical line number */ extern int lineno; + +extern struct line_maps line_table;