aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/fortran/ChangeLog7
-rw-r--r--gcc/fortran/scanner.c9
2 files changed, 15 insertions, 1 deletions
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 <fxcoudert@gcc.gnu.org>
+
+ 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 <fxcoudert@gcc.gnu.org>
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);