已合并
【PR】: fix compile gcc 16 failed #4377
duanpengliang创建于 17 天前
【PR】: fix compile gcc 16 failed #4377
已合并
Pull Request已成功合入, 合并人@CANN-robot
(感谢 duanpengliang 的贡献)17 天前 添加了label:enhancement
17 天前 创建了 pull request,commit 3d55b4ae
atomgit-bot
17 天前 评论:
17 天前 评论:
变更摘要
本 PR 旨在修复使用 GCC 16 编译时失败的问题(fix compile gcc 16 failed),主要针对空容器访问、缺失头文件引入以及测试代码中的未使用变量告警(GCC 16 下默认按更严格的标准处理)进行兼容性修正,涉及 acl_tdt_channel 的 tensor_data_transfer.cpp、tdt 头文件及相关测试用例。
主要改动
- 修复空 vector 取地址问题: 在
tensor_data_transfer.cpp的TensorDatasetDeserializes与TensorDatasetDeserializesV2中,将构造acltdtDataItem时对dims的&dims[0]改为dims.empty() ? nullptr : dims.data(),避免dims为空时对空容器取首元素地址的未定义行为/编译报错。 - 补充缺失头文件: 在
data_common.h、tdt_host_interface.h及tdt_stub.cpp中新增#include <cstdint>、#include <memory>,补齐 GCC 16 下隐式包含不再生效的类型与内存管理头文件。 - 修正 mock 方法参数类型: 在
acl_stub.h中将rtsKernelArgsGetPlaceHolderBuffer的 mock 签名参数由uint32_t dataSize改为size_t dataSize,与真实接口声明保持一致。 - 清理测试代码中的未使用变量: 删除
acl_common_unittest.cpp、acl_runtime_unittest.cpp、acl_rt_unittest.cpp中回调函数(CallBackFunc/CallBackFuncStub)内无实际作用的int a = 1; a++;,并将mmpa_api_stub.cpp的mmMalloc_Abnormal_Invoke中size++改为(void)size,消除未使用变量告警。


atomgit-bot
17 天前 评论:
17 天前 评论:
17 天前 添加了label:cann-cla/yes
此处折叠了54条消息 查看更多
16 天前 添加了label:approved
ykl999
16 天前 评论:
16 天前 评论:
/lgtm


16 天前 添加了label:lgtm
16 天前 合入了pull request
Pull Request
描述
修复gcc 16编译ut失败
变更类型
请选择本次引入的变更类型:
关联的Issue
如何测试
描述测试此变更的步骤和前提条件:
gcc 16编译源码与ut都成功
核对清单
其他信息
在此添加任何其他关于本次 PR 的说明。