NOV
15
2015
|
New C++/Qt code checks in clazy static analyzerAbout two months ago I blogged about clazy, a Qt oriented static analyser. Since then it has moved to an official KDE repo http://anongit.kde.org/clazy, got an IRC channel (#kde-clazy @ freenode) and also many fun new checks. Here's a quick dump of the new features (be sure to see the README for the old checks too): **** Performance related checks **** qstring-arg: (saves allocations) qstring-ref: (saves allocations, fixit included) qdatetime-utc: (saves allocations) qgetenv (saves allocations): range-loop: foreach: old-style-connect: qDeleteAll: **** Crash related checks **** temporary-iterator: auto-unexpected-qstringbuilder: **** Misc related checks **** writing-to-temporary: implicit-casts: Also, old-style-connect and qstring-ref checks got fixits, so you can fix your code just by recompiling it with clazy. Big thanks to everyone who contributed ideas and even code! Please report bugs at b.k.o, happy hacking! |
![]() |
Comments
error
i get this error message when i run clazy:
/usr/lib/llvm-3.7/bin/clang: symbol lookup error: /usr/lib/x86_64-linux-gnu/ClangLazy.so: undefined symbol: _ZNK5clang15DeclarationName11getAsStringEv
note that i used clang for CC and clazy for CXX
That's due to mixing old ABI
That's due to mixing old ABI and new C++11 ABI.
Your llvm was probably built with new ABI, but you compiled the plugin with old ABI.
Did you compile the plugin with clang ? clang doesn't support the new ABI yet ( https://llvm.org/bugs/show_bug.cgi?id=23529), try building it with gcc or try a distro that hasn't moved to the new ABI.
clazy buit with clang
"Did you compile the plugin with clang?"
yes, that seemed logical to me ;)