Is there a CIL Static Analysis Library like ASM for Java Bytecode? [closed]
Asked Answered
C

3

6

I am looking for a library for doing custom static code analysis on CIL code. READ: I have no interest in a tool that already does static analysis like those shown here.

For custom analysis with Java Bytecodes, I have used ASM and I like the features it offers and the good documentation. A quick google search for "CIL static analysis library" doesn't yield anything that seems to provide the features of ASM.

Cucumber answered 27/11, 2012 at 20:16 Comment(0)
S
7

Mono.Cecil is the best library for CIL analysis available. It is free, open-source, complete, lightweight, robust and fast. In addition to reading CIL, it can also write CIL. It also supports PDB files.

Many static analysis tools rely on Cecil for years.

Selfgovernment answered 28/11, 2012 at 9:7 Comment(2)
Thanks I will look more into this Cecil.Cucumber
Cool, you won't find anything better anyway. I am the lead developer of the static analyzer NDepend that relies on Cecil for 5 years, and I can say that the author of Cecil (Jb Evain from SyntaxTree syntaxtree.com) did a great job an provides an awesome support!Selfgovernment
B
0

Have a look at Reflector: www.reflector.net/

Barros answered 27/11, 2012 at 20:17 Comment(1)
This looks more like a tool that internally uses static analysis and not a library for enabling static analysis like ASM.Cucumber
P
0

Closest thing I've found is Microsoft's FxCop utility. (Standalone download link here, 1.36 seems to have disappeared, but someone re-uploaded it to their Dropbox on another SO question)

It's certainly nothing close to C/C++ static analysis tools, but then again, C# is a managed language where a lot of the common mistakes that static analysis tools check aren't possible.

Also, there's a short list on Wikipedia of static analysis tools for .NET, might be worth a peek.

Partnership answered 28/11, 2012 at 7:8 Comment(1)
I am looking for a library that best enables me as a programmer to write custom static analysis for CIL, this seems to be a tool that uses static analysis to find bugs, etc.Cucumber

© 2022 - 2024 — McMap. All rights reserved.