Skip to content
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

Fix issue 9935: FP: knownConditionTrueFalse value flow doesn't account for virtual functions #2839

Merged
merged 1 commit into from
Oct 9, 2020

Conversation

pfultz2
Copy link
Contributor

@pfultz2 pfultz2 commented Oct 5, 2020

No description provided.

@amai2012
Copy link
Collaborator

amai2012 commented Oct 5, 2020

What it be useful to keep the current message but make it inconclusive?

@pfultz2
Copy link
Contributor Author

pfultz2 commented Oct 6, 2020

What it be useful to keep the current message but make it inconclusive?

Yea we can do that.

@amai2012 amai2012 requested a review from danmar October 6, 2020 07:18
@amai2012
Copy link
Collaborator

amai2012 commented Oct 6, 2020

@danmar Would you prefer the message to be removed or made inconclusive?

@danmar
Copy link
Owner

danmar commented Oct 6, 2020

I do not have a strong opinion about inconclusive. Traditionally I have not made that decision. If anybody wants to experiment with that feel free; it would be interesting to know what the noise level is according to daca@home. If the noise level is close to 100% then it's not okay. I am not sure what noise level is acceptable I imagine something like 50%.. do you have some opinions about what noise level we could accept for inconclusive warnings?

@amai2012
Copy link
Collaborator

amai2012 commented Oct 6, 2020

It depends...
In case the message is about a severe issue I'd be willing to accept even a higher noise ratio >50%.
For a style issue or potential bug ("it might be wrong...") I would like to ignore messages with 50% false positive rate.

But can we disable a message only if it's inconclusive!? I think there is only a global switch to enable inconclusive messages at all.

@danmar
Copy link
Owner

danmar commented Oct 6, 2020

But can we disable a message only if it's inconclusive!?

Not yet.. unless it will get a separate id. It would be pretty interesting with a separate id to be able to evaluate how well it works in daca@home. I suggest knownConditionTrueFalseVirtualCall or something like that.

@danmar
Copy link
Owner

danmar commented Oct 6, 2020

In case the message is about a sever issue I'd be willing to accept even a higher noise ratio >50%.
For a style issue or potential bug ("it might be wrong...") I would like to ignore messages with 50% false positive rate.

Feel free to open a PR to tweak our philosophy.md document. I don't have a strong opinion, whatever the team and users like is fine for me..

@danmar
Copy link
Owner

danmar commented Oct 9, 2020

@pfultz2 I think this is fine to merge as is.. do you want that I merge it now or do you want to make the message inconclusive first? (no hurry)

@pfultz2
Copy link
Contributor Author

pfultz2 commented Oct 9, 2020

I think this is fine to merge as is.. do you want that I merge it now or do you want to make the message inconclusive first? (no hurry)

I think it can be merged in. It will take more refactoring to change it to inconclusive. However, this will just change valueflow to inconclusive. There wont be an inconclusive message in this case because we dont know if an inconclusive value is known or possible.

@danmar danmar merged commit 047c3ed into danmar:main Oct 9, 2020
@pfultz2 pfultz2 deleted the fp-container-size-changed-virtual branch October 14, 2020 03:25
amai2012 added a commit that referenced this pull request Jan 18, 2021
Inspired by #2839 inconclusive messages are added to this document.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants