zoukankan      html  css  js  c++  java
  • 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 本體,並想檢查是否有錯誤時,可以使用

  • 相关阅读:
    Flask_之使用过程中出现的异常
    GO-学习之golang 自动下载所有依赖包
    数据库-Oracle如何将clob数据以字符串打印出来
    数据库-Oracle条件判断语句
    python框架Django汇总
    每日一模块_os及subprocess模块【执行系统命令】
    每日一模块-sftp的使用
    python并发编程-队列MQ的学习
    python高效配置-响应code枚举类设计
    git-使用大全
  • 原文地址:https://www.cnblogs.com/youchihwang/p/8986370.html
Copyright © 2011-2022 走看看