diff options
author | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2008-08-16 03:36:32 +0000 |
---|---|---|
committer | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2008-08-16 03:36:32 +0000 |
commit | dad80a1bff182651128f352095e2163534c5d81c (patch) | |
tree | 6c15a2720cd8a15874d8f2d9ca1712c79eefb219 | |
parent | f179cbcab7573c3c323e783497c74ee6935da005 (diff) | |
download | gcc-dad80a1bff182651128f352095e2163534c5d81c.zip gcc-dad80a1bff182651128f352095e2163534c5d81c.tar.gz gcc-dad80a1bff182651128f352095e2163534c5d81c.tar.bz2 |
re PR libfortran/35863 ([F2003] Implement ENCODING="UTF-8")
2008-08-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/35863
* io.c (gfc_match_open): Enable UTF-8 in checks.
* simplify.c (gfc_simplify_selected_char_kind): Enable iso_10646.
From-SVN: r139146
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/io.c | 3 | ||||
-rw-r--r-- | gcc/fortran/simplify.c | 2 |
3 files changed, 9 insertions, 2 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 3ea6c32..a347d6d 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2008-08-15 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR fortran/35863 + * io.c (gfc_match_open): Enable UTF-8 in checks. + * simplify.c (gfc_simplify_selected_char_kind): Enable iso_10646. + 2008-08-14 Janus Weil <janus@gcc.gnu.org> PR fortran/36705 diff --git a/gcc/fortran/io.c b/gcc/fortran/io.c index 58326b7..979dfc2 100644 --- a/gcc/fortran/io.c +++ b/gcc/fortran/io.c @@ -1706,8 +1706,7 @@ gfc_match_open (void) if (open->encoding->expr_type == EXPR_CONSTANT) { - /* TODO: Implement UTF-8 here. */ - static const char * encoding[] = { "DEFAULT", NULL }; + static const char * encoding[] = { "DEFAULT", "UTF-8", NULL }; if (!compare_to_allowed_values ("ENCODING", encoding, NULL, NULL, open->encoding->value.character.string, diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c index 1690003..64d2be1 100644 --- a/gcc/fortran/simplify.c +++ b/gcc/fortran/simplify.c @@ -3795,6 +3795,8 @@ gfc_simplify_selected_char_kind (gfc_expr *e) if (gfc_compare_with_Cstring (e, "ascii", false) == 0 || gfc_compare_with_Cstring (e, "default", false) == 0) kind = 1; + else if (gfc_compare_with_Cstring (e, "iso_10646", false) == 0) + kind = 4; else kind = -1; |