From ee07457bee548ae2e7e5919c260066238f40345c Mon Sep 17 00:00:00 2001 From: Francois-Xavier Coudert Date: Sat, 22 Sep 2007 23:48:02 +0000 Subject: re PR fortran/33528 (Wrong locations emitted with mapped locations and included files) PR fortran/33528 * scanner.c (preprocessor_line): Call linemap_add when exiting a file. (gfc_new_file): Adjust debug code for USE_MAPPED_LOCATION. From-SVN: r128676 --- gcc/fortran/ChangeLog | 7 +++++++ gcc/fortran/scanner.c | 9 ++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) (limited to 'gcc') diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 3c85cdd..327cc7a 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,10 @@ +2007-09-23 Francois-Xavier Coudert + + PR fortran/33528 + * scanner.c (preprocessor_line): Call linemap_add when exiting + a file. + (gfc_new_file): Adjust debug code for USE_MAPPED_LOCATION. + 2007-09-22 Francois-Xavier Coudert PR fortran/33522 diff --git a/gcc/fortran/scanner.c b/gcc/fortran/scanner.c index ef2bbcd9..1db4542 100644 --- a/gcc/fortran/scanner.c +++ b/gcc/fortran/scanner.c @@ -1341,7 +1341,12 @@ preprocessor_line (char *c) gfc_free (filename); return; } + current_file = current_file->up; +#ifdef USE_MAPPED_LOCATION + linemap_add (line_table, LC_RENAME, false, current_file->filename, + current_file->line); +#endif } /* The name of the file can be a temporary file produced by @@ -1620,10 +1625,12 @@ gfc_new_file (void) #if 0 /* Debugging aid. */ for (; line_head; line_head = line_head->next) - gfc_status ("%s:%3d %s\n", line_head->file->filename, + gfc_status ("%s:%3d %s\n", #ifdef USE_MAPPED_LOCATION + LOCATION_FILE (line_head->location), LOCATION_LINE (line_head->location), #else + line_head->file->filename, line_head->linenum, #endif line_head->line); -- cgit v1.1