I don't know where to report bug for the book "The Swift Programming Language (Swift 5.1)". May be here?
https://docs.swift.org/swift-book/LanguageGuide/TheBasics.html
Language Guide
Floating-point literals can be decimal (with no prefix), or hexadecimal (with a
0x
prefix). They must always have a number (or hexadecimal number) on both sides of the decimal point. Decimal floats can also have an optional exponent , indicated by an uppercase or lowercasee
; hexadecimal floats must have an exponent, indicated by an uppercase or lowercasep
.
This is not true. For decimal must be fractional part or exponent. For hexadecimal must be exponent, but fractional part is optional. Will be better to copy/paste from the "Language Reference" (the same book):
https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html
Decimal floating-point literals consist of a sequence of decimal digits followed by either a decimal fraction, a decimal exponent, or both.
Hexadecimal floating-point literals consist of a
0x
prefix, followed by an optional hexadecimal fraction, followed by a hexadecimal exponent.