diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/fortran/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/fortran/scanner.c | 14 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 |
3 files changed, 22 insertions, 3 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index c645b6f..95605b7 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,10 @@ +2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org> + + * scanner.c (gfc_next_char_literal): Use gfc_warning_now. + (load_file): Use the line length as the column hint for + linemap_line_start. Reserve a location for the highest column of + the line. + 2014-12-03 Manuel López-Ibáñez <manu@gcc.gnu.org> PR fortran/44054 diff --git a/gcc/fortran/scanner.c b/gcc/fortran/scanner.c index 0de0998..718c323 100644 --- a/gcc/fortran/scanner.c +++ b/gcc/fortran/scanner.c @@ -1056,7 +1056,8 @@ restart: gfc_current_locus.lb->truncated = 0; gfc_current_locus.nextc = gfc_current_locus.lb->line + maxlen; - gfc_warning_now_1 ("Line truncated at %L", &gfc_current_locus); + gfc_warning_now (OPT_Wline_truncation, + "Line truncated at %L", &gfc_current_locus); gfc_current_locus.nextc = current_nextc; } @@ -1195,7 +1196,8 @@ restart: && gfc_current_locus.lb->truncated) { gfc_current_locus.lb->truncated = 0; - gfc_warning_now_1 ("Line truncated at %L", &gfc_current_locus); + gfc_warning_now (OPT_Wline_truncation, + "Line truncated at %L", &gfc_current_locus); } prev_openmp_flag = openmp_flag; @@ -2044,7 +2046,13 @@ load_file (const char *realfilename, const char *displayedname, bool initial) + (len + 1) * sizeof (gfc_char_t)); b->location - = linemap_line_start (line_table, current_file->line++, 120); + = linemap_line_start (line_table, current_file->line++, len); + /* ??? We add the location for the maximum column possible here, + because otherwise if the next call creates a new line-map, it + will not reserve space for any offset. */ + if (len > 0) + linemap_position_for_column (line_table, len); + b->file = current_file; b->truncated = trunc; wide_strcpy (b->line, line); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 295a810..29802cd 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2014-12-05 Manuel López-Ibáñez <manu@gcc.gnu.org> + + * gfortran.dg/line_length_5.f90: New test. + 2014-12-04 Sriraman Tallam <tmsriram@google.com> H.J. Lu <hongjiu.lu@intel.com> |