0.9.0 This overload is dangerous in that it can overread the stream and there isn't a good way to recover bytes lost this way. As of 0.9.0 an error is raised when this situation happens, but generally, it would be better for the calling application to read the stream itself and call consume(char const *, size_t, lib::error_code) instead which provides a better method of identifying and recovering from overreads.