|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6 |
|
| #
6c4f9998 |
| 15-Jun-2022 |
Balazs Benics <[email protected]> |
[analyzer] Fix StreamErrorState hash bug
The `Profile` function was incorrectly implemented. The `StreamErrorState` has an implicit `bool` conversion operator, which will result in a different hash
[analyzer] Fix StreamErrorState hash bug
The `Profile` function was incorrectly implemented. The `StreamErrorState` has an implicit `bool` conversion operator, which will result in a different hash than faithfully hashing the raw value of the enum.
I don't have a test for it, since it seems difficult to find one. Even if we would have one, any change in the hashing algorithm would have a chance of breaking it, so I don't think it would justify the effort.
Depends on D127836, which uncovered this issue by marking the related `Profile` function dead.
Reviewed By: martong, balazske
Differential Revision: https://reviews.llvm.org/D127839
show more ...
|
|
Revision tags: llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3 |
|
| #
f3463982 |
| 26-Apr-2022 |
Marco Antognini <[email protected]> |
[Analyzer] Minor cleanups in StreamChecker
Remove unnecessary conversion to Optional<> and incorrect assumption that BindExpr can return a null state.
Reviewed By: steakhal
Differential Revision:
[Analyzer] Minor cleanups in StreamChecker
Remove unnecessary conversion to Optional<> and incorrect assumption that BindExpr can return a null state.
Reviewed By: steakhal
Differential Revision: https://reviews.llvm.org/D124681
show more ...
|
|
Revision tags: llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1 |
|
| #
98588841 |
| 09-Feb-2022 |
Vince Bridgers <[email protected]> |
[analyzer] Refactor makeNull to makeNullWithWidth (NFC)
Usages of makeNull need to be deprecated in favor of makeNullWithWidth for architectures where the pointer size should not be assumed. This ca
[analyzer] Refactor makeNull to makeNullWithWidth (NFC)
Usages of makeNull need to be deprecated in favor of makeNullWithWidth for architectures where the pointer size should not be assumed. This can occur when pointer sizes can be of different sizes, depending on address space for example. See https://reviews.llvm.org/D118050 as an example.
This was uncovered initially in a downstream compiler project, and tested through those systems tests.
steakhal performed systems testing across a large set of open source projects.
Co-authored-by: steakhal Resolves: https://github.com/llvm/llvm-project/issues/53664
Reviewed By: NoQ, steakhal
Differential Revision: https://reviews.llvm.org/D119601
show more ...
|
|
Revision tags: llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1 |
|
| #
0b9d3a6e |
| 15-Nov-2021 |
Balazs Benics <[email protected]> |
[analyzer][NFC] Separate CallDescription from CallEvent
`CallDescriptions` deserve its own translation unit. This patch simply moves the corresponding parts. Also includes the `CallDescription.h` wh
[analyzer][NFC] Separate CallDescription from CallEvent
`CallDescriptions` deserve its own translation unit. This patch simply moves the corresponding parts. Also includes the `CallDescription.h` where it's necessary.
Reviewed By: martong, xazax.hun, Szelethus
Differential Revision: https://reviews.llvm.org/D113587
show more ...
|
| #
d8e4170b |
| 23-Oct-2021 |
Kazu Hirata <[email protected]> |
Ensure newlines at the end of files (NFC)
|
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init |
|
| #
90cb5297 |
| 20-Jul-2021 |
Balázs Kéri <[email protected]> |
[clang][analyzer] Improve report of file read at EOF condition (alpha.unix.Stream checker).
The checker warns if a stream is read that is already in end-of-file (EOF) state. The commit adds indicati
[clang][analyzer] Improve report of file read at EOF condition (alpha.unix.Stream checker).
The checker warns if a stream is read that is already in end-of-file (EOF) state. The commit adds indication of the last location where the EOF flag is set on the stream.
Reviewed By: Szelethus
Differential Revision: https://reviews.llvm.org/D104925
show more ...
|
|
Revision tags: llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3 |
|
| #
d7227a5b |
| 22-Jun-2021 |
Balázs Kéri <[email protected]> |
[clang][Analyzer] Track null stream argument in alpha.unix.Stream .
The checker contains check for passing a NULL stream argument. This change should make more easy to identify where the passed poin
[clang][Analyzer] Track null stream argument in alpha.unix.Stream .
The checker contains check for passing a NULL stream argument. This change should make more easy to identify where the passed pointer becomes NULL.
Reviewed By: NoQ
Differential Revision: https://reviews.llvm.org/D104640
show more ...
|
|
Revision tags: llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2, llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1, llvmorg-11.0.1, llvmorg-11.0.1-rc2, llvmorg-11.0.1-rc1, llvmorg-11.0.0, llvmorg-11.0.0-rc6, llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3, llvmorg-11.0.0-rc2, llvmorg-11.0.0-rc1 |
|
| #
65fd6519 |
| 23-Jul-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Use BugType::SuppressOnSink at resource leak report.
Summary: Use the built-in functionality BugType::SuppressOnSink instead of a manual solution in StreamChecker.
Differe
[Analyzer][StreamChecker] Use BugType::SuppressOnSink at resource leak report.
Summary: Use the built-in functionality BugType::SuppressOnSink instead of a manual solution in StreamChecker.
Differential Revision: https://reviews.llvm.org/D83120
show more ...
|
| #
9b7c43d3 |
| 20-Jul-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Report every leak, clean up state.
Summary: Report resource leaks with non-fatal error. Report every resource leak. Stream state is cleaned up at `checkDeadSymbols`.
Revie
[Analyzer][StreamChecker] Report every leak, clean up state.
Summary: Report resource leaks with non-fatal error. Report every resource leak. Stream state is cleaned up at `checkDeadSymbols`.
Reviewers: Szelethus, baloghadamsoftware, NoQ
Reviewed By: Szelethus
Subscribers: rnkovacs, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, ASDenysPetrov, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D82845
show more ...
|
|
Revision tags: llvmorg-12-init, llvmorg-10.0.1, llvmorg-10.0.1-rc4, llvmorg-10.0.1-rc3 |
|
| #
d1df5602 |
| 29-Jun-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Use BugType instead of BuiltinBug (NFC) .
Summary: I do not like the BuiltinBug class. And it takes no SuppressOnSink parameter that may be needed in the future.
Reviewers
[Analyzer][StreamChecker] Use BugType instead of BuiltinBug (NFC) .
Summary: I do not like the BuiltinBug class. And it takes no SuppressOnSink parameter that may be needed in the future.
Reviewers: Szelethus, baloghadamsoftware, gamesh411
Reviewed By: Szelethus
Subscribers: rnkovacs, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, ASDenysPetrov, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D82741
show more ...
|
|
Revision tags: llvmorg-10.0.1-rc2 |
|
| #
e935a540 |
| 22-Jun-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Add note tags for file opening.
Summary: Bug reports of resource leak are now improved. If there are multiple resource leak paths for the same stream, only one wil be repor
[Analyzer][StreamChecker] Add note tags for file opening.
Summary: Bug reports of resource leak are now improved. If there are multiple resource leak paths for the same stream, only one wil be reported.
Reviewers: Szelethus, xazax.hun, baloghadamsoftware, NoQ
Reviewed By: Szelethus, NoQ
Subscribers: NoQ, rnkovacs, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, ASDenysPetrov, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D81407
show more ...
|
| #
efa8b6e8 |
| 15-Jun-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Add check for pointer escape.
Summary: After an escaped FILE* stream handle it is not possible to make reliable checks on it because any function call can have effect on it
[Analyzer][StreamChecker] Add check for pointer escape.
Summary: After an escaped FILE* stream handle it is not possible to make reliable checks on it because any function call can have effect on it.
Reviewers: Szelethus, baloghadamsoftware, martong, NoQ
Reviewed By: NoQ
Subscribers: NoQ, rnkovacs, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, ASDenysPetrov, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D80699
show more ...
|
| #
0bfd70bd |
| 04-Jun-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Updated initialization of BugType's.
Summary: BugType objects are initialized in-class instead of by lazy initialization. FuchsiaHandleChecker does this already.
Reviewers
[Analyzer][StreamChecker] Updated initialization of BugType's.
Summary: BugType objects are initialized in-class instead of by lazy initialization. FuchsiaHandleChecker does this already.
Reviewers: Szelethus, baloghadamsoftware, martong
Reviewed By: Szelethus
Subscribers: rnkovacs, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, ASDenysPetrov, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D80725
show more ...
|
| #
9081fa20 |
| 27-May-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Added check for "indeterminate file position".
Summary: According to the standard, after a `wread` or `fwrite` call the file position becomes "indeterminate". It is assumab
[Analyzer][StreamChecker] Added check for "indeterminate file position".
Summary: According to the standard, after a `wread` or `fwrite` call the file position becomes "indeterminate". It is assumable that a next read or write causes undefined behavior, so a (fatal error) warning is added for this case. The indeterminate position can be cleared by some operations, for example `fseek` or `freopen`, not with `clearerr`.
Reviewers: Szelethus, baloghadamsoftware, martong, NoQ, xazax.hun, dcoughlin
Reviewed By: Szelethus
Subscribers: rnkovacs, NoQ, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, ASDenysPetrov, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D80018
show more ...
|
| #
f7c9f77e |
| 20-May-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Added support for 'fread' and 'fwrite'.
Summary: Stream functions `fread` and `fwrite` are evaluated and preconditions checked. A new bug type is added for a (non fatal) wa
[Analyzer][StreamChecker] Added support for 'fread' and 'fwrite'.
Summary: Stream functions `fread` and `fwrite` are evaluated and preconditions checked. A new bug type is added for a (non fatal) warning if `fread` is called in EOF state.
Reviewers: Szelethus, NoQ, dcoughlin, baloghadamsoftware, martong, xazax.hun
Reviewed By: Szelethus
Subscribers: rnkovacs, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, ASDenysPetrov, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D80015
show more ...
|
|
Revision tags: llvmorg-10.0.1-rc1 |
|
| #
1907f28b |
| 18-May-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Fixed compile error - NFC.
|
| #
22d40cc3 |
| 18-May-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Changed representation of stream error state - NFC.
Summary: State of error flags for a stream is handled by having separate flags that allow combination of multiple error
[Analyzer][StreamChecker] Changed representation of stream error state - NFC.
Summary: State of error flags for a stream is handled by having separate flags that allow combination of multiple error states to be described with one error state object. After a failed function the error state is set in the stream state and must not be determined later based on the last failed function like before this change. The error state can not always be determined from the last failed function and it was not the best design.
Reviewers: Szelethus
Reviewed By: Szelethus
Subscribers: xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, ASDenysPetrov, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D80009
show more ...
|
| #
f2b5e60d |
| 14-Apr-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Added evaluation of fseek.
Summary: Function `fseek` is now evaluated with setting error return value and error flags.
Reviewers: Szelethus, NoQ, xazax.hun, rnkovacs, dcou
[Analyzer][StreamChecker] Added evaluation of fseek.
Summary: Function `fseek` is now evaluated with setting error return value and error flags.
Reviewers: Szelethus, NoQ, xazax.hun, rnkovacs, dcoughlin, baloghadamsoftware, martong
Reviewed By: Szelethus
Subscribers: ASDenysPetrov, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D75851
show more ...
|
| #
11bd3e5c |
| 08-Apr-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Introduction of stream error handling.
Summary: Store the error flags (EOF or error) of a stream. Support the functions feof, ferror, clearerr. Added a test checker for set
[Analyzer][StreamChecker] Introduction of stream error handling.
Summary: Store the error flags (EOF or error) of a stream. Support the functions feof, ferror, clearerr. Added a test checker for setting the error flags.
Reviewers: Szelethus, NoQ, Charusso, baloghadamsoftware, xazax.hun
Reviewed By: Szelethus
Subscribers: steakhal, ASDenysPetrov, rnkovacs, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D75682
show more ...
|
| #
bda3dd0d |
| 27-Mar-2020 |
Kirstóf Umann <[email protected]> |
[analyzer][NFC] Change LangOptions to CheckerManager in the shouldRegister* functions
Some checkers may not only depend on language options but also analyzer options. To make this possible this patc
[analyzer][NFC] Change LangOptions to CheckerManager in the shouldRegister* functions
Some checkers may not only depend on language options but also analyzer options. To make this possible this patch changes the parameter of the shouldRegister* function to CheckerManager to be able to query the analyzer options when deciding whether the checker should be registered.
Differential Revision: https://reviews.llvm.org/D75271
show more ...
|
|
Revision tags: llvmorg-10.0.0, llvmorg-10.0.0-rc6, llvmorg-10.0.0-rc5, llvmorg-10.0.0-rc4 |
|
| #
ce1a8625 |
| 09-Mar-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Check for opened stream before operations.
Summary: According to documentations, after an `fclose` call any other stream operations cause undefined behaviour, regardless if
[Analyzer][StreamChecker] Check for opened stream before operations.
Summary: According to documentations, after an `fclose` call any other stream operations cause undefined behaviour, regardless if the close failed or not. This change adds the check for the opened state before all other (applicable) operations.
Reviewers: Szelethus
Reviewed By: Szelethus
Subscribers: xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D75614
show more ...
|
| #
af473d0e |
| 06-Mar-2020 |
Balázs Kéri <[email protected]> |
[Analyzer][StreamChecker] Adding PreCall and refactoring (NFC).
Summary: Adding PreCall callback. Argument validity checks are moved into the PreCall callback. Code is restructured, functions rename
[Analyzer][StreamChecker] Adding PreCall and refactoring (NFC).
Summary: Adding PreCall callback. Argument validity checks are moved into the PreCall callback. Code is restructured, functions renamed. There are "pre" and "eval" functions for the file operations. And additional state check (validate) functions.
Reviewers: Szelethus
Reviewed By: Szelethus
Subscribers: xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D75612
show more ...
|
|
Revision tags: llvmorg-10.0.0-rc3 |
|
| #
b293a721 |
| 02-Mar-2020 |
Balázs Kéri <[email protected]> |
[analyzer][StreamChecker] Using function description objects - NFC.
Summary: Have a description object for the stream functions that can store different aspects of a single stream operation.
I plan
[analyzer][StreamChecker] Using function description objects - NFC.
Summary: Have a description object for the stream functions that can store different aspects of a single stream operation.
I plan to extend the structure with other members, for example pre-callback and index of the stream argument.
Reviewers: Szelethus, baloghadamsoftware, NoQ, martong, Charusso, xazax.hun
Reviewed By: Szelethus
Subscribers: rnkovacs, xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, gamesh411, Charusso, martong, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D75158
show more ...
|
|
Revision tags: llvmorg-10.0.0-rc2 |
|
| #
5b3983ba |
| 12-Feb-2020 |
Balázs Kéri <[email protected]> |
[analyzer]StreamChecker refactoring (NFC).
Reviewers: Szelethus
Reviewed By: Szelethus
Subscribers: xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, donat.nagy, Charusso, dkrupp,
[analyzer]StreamChecker refactoring (NFC).
Reviewers: Szelethus
Reviewed By: Szelethus
Subscribers: xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, donat.nagy, Charusso, dkrupp, Szelethus, gamesh411, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D73359
show more ...
|
| #
c4f0f8ec |
| 07-Feb-2020 |
Balázs Kéri <[email protected]> |
[analyzer] Small StreamChecker refactoring (NFC).
Reviewers: Szelethus
Reviewed By: Szelethus
Subscribers: xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, donat.nagy, Charusso,
[analyzer] Small StreamChecker refactoring (NFC).
Reviewers: Szelethus
Reviewed By: Szelethus
Subscribers: xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, donat.nagy, Charusso, dkrupp, Szelethus, gamesh411, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D73350
show more ...
|