au-sm.lnt
资源名称:pclint.rar [点击查看]
上传用户:filter2008
上传日期:2010-03-12
资源大小:2959k
文件大小:7k
源码类别:
编辑器/阅读器
开发平台:
C/C++
- // au-sm.lnt -- Author options - Scott Meyers
- /*
- This options file can be used to explicitly activate those
- checks advocated in the publications:
- [12] Meyers, Scott, Effective C++, Addison-Wesley, Reading Mass., 1992
- [23] Meyers, Scott, More Effective C++, Addison-Wesley, 1996
- You can use this file directly when linting your programs as in:
- lin au-sm files
- Most of the Scott Myers checks are on by default. The
- Elective Notes (19??), however, are not and so this file
- is necessary to get the full impact of the Scott Myers
- two-volume set of recommendations.
- Also, this file explicitly activates those Warnings and
- Informationals advocated by Scott Myers just in case they were
- suppressed previously. For example,
- lin -w2 au-sm files
- has the effect of removing all Informational messages
- other than those reactivated in this file.
- If you do not want code to adhere to all of the Scott Myers'
- checks we recommend that, rather than editing this file, you
- include it within a file of your own. For example: let
- my-sm.lnt contain
- au-sm.lnt
- -e1932 // allow concrete base classes
- In this way you inherit the checks specified in this file
- except for the ones that you wish to specifically exclude.
- Then you can use my-sm.lnt in place of au-sm.lnt
- You might consider placing this file (au-sm.lnt) or your own
- derivation of it (as shown above) in your global options
- file.
- */
- +e424 // Inappropriate deallocation -- [12, Item 5]
- -append(424, -- Effective C++ #5 )
- +e605 // Increase in pointer capability -- [12, Item 29]
- -append(605, -- Effective C++ #29 )
- +e794 // Conceivable use of null pointer -- [12, Item 7]
- -append(794, -- Effective C++ #7 )
- +e802 // Conceivably passing a null pointer to function -- [12, Item 7]
- -append(802, -- Effective C++ #7 )
- +e1509 // base class destructor for class is not virtual -- [12, Item 14]
- -append(1509, -- Effective C++ #14 )
- +e1510 // base class has no destructor -- [12, Item 14]
- -append(1510, -- Effective C++ #14 )
- +e1511 // Member hides non-virtual member -- [12, Item 37]
- -append(1511, -- Effective C++ #37 )
- +e1529 // not first checking for assignment to this -- [12, Item 17]
- -append(1529, -- Effective C++ #17 )
- +e1534 // static variable found within inline function -- [23, Item 26]
- -append(1534, -- More Effective C++ #26 )
- +e1536 // Exposing low access member -- [12, Item 30]
- -append(1536, -- Effective C++ #30 )
- +e1537 // const function returns pointer data member -- [12, Item 29 ]
- -append(1537, -- Effective C++ #29 )
- +e1539 // member not assigned by assignment operator -- [12, Item 16]
- -append(1539, -- Effective C++ #16 )
- +e1540 // pointer member freed nor zero'ed by destructor -- [12, Item 6]
- -append(1540, -- Effective C++ #6 )
- +e1544 // value indeterminate (order of initialization) -- [12, Item 47]
- -append(1544, -- Effective C++ #47 )
- +e1546 // throw() called within destuctor -- [23, Item 11]
- -append(1546, -- Effective C++ #11 )
- +e1547 // Assignment of array to pointer to base -- [23, Item 3]
- -append(1547, -- More Effective C++ #3 )
- +e1549 // Exception thrown for function not declared to throw -- [23, Item 11]
- -append(1549, -- More Effective C++ #11 )
- +e1551 // function may throw an exception in destructor -- [23, Item 11]
- -append(1551, -- More Effective C++ #11 )
- +e1722 // assignment operator does not return a reference -- [12, Item 15]
- -append(1722, -- Effective C++ #15 )
- +e1729 // Initializer inversion detected for member -- [12, Item 13]
- -append(1729, -- Effective C++ #13 )
- +e1732 // new in constructor for class which has no assignment operator -- [12, Item 11]
- -append(1732, -- Effective C++ #11 )
- +e1733 // new in constructor for class which has no copy constructor -- [12, Item 11]
- -append(1733, -- Effective C++ #11 )
- +e1735 // Virtual function has default parameter -- [12, Item 38]
- -append(1735, -- Effective C++ #38 )
- +e1737 // 'Symbol' hides global operator new -- [12, Item 9]
- -append(1737, -- Effective C++ #9 )
- +e1739 // Binary operator should be non-member function -- [12, Item 19]
- -append(1739, -- Effective C++ #19 )
- +e1740 // pointer member not directly freed or zero'ed by destructor -- [12, Item 6]
- -append(1740, -- Effective C++ #6 )
- +e1745 // member not assigned by private assignment operator -- [12, Item 16]
- -append(1745, -- Effective C++ #16 )
- +e1746 // parameter of function could be made const ref -- [12, Item 22]
- -append(1746, -- Effective C++ #22 )
- +e1747 // binary operator returning a reference -- [12, Item 23]
- -append(1747, -- Effective C++ #23 )
- +e1749 // base class of class need not be virtual -- [23, Item 24]
- -append(1749, -- More Effective C++ #24 )
- +e1752 // catch parameter Integer is not a reference -- [23, Item 13]
- -append(1752, -- More Effective C++ #13 )
- +e1753 // Overloading special operator -- [23, Item 7]
- -append(1753, -- More Effective C++ #7 )
- +e1754 // Expected 'Symbol' to be declared for class 'Symbol' -- [23, Item 22]
- -append(1754, -- More Effective C++ #22 )
- +e1757 // Discarded instance of post decrement/increment -- [23, Item 6]
- -append(1757, -- More Effective C++ #6 )
- +e1758 // Prefix increment/decrement operator returns a non-reference. -- [23, Item 6]
- -append(1758, -- More Effective C++ #6 )
- +e1759 // Postfix increment/decrement operator returns a reference. -- [23, Item 6]
- -append(1759, -- More Effective C++ #6 )
- +e1904 // Old-style C comment -- [12, Item 4]
- -append(1904, -- Effective C++ #4 )
- +e1923 // macro could become const variable -- [12, Item 1]
- -append(1923, -- Effective C++ #1 )
- +e1924 // C-style cast -- [23, Item 2]
- -append(1924, -- More Effective C++ #2 )
- +e1925 // public data member -- [12, Item 20]
- -append(1925, -- Effective C++ #20 )
- +e1926 // 'Symbol's default constructor implicitly called -- [12, Item 12]
- -append(1926, -- Effective C++ #12 )
- +e1927 // 'Symbol' was not initialized in the constructor init list -- [12, Item 12]
- -append(1927, -- Effective C++ #12 )
- +e1928 // 'Symbol' did not appear in the ctor initializer list -- [12, Item 12]
- -append(1928, -- Effective C++ #12 )
- +e1929 // function returning a reference -- [12, Item 23]
- -append(1929, -- Effective C++ #23 )
- -esym( 1929, operator<<, operator>> ) // but these op's are OK
- +e1930 // Conversion operator found -- [23, Item 5]
- -append(1930, -- More Effective C++ #5 )
- +e1931 // Constructor can be used for implicit conversions -- [23, Item 5]
- -append(1931, -- More Effective C++ #5 )
- +e1932 // Base class is not abstract. -- [23, Item 33]
- -append(1932, -- More Effective C++ #33 )
- +e1934 // flags member functions operator<< and operator>>
- -append(1934, -- Effective C++ #19 )