-
Notifications
You must be signed in to change notification settings - Fork 62
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
Improvements to function and record inference #1586
Conversation
6319ab6
to
5391395
Compare
9ee49ac
to
abee755
Compare
2abc11d
to
fed387d
Compare
abee755
to
b101506
Compare
31dcfad
to
7f79c38
Compare
7f79c38
to
9199f61
Compare
b101506
to
25e6dc9
Compare
9199f61
to
ed0aec5
Compare
bb4e009
to
196265d
Compare
9b2ec8b
to
0693ce2
Compare
40f1e1a
to
19744c3
Compare
ec377d6
to
94e7940
Compare
94e7940
to
25f505f
Compare
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/InferenceConfiguration.kt
Show resolved
Hide resolved
2ff4961
to
0e7fcb6
Compare
8573e0c
to
2035f0e
Compare
5a2b3e8
to
2b7147c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the inference rules require some more discussion and a proper documentation to understand later why we did some things and took some assumptions...
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/Inference.kt
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/Inference.kt
Outdated
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/Inference.kt
Outdated
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/InferenceConfiguration.kt
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/PassHelper.kt
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/PassHelper.kt
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/PassHelper.kt
Outdated
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/PassHelper.kt
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm a bit undecided with this PR. I'm approving it, because it overall seems to be doing the job when looking at the tests. I like the positive examples demonstrated in the test cases. However, I'm not 100% sure on all the mechanics involved here. Maybe a short (in house) introduction to the inference logic would be beneficial...
I don't like all the tests being implemented for the CXX language. This inference logic is used for all languages, isn't it? I understand that there are plans of getting rid of the fluent dsl stuff for fronted-independent tests, but having everything only tested with CXX is a big negative point in my view.
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/PassHelper.kt
Outdated
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/Inference.kt
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/Inference.kt
Outdated
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/Inference.kt
Outdated
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/Inference.kt
Outdated
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/Inference.kt
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/PassHelper.kt
Show resolved
Hide resolved
cpg-language-cxx/src/test/kotlin/de/fraunhofer/aisec/cpg/frontends/cxx/CXXInferenceTest.kt
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/Inference.kt
Show resolved
Hide resolved
cpg-core/src/main/kotlin/de/fraunhofer/aisec/cpg/passes/inference/Inference.kt
Outdated
Show resolved
Hide resolved
4d814d2
to
1e7ea0b
Compare
This PR achieves several things:
A::B::C