From: Tobias Burnus Date: Wed, 18 Aug 2010 18:05:58 +0000 (+0200) Subject: re PR fortran/45295 (intrinsic.texi: SELECTED_CHAR_KIND should mention wide-char... X-Git-Tag: releases/gcc-4.6.0~4948 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9a18b99ba9d3dbae4af239450459d358fade312b;p=thirdparty%2Fgcc.git re PR fortran/45295 (intrinsic.texi: SELECTED_CHAR_KIND should mention wide-char support) 2010-08-18 Tobias Burnus PR fortran/45295 * intrinsic.texi (selected_char_kind): Document ISO_10646 support. From-SVN: r163347 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 67bcf5ab80cc..3adaabc2ead2 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2010-08-18 Tobias Burnus + + PR fortran/45295 + * intrinsic.texi (selected_char_kind): Document ISO_10646 + support. + 2010-08-17 Jakub Jelinek PR fortran/45304 diff --git a/gcc/fortran/intrinsic.texi b/gcc/fortran/intrinsic.texi index fecafbdcf81b..566050062a1c 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