Single-error correction and double-error detection