ARM C++编译器不能使用 volatile const 编译结构?

[复制链接]
2474|10
 楼主| carson84 发表于 2021-3-15 11:32 | 显示全部楼层 |阅读模式
keil5用C++编译,出现错误:

D:\Keil_v5\Arm\Packs\AutoChips\AC781x_DFP\1.1.0\ATC_Driver\Drivers\GPIO\ac78xx_gpio_reg.h(131): error:  #294: invalid union member -- class "struct <unnamed>::<unnamed>::<unnamed>" has a disallowed member function

原因找到:CMSIS: Why is __I different in C and C++

但是,ac78xx_gpio_reg.h 是只读文件(官方文件),不想改。
还有其它方法吗?

liu96jp 发表于 2023-5-17 10:42 | 显示全部楼层
你可以尝试一下改一下代码
g0d5xs 发表于 2023-5-17 11:45 | 显示全部楼层
提示你联合体之中有个被禁用的函数
q1ngt12 发表于 2023-5-17 12:51 | 显示全部楼层
函数和变量这块总爱有情况
suw12q 发表于 2023-5-17 14:08 | 显示全部楼层
找个调试工具检测一下
q1d0mnx 发表于 2023-5-17 15:17 | 显示全部楼层
不想修改文件可以用生成汇编代码,手动将函数定义添加到汇编代码中
cen9ce 发表于 2023-5-17 16:04 | 显示全部楼层
你的联合体函数有问题,着重去看看哪里就行了
b5z1giu 发表于 2023-5-18 07:05 | 显示全部楼层
你用的是官方demo没做修改就报错了?
p0gon9y 发表于 2023-5-18 08:14 | 显示全部楼层
是不是keil需要把C99之类的这些功能打开才行啊
ex7s4 发表于 2023-5-18 10:07 | 显示全部楼层
这个一般跑官方的demo不会出现这种问题啊
lix1yr 发表于 2023-5-18 12:59 | 显示全部楼层
你用的keilV5那个版本?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部