[Cfp-interest 2509] JT-073 through JT-090 comments on N3047

Jim Thomas jaswthomas at sbcglobal.net
Sat Aug 6 17:35:10 PDT 2022


Here are some draft comments on C23 review draft N3047, mostly from looking through floating-point relevant parts of clause 6.

- Jim Thomas


JT-073 5.2.4.2.2#18 “Annex F” doesn’t have a link.

JT-074 6.2.5#10, footnote 46. The footnote explains what is implied by “same representation and alignment”. Is this just about signed and unsigned   integers or is it a more general statement. For example, does it apply to complex and array types? If it’s just about signed and unsigned integers, change the footnote to "The same representation and alignment requirements for signed and unsigned integers are meant to imply interchangeability as arguments to functions, return values from functions, and members of unions."

JT-075 6.2.5#17, footnote 50. The footnote is broken across two pages.

JT-076 various. There is inconsistent use of a space in front of the parentheses in “alignof (“  and “sizeof (“. I’m guessing the space comes from following the syntax in 6.5.3. The space is appropriate for the syntax, but seems undesirable for uses of the operators.

JT-077 6.4.4.1#2 There is an undesirable line break in “(‘)”.

JT-078 6.5.1#5 Change “See 7.27 how such a macro …”. Maybe to “7.27 shows how such a macro …”.

JT-079 6.5.1#5 Since the example does not provide the type-generic macro required in 7.27 (for implementations with more than one rounding mode), it would be better to change “The cbrt type-generic macro …” to “A cbrt type-generic macro …”.

JT-080 5.2.4.2.3#10 The preferred quantum exponent for prefix and postfix increment and decrement operators is not specified. In the “Preferred quantum exponents” table, after the row for logb, insert the row:

postfix ++ operator, postfix -- operator, prefix ++ operator, prefix -- operator			min(Q(x), 0)

JT-081 6.7.1#11 The last sentence has “see ??”.

JT-082 6.7.1#15 432000000 (base 10) = 11001101111111100110000000000 (base 2) = 1.100110111111110011*2^28 which is representable exactly in IEC 60559 float, contrary to what the example implies. Maybe use 43200002 which needs 25 bits.

JT-083 6.7.2.5#5 Change “operation” to “operator” and change “operations” to “operators”.

JT-084 6.7.2.5#5 Change the last sentence to “The typeof operator preserves all qualifiers.”

JT-085 6.7.6.3#4 Needs space after the form.

JT-086 6.7.9#4 In the next to last sentence, “double” has incorrect typeface.

JT-087 6.7.9#5 “shadows” is used twice in the example, but its meaning is not mentioned.

JT-088 6.7.9#5 Shouldn’t that be “auto b = b * b; …”?

JT-089 6.7.10#11 In the second bullet change “(positive or unsigned) zero” to “positive zero”. There is no unsigned zero in decimal floating types.

JT-089 6.7.12.7 “Idempotent” doesn’t seem like the correct term. Wikipedia: “Idempotence ... is the property of certain operations in mathematics and computer science whereby they can be applied multiple times without changing the result beyond the initial application.” Thus one would expect f(f(x)) = f(x).

JT-090 7.27#14 Change “where where” to “where”.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.oakapple.net/pipermail/cfp-interest/attachments/20220806/e4b6c3cb/attachment.htm>


More information about the Cfp-interest mailing list