166 Commits (e36463959c937e08f2ce373137cff6ce92694b31)

Author SHA1 Message Date
Daiva Naudziuniene eb4684f6d5 [pulse] Less precise model for constructing optional from value
4 years ago
Daiva Naudziuniene a4241eeb43 [pulse] Refactor Optional models
4 years ago
Daiva Naudziuniene 3d74f39102 [pulse] Improve trace for Optional Empty Access
4 years ago
Daiva Naudziuniene b17861b1c8 [pulse] More precise model for constructing folly::Optional<Value> from Value
4 years ago
Daiva Naudziuniene 059c0f24a2 [pulse] Model Optional value_or
4 years ago
Jules Villard 7fdb33b710 [pulse] report errors only when the PRUNE nodes along the path are true
4 years ago
Daiva Naudziuniene 22d317c940 [pulse] Move pulse model flags to .inferconfig for pulse tests
4 years ago
Daiva Naudziuniene 91a33f6edc [frontend] Captured struct variables in cpp lambdas
4 years ago
Daiva Naudziuniene 857daf63c9 [frontend] Capture reference variables
4 years ago
Daiva Naudziuniene 42abe5b277 [frontend] Fix type of captured vars in lambda's body
4 years ago
Daiva Naudziuniene d0cb245303 [frontend] Fix capture init for cpp lambdas
4 years ago
Jules Villard 03bc3f31c8 [pulse] add option to skip functions/classes
4 years ago
Daiva Naudziuniene 4401701578 [pulse] Model for std::function copy constructor
4 years ago
Daiva Naudziuniene 0a4af7754d [pulse] Fix std::function::operator()
4 years ago
Daiva Naudziuniene 29fd9e13d1 [pulse] Understand captured variables in cpp lambdas
4 years ago
Jules Villard 5278cb7374 [pulse] `delete nullptr` is a no-op
4 years ago
Daiva Naudziuniene 69e0dce0ed [pulse] fix end() iterator false positive
4 years ago
Jules Villard 97fcc3b0ad [pulse] apply equality relation to terms to be added to the equality relation
4 years ago
Jules Villard 5a39c158c5 [pulse] arithmetic domain: take 4!
4 years ago
Daiva Naudziuniene 221d0b62ab [pulse] Model builtin __new as returning non-null
4 years ago
Jules Villard 9690dba871 [pulse] a slow example for pudge
4 years ago
Jules Villard ae57f217d2 [pulse] don't always mistake equality for aliasing
4 years ago
Daiva Naudziuniene 35011757dc [pulse] Add a flag to pass functions that we want to model as returning non-null
4 years ago
Daiva Naudziuniene 0ab3689f1f [infer] NULLPTR_DEREFERENCE false positive caused by thread_local variable
4 years ago
Daiva Naudziuniene 2c48e61031 [pulse] A new issue type OPTIONAL_EMPTY_ACCESS for trying to access folly::Optional when it is folly::none
4 years ago
Daiva Naudziuniene 412d2777eb [pulse] Add a flag to pass functions that we want to model as abort
5 years ago
Daiva Naudziuniene 98092481d4 [pulse] Special case for std::function:operator=( nullptr )
5 years ago
Daiva Naudziuniene ca2ec281c7 [pulse] Model for iterator operator--
5 years ago
Daiva Naudziuniene eaf95951f5 [pulse] Modeling std::vector::end()
5 years ago
Jules Villard 385b6fa914 [pulse] revamp arithmetic, put everything in the path condition
5 years ago
Jules Villard 2d8debc562 [pulse] invalidate vector backing array correctly
5 years ago
Jules Villard b1e35a728d [biabd] rename test directories from {biabduction,errors,infer} to {biabduction}
5 years ago
Daiva Naudziuniene 247ecb813d [pulse] Fix traces for iterator invalidation errors
5 years ago
Ezgi Çiçek 269cdb80d9 [pulse] Model `StdVector` allocator
5 years ago
Jules Villard 3332dc1a42 [AI] improve disjunctive domain
5 years ago
Jules Villard 3220804ddb [pulse] add a cache of constants to equate them
5 years ago
Daiva Naudziuniene dae7f36339 [pulse] Vector iterator model
5 years ago
Jules Villard 7a888170e7 [pudge] it's alive!
5 years ago
Ezgi Çiçek e1093159b0 [pulse] Distinguish error state at top level
5 years ago
Dulma Churchill b29d1a2f5f [pulse] Adding new value history for allocations
5 years ago
Ezgi Çiçek 6105a6ab42 [pulse] Add tests for constant abstract locations
5 years ago
Ezgi Çiçek 5a2b285fff [pulse] Distinguish exit state at top level
5 years ago
Jules Villard 3bf771bff4 [pulse] add model for std::vector<>::at()
5 years ago
Ezgi Çiçek 6f64131ae6 [pulse] Do not havoc arguments of unknown functions that are pointers to const
5 years ago
Jules Villard 49fb5b7c85 [pulse] do arithmetic on pointers too
5 years ago
Jules Villard e06a43a677 [pulsebo] use inferbo more in summaries
5 years ago
Jules Villard a42e15147b [pulse] fix test for by-ref automatic initialisation
5 years ago
Jules Villard eb52b28f91 [pulsebo] use inferbo in prunes
5 years ago
Jules Villard df49f318f6 [pulse] havoc formals passed by reference to unknown procedures
5 years ago
Jules Villard 32f60f3d3c [pulse] model the fact `free(0)` is a no-op
5 years ago