Use std::error_code to replace llvm::error_code