GaloisInc / cclyzerpp

cclyzer++ is a precise and scalable pointer analysis for LLVM code.
https://galoisinc.github.io/cclyzerpp/
BSD 3-Clause "New" or "Revised" License
137 stars 14 forks source link

FactGenerator: Warn on unhandled features #123

Closed langston-barrett closed 2 years ago

langston-barrett commented 2 years ago

The FactGenerator currently warns when it hits an unknown instruction:

https://github.com/GaloisInc/cclyzerpp/blob/dcb87061e8bf05b019beb8126fc86645ddfc299d/FactGenerator/src/InstructionVisitor.cpp#L649

It should do the same for all kinds of unhandled features, e.g., types:

https://github.com/GaloisInc/cclyzerpp/blob/dcb87061e8bf05b019beb8126fc86645ddfc299d/FactGenerator/src/TypeVisitor.cpp#L82-L92

Ideally, these warnings would be prefixed by [warn] so that the user knows they're not fatal, and there would be an option to make them fatal (e.g., for use in the test-suite or for use-cases that need higher assurance).