How to get g++ to warn on unused member variables

前端 未结 3 1003
自闭症患者
自闭症患者 2021-02-12 23:29

g++ generates warnings for unused local variables. Is it possible to have g++ warn for unused class member variables and/or global variables?

class Obj {
 public         


        
相关标签:
3条回答
  • 2021-02-12 23:36

    I'm not aware of any such warning. Additionally I'll speculate that the reason it doesn't exist is because it can't be reliably generated in all cases, so they elected to not spend effort making it work for some subset of cases. For example, if the class friends another function that's in a library, the compiler would have no way of knowing if that library mutated any particular class attribute or not.

    0 讨论(0)
  • 2021-02-12 23:54

    You can use cppcheck (download). cppcheck --enable=style does exactly what you need, among other useful things.

    0 讨论(0)
  • 2021-02-12 23:56

    Clang's -Wunused-private-field enables the warning you're asking for. On your code base, it shows:

    $ clang -Wunused-private-field /tmp/nic.cpp  
    /tmp/nic.cpp:10:22: warning: private field 'num2' is not used [-Wunused-private-field]
                 int num2;
                     ^
    1 warning generated.
    
    0 讨论(0)
提交回复
热议问题