     public mutating func formTruncatingRemainder(dividingBy other: Decimal) { fatalError("Decimal does not yet fully adopt FloatingPoint") }
 }
 
-extension Decimal: CustomStringConvertible {
+extension Decimal : CustomStringConvertible {
     public init?(string: String, locale: Locale? = nil) {
         let scan = Scanner(string: string)
+        var theDecimal = Decimal()
         scan.locale = locale
-        var theDecimal = Decimal()
         if !scan.scanDecimal(&theDecimal) {
             return nil
         }
         self = theDecimal
     }
 
+    // Note: In the Darwin overlay, `description` is implemented in terms of
+    // `NSDecimalString(_:_:)`; here, it's the other way around.
     public var description: String {
         if self.isNaN {
             return "NaN"

            i -= 1
            buffer[i] = MINUS
        }
        return String(cString: Array(buffer.suffix(from:i)))
    }
}


            var remainder: UInt16 = 0
            if copy._exponent == 0 {
                i -= 1
                buffer[i] = DECIMALPOINT
            }
            copy._exponent += 1
            (remainder, _) = divideByShort(&copy, 10)
            i -= 1
            buffer[i] = Int8(remainder) + ZERO
        }
