unused function warning message

這篇的對象是 static function,
static function 若沒有其它 function 去存取的話,
在 compile 時,會發生 unused error,
可以在 function 前加上 attribute((unused)) 避免出現 unused error,
但如果 function 本體實作有 error 時,仍會被檢查出來。

Case 1

function 沒有被存取

 1335 static irqreturn_t xxx_handler(int irq, void *data)                                                                       
 1336 {
 1337         struct smbchg_chip *chip = (struct smbchg_chip *)data;
  .....
  .....
.....
.....
android/kernel/msm-3.18/drivers/power/qpnp-smbcharger.c:1335:20: warning: 'xxx_handler' defined but not used [-Wunused-function]
error, forbidden warning: qpnp-smbcharger.c:1335
make[3]: *** [drivers/power/qpnp-smbcharger.o] Error 1
make[2]: *** [drivers/power] Error 2
make[1]: *** [drivers] Error 2
make[1]: *** Waiting for unfinished jobs....
.....
.....
.....

Case 2

function 沒有被存取 且 加上 attribute((unused))

 1335 __attribute__((unused)) static irqreturn_t xxx_handler(int irq, void *data)                                                                       
 1336 {
 1337         struct smbchg_chip *chip = (struct smbchg_chip *)data;
  .....
  .....
  .....
compile success

Case 3

function 沒有被存取 且 加上 attribute((unused)) 且 function 本體有 error

 1335 static _attribute__((unused)) irqreturn_t xxx_handler(int irq, void *data)
 1336 {
 1337         asfadsf
 1338         struct smbchg_chip *chip = (struct smbchg_chip *)data;  .....
  .....
  .....
.....
.....
android/kernel/msm-3.18/drivers/power/qpnp-smbcharger.c:1337:9: error: 'asfadsf' undeclared (first use in this function)
         asfadsf
         ^
.....
.....

應用時機

當 coder 尚在 實作 function 本體,並想檢查是否有錯誤時,可以使用

posted @   wangchangruei  阅读(4727)  评论(0编辑  收藏  举报
编辑推荐:
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· .NET 适配 HarmonyOS 进展
阅读排行:
· 用 DeepSeek 给对象做个网站,她一定感动坏了
· DeepSeek+PageAssist实现本地大模型联网
· 手把手教你更优雅的享受 DeepSeek
· Java轻量级代码工程
· 从 14 秒到 1 秒:MySQL DDL 性能优化实战
点击右上角即可分享
微信分享提示