[Cfp-interest 3099] N3219 - 6.2.5 #15 and #15 - Page 40
Damian McGuckin
damianm at esi.com.au
Sun Apr 21 17:22:48 PDT 2024
Hi all,
Currently, the paragraphs 15 and 16 say:
15:
There are three complex types, designated as float _Complex,
double _Complex, and long double _Complex.#37) (Complex types are
a conditional feature that implementations may not support; see
6.10.10.4.) The real floating and complex types are collectively
called the floating types.
16:
For each floating type there is a corresponding real type, which
is always a real floating type. For real floating types, it is the
same type. For complex types, it is the type given by deleting the
keyword _Complex from the type name.
What is this "type name" term mentioned In the last sentence of 16.
The term is never defined until 6.7.8 which is almost 100 pages later.
Firstly
Does that mean we need a forward reference to the term here?
(I note that "type name" is mentioned in terms of scope in 6.2.1 when
talking about scope. But it is neither defined there nor even forward
referenced there. Actually "type name" is used heaps of times without a
forward reference before it is defined. I was only interested in the usage
of "type name" in Paragraph 16. Not all those other cases)
I generally associate the "name of the type" as the "type name" but that
is not the strict definition of 6.7.8.
Or more importantly, can that association of English words be infered for
all readers of the document.
Should "type name" just say "type" in that Paragraph 16.
I note thet the type is "designated" in the first sentence of 15.
So, it could say
There are three complex types, designated as (one of the type
names) float _Complex, double _Complex, and long double _Complex.
That is correct grammatically and technically (as per 6.7.8) But, I do not
really like it because it seems too clunky - it does not read smoothly.
Also, it is
a) Not a strict definition of the term "type name" but it helps to
correctly interpret the subsequent paragraph, and importantly
b) Inconsistent with the earlier defined types in 6.2.5 which are
designated as signed char, short int ... (Paragraph 4)
designated as float, double, ... (Paragraph 12)
designated as _Decimal32, _Decimal64 (Paragraph 13)
These are concise words and they make for a sharp, clear sentence
Suggestions?
Thanks - Damian
More information about the Cfp-interest
mailing list