public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "harper at msor dot vuw.ac.nz" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/105473] semicolon allowed when list-directed read integer with decimal='point'
Date: Mon, 16 May 2022 21:13:04 +0000	[thread overview]
Message-ID: <bug-105473-4-9sZ6BsbtyN@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-105473-4@http.gcc.gnu.org/bugzilla/>

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105473

--- Comment #17 from harper at msor dot vuw.ac.nz ---
On comparing that with ifort's result I think that the only remaining bug
is that if decimal='comma' then '.' is neither a decimal symbol nor a 
separator (see f2018 13.6).


On Mon, 16 May 2022, jvdelisle at gcc dot gnu.org wrote:

> Date: Mon, 16 May 2022 00:49:44 +0000
> From: jvdelisle at gcc dot gnu.org <gcc-bugzilla@gcc.gnu.org>
> To: John Harper <john.harper@vuw.ac.nz>
> Subject: [Bug fortran/105473] semicolon allowed when list-directed read
>     integer with decimal='point'
> Resent-Date: Mon, 16 May 2022 12:49:53 +1200 (NZST)
> Resent-From: <john.harper@vuw.ac.nz>
> 
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105473
>
> --- Comment #13 from Jerry DeLisle <jvdelisle at gcc dot gnu.org> ---
> With John's multiple combinations test case I get the following results with
> the attached patch. All places where we gave an error before the patch, we give
> errors now plus new errors
>
> $ gfc multi.f90
> $ ./a.out
> i=           1 input(i) = "2,5,"
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.00000000       666.000000      ios=        5010
> i=           2 input(i) = "2;5,"
> with decimal=point x(:) =   2.00000000       666.000000      ios=        5010
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=           3 input(i) = "2 5,"
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=           4 input(i) = "2.5,"
> with decimal=point x(:) =   2.50000000       5.00000000      ios=          -1
> with decimal=comma x(:) =   2.50000000       666.000000      ios=        5010
> i=           5 input(i) = "2,5;"
> with decimal=point x(:) =   2.00000000       5.00000000      ios=        5010
> with decimal=comma x(:) =   2.50000000       666.000000      ios=          -1
> i=           6 input(i) = "2;5;"
> with decimal=point x(:) =   2.00000000       666.000000      ios=        5010
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=           7 input(i) = "2 5;"
> with decimal=point x(:) =   2.00000000       5.00000000      ios=        5010
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=           8 input(i) = "2.5;"
> with decimal=point x(:) =   2.50000000       5.00000000      ios=        5010
> with decimal=comma x(:) =   2.50000000       666.000000      ios=          -1
> i=           9 input(i) = "2,5 "
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.50000000       666.000000      ios=          -1
> i=          10 input(i) = "2;5 "
> with decimal=point x(:) =   2.00000000       666.000000      ios=        5010
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=          11 input(i) = "2 5 "
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=          12 input(i) = "2.5 "
> with decimal=point x(:) =   2.50000000       5.00000000      ios=          -1
> with decimal=comma x(:) =   2.50000000       666.000000      ios=          -1
> i=          13 input(i) = "2,5."
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.00000000       666.000000      ios=        5010
> i=          14 input(i) = "2;5."
> with decimal=point x(:) =   2.00000000       666.000000      ios=        5010
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=          15 input(i) = "2 5."
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=          16 input(i) = "2.5."
> with decimal=point x(:) =   2.00000000       5.00000000      ios=        5010
> with decimal=comma x(:) =   2.00000000       666.000000      ios=        5010
> [jerry@amdr pr105473]$ gfc multi.f90
> [jerry@amdr pr105473]$ ./a.out
> i=           1 input(i) = "2,5,"
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.00000000       666.000000      ios=        5010
> Bad real number in item 1 of list input
> i=           2 input(i) = "2;5,"
> with decimal=point x(:) =   2.00000000       666.000000      ios=        5010
> Semicolon not allowed as separator with DECIMAL='point'
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=           3 input(i) = "2 5,"
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=           4 input(i) = "2.5,"
> with decimal=point x(:) =   2.50000000       5.00000000      ios=          -1
> End of file
> with decimal=comma x(:) =   2.50000000       666.000000      ios=        5010
> Bad real number in item 1 of list input
> i=           5 input(i) = "2,5;"
> with decimal=point x(:) =   2.00000000       5.00000000      ios=        5010
> Semicolon not allowed as separator with DECIMAL='point'
> with decimal=comma x(:) =   2.50000000       666.000000      ios=          -1
> End of file
> i=           6 input(i) = "2;5;"
> with decimal=point x(:) =   2.00000000       666.000000      ios=        5010
> Semicolon not allowed as separator with DECIMAL='point'
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=           7 input(i) = "2 5;"
> with decimal=point x(:) =   2.00000000       5.00000000      ios=        5010
> Semicolon not allowed as separator with DECIMAL='point'
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=           8 input(i) = "2.5;"
> with decimal=point x(:) =   2.50000000       5.00000000      ios=        5010
> Semicolon not allowed as separator with DECIMAL='point'
> with decimal=comma x(:) =   2.50000000       666.000000      ios=          -1
> End of file
> i=           9 input(i) = "2,5 "
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.50000000       666.000000      ios=          -1
> End of file
> i=          10 input(i) = "2;5 "
> with decimal=point x(:) =   2.00000000       666.000000      ios=        5010
> Semicolon not allowed as separator with DECIMAL='point'
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=          11 input(i) = "2 5 "
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=          12 input(i) = "2.5 "
> with decimal=point x(:) =   2.50000000       5.00000000      ios=          -1
> End of file
> with decimal=comma x(:) =   2.50000000       666.000000      ios=          -1
> End of file
> i=          13 input(i) = "2,5."
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.00000000       666.000000      ios=        5010
> Bad real number in item 1 of list input
> i=          14 input(i) = "2;5."
> with decimal=point x(:) =   2.00000000       666.000000      ios=        5010
> Semicolon not allowed as separator with DECIMAL='point'
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=          15 input(i) = "2 5."
> with decimal=point x(:) =   2.00000000       5.00000000      ios=           0
> with decimal=comma x(:) =   2.00000000       5.00000000      ios=           0
> i=          16 input(i) = "2.5."
> with decimal=point x(:) =   2.00000000       5.00000000      ios=        5010
> Bad real number in item 1 of list input
> with decimal=comma x(:) =   2.00000000       666.000000      ios=        5010
> Bad real number in item 1 of list input
>
> -- 
> You are receiving this mail because:
> You reported the bug.
>


-- John Harper, School of Mathematics and Statistics
Victoria Univ. of Wellington, PO Box 600, Wellington 6140, New Zealand.
e-mail john.harper@vuw.ac.nz phone +64(0) 4 463 5276

  parent reply	other threads:[~2022-05-16 21:13 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-04  8:38 [Bug fortran/105473] New: " john.harper at vuw dot ac.nz
2022-05-05  2:14 ` [Bug fortran/105473] " jvdelisle2 at gmail dot com
2022-05-05  2:21 ` jvdelisle2 at gmail dot com
2022-05-05  2:50 ` harper at msor dot vuw.ac.nz
2022-05-06  1:26 ` jvdelisle2 at gmail dot com
2022-05-06 20:39 ` anlauf at gcc dot gnu.org
2022-05-08 14:54 ` jvdelisle at gcc dot gnu.org
2022-05-14 22:00 ` jvdelisle at gcc dot gnu.org
2022-05-15  8:59 ` harper at msor dot vuw.ac.nz
2022-05-15 14:37 ` jvdelisle at gcc dot gnu.org
2022-05-15 15:56 ` jvdelisle at gcc dot gnu.org
2022-05-16  0:10 ` harper at msor dot vuw.ac.nz
2022-05-16  0:42 ` jvdelisle at gcc dot gnu.org
2022-05-16  0:49 ` jvdelisle at gcc dot gnu.org
2022-05-16  0:55 ` jvdelisle at gcc dot gnu.org
2022-05-16  1:44 ` harper at msor dot vuw.ac.nz
2022-05-16  4:12 ` harper at msor dot vuw.ac.nz
2022-05-16 21:13 ` harper at msor dot vuw.ac.nz [this message]
2022-05-18  2:52 ` jvdelisle at gcc dot gnu.org
2022-05-19  0:10 ` harper at msor dot vuw.ac.nz
2022-06-03  4:33 ` jvdelisle at gcc dot gnu.org
2022-06-03  9:11 ` harper at msor dot vuw.ac.nz
2022-06-03 21:04 ` jvdelisle at gcc dot gnu.org
2022-06-04  3:47 ` harper at msor dot vuw.ac.nz
2022-07-02 17:14 ` jvdelisle at gcc dot gnu.org
2022-07-03  3:52 ` harper at msor dot vuw.ac.nz
2022-07-04  3:48 ` jvdelisle at gcc dot gnu.org
2024-02-17 18:04 ` cvs-commit at gcc dot gnu.org
2024-03-08  0:29 ` cvs-commit at gcc dot gnu.org
2024-03-08  0:30 ` jvdelisle at gcc dot gnu.org
2024-03-08  7:21 ` john.harper at vuw dot ac.nz
2024-03-09 19:12 ` jvdelisle at gcc dot gnu.org
2024-03-11 12:48 ` burnus at gcc dot gnu.org
2024-03-11 22:48 ` jvdelisle at gcc dot gnu.org
2024-03-14  8:40 ` burnus at gcc dot gnu.org
2024-03-14  9:16 ` burnus at gcc dot gnu.org
2024-04-03  3:36 ` jvdelisle at gcc dot gnu.org
2024-04-03  3:50 ` jvdelisle at gcc dot gnu.org
2024-04-06 13:56 ` cvs-commit at gcc dot gnu.org
2024-04-22  4:23 ` cvs-commit at gcc dot gnu.org
2024-04-22  4:25 ` jvdelisle at gcc dot gnu.org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-105473-4-9sZ6BsbtyN@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).