-
Notifications
You must be signed in to change notification settings - Fork 84
Semantic Search #112
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Semantic Search #112
Conversation
|
Thanks for the PR! |
|
Before we can merge this, we need to decide what to do with: https://github.com/faddeenkov/syntactical_analyzer (after some more cleanup of that which I'm currently doing). I see three ways to do this:
I'd favor either 1 or 2, I think there is no real reason to have this as a submodule going forward. |
|
https://github.com/faddeenkov/syntactical_analyzer does not exist. You mean https://github.com/faddeenkov/cil_fork? |
|
I'm guessing https://github.com/faddeenkov/syntactical_analyzer is a private repo, which is why it appears to us as non-existent. If that's the case, then it's hard to decide what to do with it without knowing what's there. |
|
@sim642 is right, it is a private repository. I also can't change the visibility of my fork, so I'll have to ask my student to publish it. I invited both of you to my fork for now. The question is whether to
I don't think we need to change anything about the way we include CIL. |
|
https://github.com/faddeenkov/syntactical_analyzer should be public now. |
|
No strong opinion. Doesn't look like it's a lot. Probably depends on whether we want it as a separate binary or if it can be sensibly integrated into the goblint CLI. |
|
I merged Olga's syntactic search into CIL as a new feature for now: https://github.com/goblint/cil/tree/feature/syntactic_search @superbr4in can you adapt this PR to pin goblint-cil to that branch and remove the submodule and see if it works and what changes are required? Once that works, we can merge https://github.com/goblint/cil/tree/feature/syntactic_search into the |
|
It looks like the How could this be resolved? |
|
Could pull it out into a separate library. But it's maybe better to use yojson which we have as a dependency anyway for ppx_deriving_yojson. |
|
Alternatively, a solution would be renaming the module in the CIL submodule to something like QueryParser. JsonParser is a bit generic for what it actually does (define the needed types and call the functions generated by https://github.com/goblint/cil/blob/feature/syntactic_search/src/ext/syntaticsearch/jsonParser.ml |
|
Alright, it works now. The |
|
I think as soon as this is made compatible with |
This feature introduces a search provider for semantic code properties, based on Goblint's analysis results. For this purpose, a new transformation named
expevaluses the built-in query system to evaluate specified arithmetic expressions (without actually transforming source code).My corresponding bachelor thesis: Extending a Syntactic Search in C Source Code with Analysis Results from the Static Analyzer Goblint