288 Commits (b3c74c4152357dda224a4e5c110aaf953d8ba3fa)

Author SHA1 Message Date
Josh Berdine 7e77bad4d2 [sledge] Change: Implement Fol using a solver-independent intermediate type
5 years ago
Josh Berdine eca73cf39b [sledge] Build: Move sledge equality solver to separate lib
5 years ago
Daiva Naudziuniene 35011757dc [pulse] Add a flag to pass functions that we want to model as returning non-null
5 years ago
Jules Villard a89d3db364 [pulse] change recency maps to be backed by lists
5 years ago
Daiva Naudziuniene 0ab3689f1f [infer] NULLPTR_DEREFERENCE false positive caused by thread_local variable
5 years ago
Dulma Churchill 85ee958bf9 [pulse] Add model for NSObject.init
5 years ago
Daiva Naudziuniene 2c48e61031 [pulse] A new issue type OPTIONAL_EMPTY_ACCESS for trying to access folly::Optional when it is folly::none
5 years ago
Dulma Churchill 2d4b3c9acd [builtins] Change the name of __free_cf to the more appropriate _objc_bridge_transfer and delete the biabduction implementation
5 years ago
Daiva Naudziuniene 412d2777eb [pulse] Add a flag to pass functions that we want to model as abort
5 years ago
Ezgi Çiçek c23e0044fc [infer] Remove ppx_compare workaround for nonrec types (2)
5 years ago
Josh Berdine 9c8f2e4a5c [sledge] Build: Move Timer to Nonstdlib
5 years ago
Jules Villard 8a1c10f8a1 remove dynamic severity: Reporting.log_{error,warning} -> log_issue
5 years ago
Dulma Churchill aa6fe7963c [pulse] Add dealloc calls for ObjC objects that are about to become unreachable
5 years ago
Dulma Churchill f638e741ae [pulse] Add DynamicType attribute and use it in the model of ObjC alloc
5 years ago
Ezgi Çiçek 964388f56c [pulse] Brush up Collection/List add and remove models
5 years ago
Daiva Naudziuniene 98092481d4 [pulse] Special case for std::function:operator=( nullptr )
5 years ago
Jules Villard eab7e9aeb7 minor readability improvement in IssueType.ml
5 years ago
Sungkeun Cho 719b72cb4f [pulse] Avoid partitioning abstract values
5 years ago
Jules Villard 4e28980c8e [errlog] reporting asserts checker matches issue-type
5 years ago
Josh Berdine 61566caddf [ocamlformat] Set break-sequences = true
5 years ago
Josh Berdine 65f369cf35 [ocamlformat] Reformat repo with new version
5 years ago
Dulma Churchill ef7bc324e3 [pulse] Add a flag to model methods for memory ownership transfer
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
Ezgi Çiçek faceece120 [pulse] Brush up List.set() model
5 years ago
Ezgi Çiçek 5ff6fc93a0 [pulse] Brush up Java iterator models
5 years ago
Jules Villard 041ecc5b43 rename most libraries to be more consistent
5 years ago
Dulma Churchill 40143ab01c [pulse] Model CFRelease as removing the Allocated attribute rather than as free
5 years ago
Jules Villard e06487868b make Reporting take a Procdesc instead of attributes
5 years ago
Sungkeun Cho d373a81b73 [pulse] Keep only one disjunct from blacklisted function
5 years ago
Jules Villard 7e5dba718a pulse/dune
5 years ago
Jules Villard a34e1a8759 bufferoverrun/dune
5 years ago
Jules Villard f41575411c make pulse take an `InterproceduralAnalysis.t`
5 years ago
Jules Villard d14ff99f45 [pudge] try harder to prove false
5 years ago
Jules Villard 2da04b835d [pulse] require ptr>0 in free()
5 years ago
Jules Villard 385b6fa914 [pulse] revamp arithmetic, put everything in the path condition
5 years ago
Jules Villard 5c453393ff [pulse] recency model for memory accesses
5 years ago
Jules Villard c2ec55fe37 [pulse] remove traces from interval domain
5 years ago
Dulma Churchill 6c044ba2d4 [pulse] Model Core Foundation create and copy functions
5 years ago
Jules Villard 2d8debc562 [pulse] invalidate vector backing array correctly
5 years ago
Jules Villard 0859f61695 make AbstractInterpreter agnostic in ProcData
5 years ago
Jules Villard a144c8e4df split reporting.ml for dependencies
5 years ago
Dulma Churchill f28d75c910 [pulse] Add model for malloc_no_fail
5 years ago
Dulma Churchill fa13577695 [pulse] Model __bridge_transfer
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
Dulma Churchill c76d59853b [pulse] Model CFBridgingRelease by removing the Allocated attribute
5 years ago
Jules Villard 3332dc1a42 [AI] improve disjunctive domain
5 years ago
Jules Villard edba795825 [AI] move disjunctive scheduling to AbstractInterpreter
5 years ago
Jules Villard 50feb5481c [pudge] only ask unsat when reporting
5 years ago
Jules Villard 822a78c576 [pudge] lazily compute sledge stuff
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 36f44f030d [pudge] spit out sledge replay tests
5 years ago
Jules Villard 7a888170e7 [pudge] it's alive!
5 years ago
Dulma Churchill 2d168f75a6 [pulse] Add options for modelling alloc models and free models from user-defined regexes.
5 years ago
Jules Villard 6247437296 [pulse] unified API for arithmetic
5 years ago
Jules Villard 0a8ad85596 [pulse][minor] rename AbductiveDomain.Domain -> AbductiveDomain.PostDomain
5 years ago
Jules Villard af2aaf2a14 [pulse][minor] remove skipped_calls getter
5 years ago
Jules Villard bb9726bbd7 [pulse] enforce short forms for PulseDomainInterface
5 years ago
Jules Villard 94e3b06900 [pulse] enforce short forms for PulseBasicInterface
5 years ago
Jules Villard a0d1fee1dc [pulse] move SkippedCalls to its own file
5 years ago
Jules Villard c00de7ad27 [pulse] move interproc call to its own file
5 years ago
Jules Villard 9ed10d435b [pulse][minor] simplify rewriting of callee post attributes
5 years ago
Dulma Churchill 2382e3d613 [pulse] Model Core Graphics Create and Copy just like malloc
5 years ago
Dulma Churchill 59ea968de8 [pulse] Model the correct CFAutorelease
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 5a2b285fff [pulse] Distinguish exit state at top level
5 years ago
Dulma Churchill dba4140a7b [pulse] Adding null case to malloc's model
5 years ago
Dulma Churchill 271946a178 [pulse] Model release functions from Core Graphics and Core Foundation
5 years ago
Dulma Churchill 6f2b52fcc7 [pulse] Model Core Graphics create and copy functions
5 years ago
Jules Villard 6dc0894eef [pulse][models] add the proc name being matched to the context
5 years ago
Dulma Churchill 902514dccd [pulse] Add unreachable point to the trace of memory leaks
5 years ago
Ezgi Çiçek d97e1c8fdb [pulse][impurity] Add model for System.exit()
5 years ago
Ezgi Çiçek f7baf845fd [pulse] Fix printing order in contradiction for CItv and add tests
5 years ago
Dulma Churchill e99295e0e9 [pulse] Memory leak check
5 years ago
Ezgi Çiçek 7ca2fcc948 [pulse][purity] Add more naive models for Java
5 years ago
Ezgi Çiçek 25c058f706 [deadcode] Fix deadcode
5 years ago
Ezgi Çiçek cc815f5d20 [pulse] Only propagate existing WrittenTo attributes at function calls
5 years ago
Ezgi Çiçek b372befee4 [pulse] Add more naive Java models
5 years ago
Ezgi Çiçek a65176de22 [pulse] Print SkippedCalls
5 years ago
Dulma Churchill d1923dcd71 [pulse] Changed the name of BaseDomain signature to avoid a name clash
5 years ago
Jules Villard 3ba91fd596 [pulse] refactor of PrePost.t vs AbductiveDomain.t
5 years ago
Jules Villard 7861752bf3 [pulse] rename "PulseArithmetic" to "PulseCItv"
5 years ago
Ezgi Çiçek e3c89b1f10 [impurity] Fix include_value_history
5 years ago
Dulma Churchill 2f90b05c2a [pulse] Add model for malloc
5 years ago
Ezgi Çiçek b90d7c42d3 [impurity] Do not add value history in impurity traces
5 years ago
Ezgi Çiçek c6237f5f9f [pulse] Add model for Object.clone()
5 years ago
Ezgi Çiçek c144761a26 [pulse] Pull skipped calls into AbductiveDomain
5 years ago
Ezgi Çiçek 5f8e6233bb [pulse] Take into account skipped calls for state comparison
5 years ago
Ezgi Çiçek 562a43621c [pulse] Remove NoJoin sig from PulseBaseDomain
5 years ago
Jules Villard 826fd8a999 [pulse] monad, monads everywhere
5 years ago
Jules Villard 72f560036d [pulse] formal/actual length mismatch is a contradiction
5 years ago
Ezgi Çiçek 239a5302f6 [pulse] Add more models for Java
5 years ago
Ezgi Çiçek 040442c93b [pulse] Don't write through pointer arguments in Java
5 years ago
Ezgi Çiçek 4677584018 [pulse] Remove map suffix from SkippedCalls
5 years ago
Ezgi Çiçek a0fd5a0e6a [pulse] Refactor attributes into domain
5 years ago
Jules Villard a8b2c58bfb [pulse] new option to turn pulse back into an intra-procedural analysis
5 years ago
Ezgi Çiçek 426b7dfe51 [pulse] Track skipped functions
5 years ago