 
   /// A newline '\n' character.
   case newlines(Int)
+
+  /// A carriage-return '\r' character.
+  case carriageReturns(Int)
 
   /// A backtick '`' character, used to escape identifiers.
   case backticks(Int)

      var total = 0
      for char in text.utf8 {
        total += 1
        if char == 10 /* ASCII newline */ {
          col = 0
          lines += 1
        } else {

    case let .verticalTabs(count): printRepeated("\u{2B7F}", count: count)
    case let .formfeeds(count): printRepeated("\u{240C}", count: count)
    case let .newlines(count): printRepeated("\n", count: count)
    case let .carriageReturns(count): printRepeated("\r", count: count)
    case let .backticks(count): printRepeated("`", count: count)
    case let .lineComment(text),
         let .blockComment(text),
