硬汉嵌入式论坛

 找回密码
 立即注册
查看: 4525|回复: 5
收起左侧

[开发工具] AC5改AC6后_CC_ARM就没有定义了?

[复制链接]

27

主题

95

回帖

181

积分

初级会员

积分
181
发表于 2020-3-4 11:31:01 | 显示全部楼层 |阅读模式
22.png



用AC5时,__CC_ARM是默认定义的,改为AC6后,就没有定义了,但如果在C/C++选项中加入__CC_ARM项,就会出很多的错误,这个咋整啊??
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107049
QQ
发表于 2020-3-4 12:33:19 | 显示全部楼层
照葫芦画瓢,应该是 __CLANG_ARM
回复

使用道具 举报

27

主题

95

回帖

181

积分

初级会员

积分
181
 楼主| 发表于 2020-3-4 13:32:01 | 显示全部楼层
eric2013 发表于 2020-3-4 12:33
照葫芦画瓢,应该是 __CLANG_ARM

多谢硬汉。找到了

宏__CC_ARM 是MDK自带的, 在AC5中是__CC_ARM ,AC6中是__clang__。如下
AC5:
#if   defined ( __ICCARM__ )
#elif defined ( __CC_ARM )
#endif

AC6 :
#if   defined ( __ICCARM__ )
  #pragma system_include         /* treat file as system include file for MISRA check */
#elif defined (__clang__)
  #pragma clang system_header   /* treat file as system include file */
#endif
回复

使用道具 举报

610

主题

3062

回帖

4912

积分

至尊会员

积分
4912
发表于 2020-6-22 14:51:56 | 显示全部楼层
chinacool 发表于 2020-3-4 13:32
多谢硬汉。找到了

宏__CC_ARM 是MDK自带的, 在AC5中是__CC_ARM ,AC6中是__clang__。如下

ac6 中你也可以试一下


#elif defined ( __GNUC__ )

#endif
回复

使用道具 举报

0

主题

68

回帖

68

积分

初级会员

积分
68
发表于 2021-8-23 11:36:41 | 显示全部楼层
#if defined(__GNUC__) || defined(__clang__)
有区别吗?  有 的时候 是或的关系 , 是不是用哪个都行?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107049
QQ
发表于 2021-8-23 13:22:26 | 显示全部楼层
wander 发表于 2021-8-23 11:36
#if defined(__GNUC__) || defined(__clang__)
有区别吗?  有 的时候 是或的关系 , 是不是用哪个都行?

有些定义没区别。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-16 07:39 , Processed in 0.169991 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表