Documentation is made more exact, term "constraint" is removed entirely,
description of checker option is corrected.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
clang/docs/analyzer/checkers.rst | ||
---|---|---|
2495–2496 | This makes sense to me, and likely all of us knowledgable about symbolic execution (and clang in particular), but make little sense to end users. Could you add an example to ease reading? "For instance, if the argument to <fn> must be in between 0 and 255. If the value of the argument is unknown, the analyzer will assume that it is in this interval, even if warnings for this checker are disabled. Similarly, if a function mustn't be called with a null pointer but it is, analysis will stop on that execution path (similarly to a division by zero), with or without a warning." | |
2495–2496 | Restriction is not a bad word, but lets ease into it a bit. "You can think of this checker as defining restrictions (pre- and postconditions) on standard library functions. Preconditions are checked, and when they are violated, a warning is emitted. Post conditions are added to the analysis, e.g. that the return value must be no greater than 255." | |
2496–2529 | We should create an option or something the actual list of functions we model. This is the prime example of unsustainable documenting. | |
2513 | Isn't this something that we either do or do not enable by default? My memory betrays me. |
clang/docs/analyzer/checkers.rst | ||
---|---|---|
2496–2529 | Such function lists are used at documentation of other checkers, but I am not sure if it is good to add such a long list here. Probably the "DisplayLoadedSummaries" option of apiModeling.StdCLibraryFunctions checker can be used, this lists only the actually found functions (that have available declaration and are enabled), and the console output needs to be observed to see the list. And this option is currently not documented. | |
2513 | Currently ModelPOSIX is false by default. |
clang/docs/analyzer/checkers.rst | ||
---|---|---|
2496–2529 | At first look not all other checkers check every possible function, only the most common ones, it looks possible to extend these. Some have an incomplete list in the documentation. My concern was if an user want to know if a specific function is checked or not. |