aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTobias Burnus <burnus@net-b.de>2010-08-18 20:05:58 +0200
committerTobias Burnus <burnus@gcc.gnu.org>2010-08-18 20:05:58 +0200
commit9a18b99ba9d3dbae4af239450459d358fade312b (patch)
tree4c1ac5d8652f4fc42c8d09951562f6736a634591 /gcc
parentc043ee4a3aca9dab1b13808abce5de717eced450 (diff)
downloadgcc-9a18b99ba9d3dbae4af239450459d358fade312b.zip
gcc-9a18b99ba9d3dbae4af239450459d358fade312b.tar.gz
gcc-9a18b99ba9d3dbae4af239450459d358fade312b.tar.bz2
re PR fortran/45295 (intrinsic.texi: SELECTED_CHAR_KIND should mention wide-char support)
2010-08-18 Tobias Burnus <burnus@net-b.de> PR fortran/45295 * intrinsic.texi (selected_char_kind): Document ISO_10646 support. From-SVN: r163347
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog6
-rw-r--r--gcc/fortran/intrinsic.texi27
2 files changed, 26 insertions, 7 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 67bcf5a..3adaabc 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,9 @@
+2010-08-18 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/45295
+ * intrinsic.texi (selected_char_kind): Document ISO_10646
+ support.
+
2010-08-17 Jakub Jelinek <jakub@redhat.com>
PR fortran/45304
diff --git a/gcc/fortran/intrinsic.texi b/gcc/fortran/intrinsic.texi
index fecafbd..5660500 100644
--- a/gcc/fortran/intrinsic.texi
+++ b/gcc/fortran/intrinsic.texi
@@ -9677,7 +9677,8 @@ seconds.
@code{SELECTED_CHAR_KIND(NAME)} returns the kind value for the character
set named @var{NAME}, if a character set with such a name is supported,
or @math{-1} otherwise. Currently, supported character sets include
-``ASCII'' and ``DEFAULT'', which are equivalent.
+``ASCII'' and ``DEFAULT'', which are equivalent, and ``ISO_10646''
+(Universal Character Set, UCS-4) which is commonly known as Unicode.
@item @emph{Standard}:
Fortran 2003 and later
@@ -9695,13 +9696,25 @@ Transformational function
@item @emph{Example}:
@smallexample
-program ascii_kind
- integer,parameter :: ascii = selected_char_kind("ascii")
- character(kind=ascii, len=26) :: s
+program character_kind
+ use iso_fortran_env
+ implicit none
+ integer, parameter :: ascii = selected_char_kind ("ascii")
+ integer, parameter :: ucs4 = selected_char_kind ('ISO_10646')
+
+ character(kind=ascii, len=26) :: alphabet
+ character(kind=ucs4, len=30) :: hello_world
+
+ alphabet = ascii_"abcdefghijklmnopqrstuvwxyz"
+ hello_world = ucs4_'Hello World and Ni Hao -- ' &
+ // char (int (z'4F60'), ucs4) &
+ // char (int (z'597D'), ucs4)
+
+ write (*,*) alphabet
- s = ascii_"abcdefghijklmnopqrstuvwxyz"
- print *, s
-end program ascii_kind
+ open (output_unit, encoding='UTF-8')
+ write (*,*) trim (hello_world)
+end program character_kind
@end smallexample
@end table