empty_buffer and empty_string should be consts.