diff --git a/stdlib/public/core/String.swift b/stdlib/public/core/String.swift index ad5b03eafd0..8e1d82a0cbb 100644 --- a/stdlib/public/core/String.swift +++ b/stdlib/public/core/String.swift @@ -1248,6 +1248,11 @@ extension String : LosslessStringConvertible { } extension String { + public // @testable + var _nfcCodeUnits: [UInt8] { + return _slicedGuts.withNFCCodeUnitsIterator { Array($0) } + } + public // @testable func _withNFCCodeUnits(_ f: (UInt8) throws -> Void) rethrows { try _gutsSlice.withNFCCodeUnitsIterator_2 { diff --git a/validation-test/stdlib/StringNormalization.swift b/validation-test/stdlib/StringNormalization.swift index 76451ad1def..11bf8f68af8 100644 --- a/validation-test/stdlib/StringNormalization.swift +++ b/validation-test/stdlib/StringNormalization.swift @@ -18,16 +18,12 @@ import StdlibUnittest import StdlibUnicodeUnittest private func expectEqualIterators(expected: [UInt8], others: [[UInt8]]) { - expected.withUnsafeBufferPointer { expectedBuffer in - for other in others { - other.withUnsafeBufferPointer { otherBuffer in - let expectedIterator = - _NormalizedUTF8CodeUnitIterator(expectedBuffer, range: 0..