To: J3 07-326
From: Bill Long
Subject: BOZ literal constants
Date: 2007 October 30
References: J3/07-007r3, N1695
Discussion
By lumping the description of BOZ literal constants into the subclause
on the Integer type, old versions of the standard had been
misinterpreted to imply that BOZ literal constants actual had a type
and were type Integer. This is clearly not the case, and this
confusion was fixed by the BITS feature. When the bits type was
removed, this fix was also removed. Edits are provided below to avoid
the confusion. An edit is also provided to allow BOZ literal constants
in more places, as described in N1695.
Edits to 07-007r3:
[56:15-] End subclause 4.4.2 Integer type after Note 4.6 and insert
the following to start a new subclause:
"4.4.2a BOZ literal constants
A binary, octal, and hexadecimal, or BOZ, constant represents an
ordered sequence of bits."
[57:3] Delete the sentence "Binary, octal, ... number systems".
[57:5] At the end of the paragraph, add a new sentence:
"Each digit of a binary constant represents one bit, each digit of an
octal constant represents three bits, and each hex digit of a hex
constant represents four bits, according to their numerical
representations a binary integers, with leading zero bits where
needed."
[57:6-9] Replace the constraint with:
"C414 (R412) A shall appear only as a
in a DATA statement, or as an actual argument
associated with the dummy argument of an intrinsic procedure as
specified in (13)."