re PR fortran/29835 (Error message of unknown edit descriptor needs improvement)
authorDaniel Kraft <d@domob.eu>
Tue, 22 Jul 2008 17:05:55 +0000 (19:05 +0200)
committerDaniel Kraft <domob@gcc.gnu.org>
Tue, 22 Jul 2008 17:05:55 +0000 (19:05 +0200)
commit9cad01cefbf1620fe2264feab58011ea3c23ccee
tree67b495422c086b17e39317d3339ecd1b1cfb0040
parent1e58e43be96f1001a41de4e770a0e1f78e8ee68e
re PR fortran/29835 (Error message of unknown edit descriptor needs improvement)

2008-07-22  Daniel Kraft  <d@domob.eu>

PR fortran/29835
* io.c (error_element), (format_locus):  New static globals.
(unexpected_element):  Spelled out this message fully.
(next_char):  Keep track of locus when not MODE_STRING.
(next_char_not_space):  Remember last parsed element in error_element.
(format_lex):  Fix two indentation errors.
(check_format):  Use format_locus and possibly error_element for a
slightly better error message on invalid format.
(check_format_string):  Set format_locus to start of the string
expression used as format.

2008-07-22  Daniel Kraft  <d@domob.eu>

PR fortran/29835
* io/format.c (struct format_data):  New member error_element.
(unexpected_element):  Added '%c' to message.
(next_char):  Keep track of last parsed character in fmt->error_element.
(format_error):  If the message is unexpected_element, output the
offending character, too.

2008-07-22  Daniel Kraft  <d@domob.eu>

PR fortran/29835
* gfortran.dg/fmt_error_3.f90:  New test.
* gfortran.dg/fmt_error_4.f90:  New test.
* gfortran.dg/fmt_error_5.f90:  New test.

From-SVN: r138063
gcc/fortran/ChangeLog
gcc/fortran/io.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/fmt_error_3.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/fmt_error_4.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/fmt_error_5.f90 [new file with mode: 0644]
libgfortran/ChangeLog
libgfortran/io/format.c