forked from mirrors/gecko-dev
Differential Revision: https://phabricator.services.mozilla.com/D3980 --HG-- rename : tools/clang-tidy/test/misc-bool-pointer-implicit-conversion.cpp => tools/clang-tidy/test/bugprone-bool-pointer-implicit-conversion.cpp rename : tools/clang-tidy/test/misc-forward-declaration-namespace.cpp => tools/clang-tidy/test/bugprone-forward-declaration-namespace.cpp rename : tools/clang-tidy/test/misc-macro-repeated-side-effects.cpp => tools/clang-tidy/test/bugprone-macro-repeated-side-effects.cpp rename : tools/clang-tidy/test/misc-string-constructor.cpp => tools/clang-tidy/test/bugprone-string-constructor.cpp rename : tools/clang-tidy/test/misc-string-integer-assignment.cpp => tools/clang-tidy/test/bugprone-string-integer-assignment.cpp rename : tools/clang-tidy/test/misc-suspicious-missing-comma.cpp => tools/clang-tidy/test/bugprone-suspicious-missing-comma.cpp rename : tools/clang-tidy/test/misc-swapped-arguments.cpp => tools/clang-tidy/test/bugprone-swapped-arguments.cpp rename : tools/clang-tidy/test/misc-unused-raii.cpp => tools/clang-tidy/test/bugprone-unused-raii.cpp extra : moz-landing-system : lando
25 lines
500 B
C++
25 lines
500 B
C++
// https://clang.llvm.org/extra/clang-tidy/checks/bugprone-unused-raii.html
|
|
|
|
struct scoped_lock
|
|
{
|
|
scoped_lock() {}
|
|
~scoped_lock() {}
|
|
};
|
|
|
|
#define SCOPED_LOCK_MACRO(m) scoped_lock()
|
|
|
|
struct trivial_scoped_lock
|
|
{
|
|
trivial_scoped_lock() {}
|
|
};
|
|
|
|
scoped_lock test()
|
|
{
|
|
scoped_lock(); // misc-unused-raii warning!
|
|
|
|
SCOPED_LOCK_MACRO(); // no warning for macros
|
|
|
|
trivial_scoped_lock(); // no warning for trivial objects without destructors
|
|
|
|
return scoped_lock(); // no warning for return values
|
|
}
|