From 8f26259d673708241abcdb57d3f218bd7ebbeb0f Mon Sep 17 00:00:00 2001
From: Mark Eggleston <markeggleston@codethink.com>
Date: Mon, 13 May 2019 15:30:07 +0100
Subject: [PATCH] Update documentation for Hollerith Constants
---
gcc/fortran/gfortran.texi | 20 +++++++++++---------
1 file changed, 11 insertions(+), 9 deletions(-)
@@ -1923,13 +1923,13 @@ in I/O operations.
@cindex Hollerith constants
GNU Fortran supports Hollerith constants in assignments, function
-arguments, and @code{DATA} and @code{ASSIGN} statements. A Hollerith
-constant is written as a string of characters preceded by an integer
-constant indicating the character count, and the letter @code{H} or
-@code{h}, and stored in bytewise fashion in a numeric (@code{INTEGER},
-@code{REAL}, or @code{complex}) or @code{LOGICAL} variable. The
-constant will be padded or truncated to fit the size of the variable in
-which it is stored.
+arguments, and @code{DATA} statements. A Hollerith constant is written
+as a string of characters preceded by an integer constant indicating the
+character count, and the letter @code{H} or @code{h}, and stored in
+bytewise fashion in a numeric (@code{INTEGER}, @code{REAL}, or
+@code{COMPLEX}) or @code{LOGICAL} variable. The constant will be padded
+with spaces or truncated to fit the size of the variable in which it is
+stored.
Examples of valid uses of Hollerith constants:
@smallexample
@@ -1939,11 +1939,13 @@ Examples of valid uses of Hollerith constants:
call foo (4h abc)
@end smallexample
-Invalid Hollerith constants examples:
+Examples of Hollerith constants:
@smallexample
integer*4 a
+ a = 0H ! Invalid, at least one character is needed.
+ a = 4HAB12 ! Valid
a = 8H12345678 ! Valid, but the Hollerith constant will be truncated.
- a = 0H ! At least one character is needed.
+ a = 3Hxyz ! Valid, but the Hollerith constant will be padded.
@end smallexample
In general, Hollerith constants were used to provide a rudimentary
--
2.11.0