To: J3 07-326r1 From: Van Snyder (original from Bill Long) Subject: BOZ literal constants Date: 2007 November 12 References: J3/07-007r3, N1695 1. 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. 2. Edits to 07-007r3: After the following edits, move [56:15-57:9] to [88:1-], making it a new subclause 4.6a that begins: "4.6a BOZ literal constants A binary, octal, or hexadecimal (BOZ) constant is a sequence of digits that represents an ordered sequence of bits. BOZ literal constants have no type." [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 digit of a hexadecimal constant represents four bits, according to their numerical representations as 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 where explicitly allowed in subclause 13.7 as an actual argument of an intrinsic procedure."