登录
注册
开源
企业版
高校版
搜索
帮助中心
使用条款
关于我们
开源
企业版
高校版
私有云
模力方舟
AI 队友
登录
注册
Gitee 年度开源项目评选中~
代码拉取完成,页面将自动刷新
开源项目
>
工业软件
>
芯片开发
&
EDA/电子设计自动化
&&
捐赠
捐赠前请先登录
取消
前往登录
扫描微信二维码支付
取消
支付完成
支付提示
将跳转至支付宝完成支付
确定
取消
Watch
不关注
关注所有动态
仅关注版本发行动态
关注但不提醒动态
43
Star
198
Fork
97
iEDA
/
iEDA
代码
Issues
6
Pull Requests
2
Wiki
统计
流水线
服务
质量分析
Jenkins for Gitee
腾讯云托管
腾讯云 Serverless
悬镜安全
阿里云 SAE
Codeblitz
SBOM
我知道了,不再自动展开
67
修复 NotificationUtility 类析构函数访问权限错误
已合并
iEDA:master
iEDA:master
已注销用户
创建于 2025-07-03 11:44
克隆/下载
HTTPS
SSH
复制
下载 Email Patch
下载 Diff 文件
## 背景 在编译过程中,由于析构函数的私有访问限制,`NotificationUtility` 类无法通过 `std::unique_ptr` 进行实例化。`unique_ptr` 使用的默认删除器需要对析构函数的公共访问权限。 完整编译日志见 [GitHub Action](https://github.com/oscc-ip/artifact/actions/runs/16039273494/job/45257557592#step:6:1680) ## 错误信息 ``` [1174/1248] Building CXX object src/utility/notification/CMakeFiles/notification.dir/NotificationUtility.cpp.o FAILED: [code=1] src/utility/notification/CMakeFiles/notification.dir/NotificationUtility.cpp.o /usr/local/bin/c++ -DBOOST_ALLOW_DEPRECATED_HEADERS -DBOOST_BIND_GLOBAL_PLACEHOLDERS -DGLOG_USE_GLOG_EXPORT -Dnotification_EXPORTS -I/home/runner/work/artifact/artifact/src/utility/stdBase -I/home/runner/work/artifact/artifact/src/utility/stdBase/include -I/home/runner/work/artifact/artifact/src/utility -I/home/runner/work/artifact/artifact/src/operation/iSTA -I/home/runner/work/artifact/artifact/src/operation/iSTA/source -I/home/runner/work/artifact/artifact/src/operation/iSTA/source/module -I/home/runner/work/artifact/artifact/src/operation/iSTA/source/module/include -I/home/runner/work/artifact/artifact/src/operation/iPA -I/home/runner/work/artifact/artifact/src/operation/iPA/source -I/home/runner/work/artifact/artifact/src/operation/iPA/source/module -I/home/runner/work/artifact/artifact/src/operation/iPA/source/module/include -I/home/runner/work/artifact/artifact/src/database/manager/parser/rust-common -I/home/runner/work/artifact/artifact/src/utility/stdBase/graph -I/home/runner/work/artifact/artifact/src/utility/log -I/home/runner/work/artifact/artifact/src/utility/string -I/home/runner/work/artifact/artifact/src/utility/tcl -I/home/runner/work/artifact/artifact/src/utility/notification -isystem /home/runner/work/artifact/artifact/src/third_party -isystem /home/runner/work/artifact/artifact/src/third_party/json -isystem /usr/include/eigen3 -isystem /home/runner/work/artifact/artifact/src/third_party/yaml-cpp/include -Wno-error -fpermissive -fPIC -fopenmp -Wno-error -fpermissive -fPIC -O3 -Wall -Werror=return-type -std=gnu++2a -fPIC -MD -MT src/utility/notification/CMakeFiles/notification.dir/NotificationUtility.cpp.o -MF src/utility/notification/CMakeFiles/notification.dir/NotificationUtility.cpp.o.d -o src/utility/notification/CMakeFiles/notification.dir/NotificationUtility.cpp.o -c /home/runner/work/artifact/artifact/src/utility/notification/NotificationUtility.cpp In file included from /usr/include/c++/10/memory:83, from /home/runner/work/artifact/artifact/src/utility/notification/NotificationUtility.h:21, from /home/runner/work/artifact/artifact/src/utility/notification/NotificationUtility.cpp:17: /usr/include/c++/10/bits/unique_ptr.h: In instantiation of ‘void std::default_delete<_Tp>::operator()(_Tp*) const [with _Tp = ieda::NotificationUtility]’: /usr/include/c++/10/bits/unique_ptr.h:361:17: required from ‘std::unique_ptr<_Tp, _Dp>::~unique_ptr() [with _Tp = ieda::NotificationUtility; _Dp = std::default_delete<ieda::NotificationUtility>]’ /home/runner/work/artifact/artifact/src/utility/notification/NotificationUtility.cpp:33:71: required from here /usr/include/c++/10/bits/unique_ptr.h:85:2: error: ‘ieda::NotificationUtility::~NotificationUtility()’ is private within this context 85 | delete __ptr; | ^~~~~~~~~~~~ /home/runner/work/artifact/artifact/src/utility/notification/NotificationUtility.cpp:59:1: note: declared private here 59 | NotificationUtility::~NotificationUtility() { | ^~~~~~~~~~~~~~~~~~~ ``` > 原 PR 见:[OSCC-Project/iEDA#19](https://github.com/OSCC-Project/iEDA/pull/19)
此 Pull Request 需要通过一些审核项
类型
指派人员
状态
审查
陶思敏
Xingquan-Li
Hao
Emin
已审查通过
已完成
(1/1人)
测试
Hao
Emin
已测试通过
已完成
(1/1人)
怎样手动合并此 Pull Request
git checkout master
git pull https://gitee.com/oscc-project/iEDA.git master
git push origin master
评论
2
提交
1
文件
1
检查
代码问题
0
批量操作
展开设置
折叠设置
审查
Code Owner
审查人员
immelon
imelon
Hao
harrywh
Xingquan-Li
xingquan-li
puckbee
puckbee
陶思敏
simintao
Emin
Emin017
未设置
最少人数
1
测试
immelon
imelon
Hao
harrywh
Xingquan-Li
xingquan-li
puckbee
puckbee
陶思敏
simintao
Emin
Emin017
未设置
最少人数
1
优先级
不指定
严重
主要
次要
不重要
标签
标签管理
bug
v0.1.x
关联 Issue
ICJNE3
`NotificationUtility` 类编译错误
Pull Request 合并后将关闭上述关联 Issue
里程碑
未关联里程碑
0.1.1
0.2.0
参与者
(2)
C++
1
https://gitee.com/oscc-project/iEDA.git
git@gitee.com:oscc-project/iEDA.git
oscc-project
iEDA
iEDA
点此查找更多帮助
搜索帮助
Git 命令在线学习
如何在 Gitee 导入 GitHub 仓库
Git 仓库基础操作
企业版和社区版功能对比
SSH 公钥设置
如何处理代码冲突
仓库体积过大,如何减小?
如何找回被删除的仓库数据
Gitee 产品配额说明
GitHub仓库快速导入Gitee及同步更新
什么是 Release(发行版)
将 PHP 项目自动发布到 packagist.org
评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册