diff options
author | Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> | 2007-09-22 23:48:02 +0000 |
---|---|---|
committer | François-Xavier Coudert <fxcoudert@gcc.gnu.org> | 2007-09-22 23:48:02 +0000 |
commit | ee07457bee548ae2e7e5919c260066238f40345c (patch) | |
tree | f7150e7c3fc9d5b73002928ba55948db4f0f38d7 /gcc/fortran/scanner.c | |
parent | b6efedac9d83347ef9ba707d404b7edc4c81349f (diff) | |
download | gcc-ee07457bee548ae2e7e5919c260066238f40345c.zip gcc-ee07457bee548ae2e7e5919c260066238f40345c.tar.gz gcc-ee07457bee548ae2e7e5919c260066238f40345c.tar.bz2 |
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
Diffstat (limited to 'gcc/fortran/scanner.c')
-rw-r--r-- | gcc/fortran/scanner.c | 9 |
1 files changed, 8 insertions, 1 deletions
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); |