aboutsummaryrefslogtreecommitdiff
path: root/libgfortran/io
diff options
context:
space:
mode:
authorVictor Leikehman <lei@il.ibm.com>2004-08-10 13:34:04 +0000
committerPaul Brook <pbrook@gcc.gnu.org>2004-08-10 13:34:04 +0000
commita57bb5f6a5c4cd1f084dc15abf8b74b57282d96e (patch)
treea62bb4cf04088ac64a050809fe3aa40648d713d6 /libgfortran/io
parent45d78e7f76382d08aeec6c4237e149d2d364ed1c (diff)
downloadgcc-a57bb5f6a5c4cd1f084dc15abf8b74b57282d96e.zip
gcc-a57bb5f6a5c4cd1f084dc15abf8b74b57282d96e.tar.gz
gcc-a57bb5f6a5c4cd1f084dc15abf8b74b57282d96e.tar.bz2
list_read.c (namelist_read): Convert variable names to lower case, so that mixed-case names are recognized.
2004-08-10 Victor Leikehman <lei@il.ibm.com> * io/list_read.c (namelist_read): Convert variable names to lower case, so that mixed-case names are recognized. Don't read beyond terminating slash. From-SVN: r85751
Diffstat (limited to 'libgfortran/io')
-rw-r--r--libgfortran/io/list_read.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/libgfortran/io/list_read.c b/libgfortran/io/list_read.c
index bcfbc83..92ef1e7 100644
--- a/libgfortran/io/list_read.c
+++ b/libgfortran/io/list_read.c
@@ -1453,11 +1453,15 @@ restart:
match_namelist_name(ioparm.namelist_name, ioparm.namelist_name_len);
/* Ready to read namelist elements */
- for (;;)
+ while (!input_complete)
{
c = next_char ();
switch (c)
{
+ case '/':
+ input_complete = 1;
+ next_record (0);
+ break;
case '&':
match_namelist_name("end",3);
return;
@@ -1475,7 +1479,7 @@ restart:
name_matched = 1;
nl = find_nml_node (saved_string);
if (nl == NULL)
- internal_error ("Can not found a valid namelist var!");
+ internal_error ("Can not match a namelist variable");
free_saved();
len = nl->len;
@@ -1528,7 +1532,7 @@ restart:
break;
default :
- push_char(c);
+ push_char(tolower(c));
break;
}
}