356 Commits (da8333718a2502188f847c8b8dd5d31ec45612ab)

Author SHA1 Message Date
Jia Chen a718ebe8ec [frontend] Additional information for the backend to distinguish between pass-by-val args and pass-by-ref args
7 years ago
Andrzej Kotulski c473f21f81 [C++] fix std::vector::empty model
7 years ago
Daiva Naudziuniene 7a3decf7f7 [ThreadSafety] Treating lock_guard destructor as Unlock.
7 years ago
Jeremy Dubreil 2a8e192280 [infer][biabduction] disable the reporting of return value ignored
7 years ago
Sam Blackshear 25d9f940fe [dead stores] fix FPs due to capture by ref
7 years ago
Daiva Naudziuniene f12616cea5 [destructors] Add scope management to clang frontend
7 years ago
Mehdi Bouaziz 5ea80fdb82 [inferbo] Remove temporary logical variables
7 years ago
Jules Villard fe01f47e41 [clang] correct sizeof info
7 years ago
Jia Chen f658690846 Whitelist more iterator-related functions and classes
7 years ago
Jeremy Dubreil bf11a27158 [infer] merge --failures-allowed and --keep-going
7 years ago
Sam Blackshear cb9c768c61 [clang] translate vars captured by lambda
7 years ago
Martino Luca a15d868fb0 Upgrading Infer to Clang 5.0
7 years ago
Jia Chen bd90e80859 Added model for std::shared_ptr's aliasing constructor
7 years ago
Sam Blackshear 853d476f13 [liveness] fix bug in usage of OneInstrPerNode CFG
7 years ago
Sam Blackshear 73f3eee9cd [checkers] use liveness analysis to create dead store checker
7 years ago
Mehdi Bouaziz 30e1f4295b [c++] weak_ptr model
7 years ago
Jia Chen 217363f5d6 Whitelist comparison operators and their equivalent functors in <functional>
7 years ago
Jia Chen 6c874957d0 Turn the analysis on for std::pair
7 years ago
Jia Chen 3bacba762a Whitelist the constructors+conversion operators+destructors for classes listed on whitelisted_cpp_classes
7 years ago
Sungkeun Cho 2091a529b1 [inferbo] Avoid precision loss on pruning
7 years ago
Mehdi Bouaziz be0c53ddf3 [cpp] Fix failure with c++14 init-capture
8 years ago
Sungkeun Cho 1531a3d538 [inferbo] Pruning return value of function call
8 years ago
Jia Chen 7c41d3ee48 [infer][backend] Invalidate by-ref parameters for logical variables as well as program variables when calling undefined functions
8 years ago
Mehdi Bouaziz 2ee8321456 [cpp][model] Do not define _LIBCPP_VECTOR or _GLIBCXX_VECTOR
8 years ago
Mehdi Bouaziz 42c224c224 [cpp][bufferoverrun] Regression test for folly/memory/UninitializedMemoryHacks.cpp
8 years ago
Mehdi Bouaziz d9b3b4d9ff [inferbo] Do not report location in model
8 years ago
Jia Chen 28b691d9fd [infer][backend] Perform deep match in Sil.exp_replace_exp
8 years ago
Jia Chen 10f1969bcf [infer][cpp] Fixed the error message for dangling pointer dereference when the dereference comes from C++ `delete` operator
8 years ago
Josh Berdine 8ce531b3de [threadsafety] Fix divergence due to indexing string literal in loop
8 years ago
Kihong Heo 94d6efb83a [Inferbo] Add traces for buffer overrun bug report
8 years ago
Daiva Naudziuniene 8e91932be2 [ThreadSafety] Do not report on private C++ methods
8 years ago
Daiva Naudziuniene 250449e08a [ThreadSafety] Treating unique_lock.
8 years ago
Sungkeun Cho c45c9c745f [inferbo] Instantiate pointer parameters to structures
8 years ago
Daiva Naudziuniene 77e3110adc Propagating access of Decl from clang plugin to ProcAttributes.
8 years ago
Jules Villard b9c59b2b1d [vector] model beginPtr and endPtr separately
8 years ago
Jules Villard 6388910b96 [inferbo] vector::get() returns an allocated value
8 years ago
Kihong Heo 7176fc936a [inferbo] fix the semantics of unknown library calls
8 years ago
Jia Chen a6757be036 Force emitting prune node for C++ comparison expressions
8 years ago
Jia Chen f7927cadda Teach the frontend to recognize STL throw wrappers
8 years ago
Sungkeun Cho f45f4cb4c0 [Bufferoverrun] symbolic value for parameter
8 years ago
Sungkeun Cho 52c0caafaf [inferbo] Declare unsigned typed parameters
8 years ago
Daiva Naudziuniene 0a786e9019 [ThreadSafety] Do not report if all accesses are unprotected.
8 years ago
Mehdi Bouaziz aad66bc6f6 [inferbo] More tests
8 years ago
Jia Chen 1edcbce35b Whitelist std::swap in C++ analyses
8 years ago
Daiva Naudziuniene 336b7182c3 [ThreadSafety] Releasing lock at the end of the procedure if it has a lock_guard field.
8 years ago
Mehdi Bouaziz 69e0063593 [vector] Define _LIBCPP_VECTOR / _GLIBCXX_VECTOR
8 years ago
Sam Blackshear 5a420f7aee [quandary] only report code injection via endpoints on strings
8 years ago
Kihong Heo 8567afdf55 [inferbo] add instantiation for parameters (call-by-ptr/ref)
8 years ago
Daiva Naudziuniene 5938c6331d [ThreadSafety] Extending lock model with lock_quard.
8 years ago
Jia Chen 938425020d [infer] Do not treat static locals as stack-allocated in the biabduction analysis
8 years ago
Sam Blackshear 4fe9110ad3 [quandary] SQL sinks
8 years ago
Sam Blackshear 7b8eef52f8 [thread-safety] fix bad read/write race traces
8 years ago
Daiva Naudziuniene 093a00af9b [ThreadSafety] Do not report for c++ classes that do not have mutex member.
8 years ago
Sam Blackshear 3135560283 [quandary] move trace expansion logic into Quandary
8 years ago
Jia Chen c0e20e0880 Propagate C++ noexcept annotation from frontend to backend
8 years ago
Daiva Naudziuniene f4b9bb3e3b [ThreadSafety] Do not report unprotected writes for c++.
8 years ago
Mehdi Bouaziz 70c4aec26e [inferbo] Fix vector model
8 years ago
Sam Blackshear 4ef487928c [quandary] make passthroughs optional
8 years ago
Sam Blackshear 38d3946c71 [quandary] support for basic return value sanitizers
8 years ago
Kihong Heo 485814a75a [Inferbo] remove redundant alarm message
8 years ago
Mehdi Bouaziz c9803a6481 False negative tests for std::timed_mutex
8 years ago
Mehdi Bouaziz b2e03b1734 [inferbo] New test for call by ptr/ref
8 years ago
Josh Berdine bf504c5b70 Minimal thread safety analysis for C++
8 years ago
Sam Blackshear 54f1122bc0 [quandary] allowing specification of C++ endpoints
8 years ago
Sam Blackshear 45aaa4da93 [quandary] gflag globals as source
8 years ago
Sam Blackshear abc5642c83 [quandary] tests for string functionality
8 years ago
Sam Blackshear d5f4784e61 [quandary] add more exec sinks
8 years ago
Kihong Heo 984a81413a [inferbo] Top for unanalyzed variables (e.g., global variables)
8 years ago
Jules Villard 06dfadecb7 [pmd] handle failure of decoding procedure ids as Java methods
8 years ago
Jules Villard 93ec47a5f4 [IR] add stride to array type
8 years ago
Sam Blackshear 9910391144 [quandary] improved handling of unknown code in C++
8 years ago
Sam Blackshear b7afa4727d [hil] fix crash when translating C code that indexes string literals like arrays or does pointer arithmetic
8 years ago
Sam Blackshear 4e97d1e991 [quandary] add support for C++ parameter passing modes that differ from Java
8 years ago
Mehdi Bouaziz 491cc2587b [infer] More mutex models
8 years ago
Sam Blackshear 30b3075d11 [quandary] allow specification of parameter sources via JSON
8 years ago
Sam Blackshear 6c8f3fe618 [quandary] allocation as a sink
8 years ago
Jeremy Dubreil 7e12885f98 [infer][checkers] remove the quandary analyzer option and rely on the --quandary flag only
8 years ago
Sam Blackshear 6af6ef35ec [quandary] support sources that taint a pointer arg or arg passed by ref rather than the return value
8 years ago
Sam Blackshear 28bc279cdc [quandary] tests for passthroughs
8 years ago
Sam Blackshear a0377fe8c9 [quandary] treat call to unknown operator= as assignment
8 years ago
Sam Blackshear 9dc7e3d66f [quandary] handle return value passed by reference in sources
8 years ago
Mehdi Bouaziz 37896ff435 [inferbo] More errors on symbolic intervals
8 years ago
Mehdi Bouaziz 5a57be9003 [infer][checkers] remove the bufferoverrun analyzer option and rely on the --bufferoverrun flag only
8 years ago
Jeremy Dubreil 8064ac2614 [infer][checkers] remove the siof analyzer option and rely on the --siof flag only
8 years ago
Dulma Churchill 6097c05d88 [clang] Add a preanalysis to compute nullability annotations
8 years ago
Sam Blackshear a02b37a03c [quandary] allow custom sources/sinks in C++
8 years ago
Mehdi Bouaziz 3131660ede [inferbo] Model-like test for vector
8 years ago
Andrzej Kotulski c1147710ba [C++] Store class template name without its template arguments
8 years ago
Andrzej Kotulski 462220ce3e [typ] Print type qualifiers in Typ.pp_full
8 years ago
Andrzej Kotulski aefbbe8680 [clang] Translate type qualifiers into Sil
8 years ago
Mehdi Bouaziz 2dbde13335 [inferbo] Use Logging for logging
8 years ago
Jules Villard 31a6aba3c2 [siof] enable SIOF checker only when new --siof option is passed
8 years ago
Mehdi Bouaziz d20d71da50 [bufferoverrun][tests] Move bufferoverrun cpp tests to their own directory
8 years ago
Kihong Heo 9cad51d00a [Bufferoverrun] add vector test for cpp
8 years ago
Jules Villard 652cf81dab disable flaky generic model test
8 years ago
Andrzej Kotulski 62d1d74d74 [Typ] Change Typ.pp_full to not include class keywords
8 years ago
Andrzej Kotulski fc7b427126 update fcp
8 years ago
Andrzej Kotulski 5503487704 [C++] Introduce mechanism to write generic models
8 years ago
Andrzej Kotulski 21af28619f [C++] Use annotate attribute instead of deprecated
8 years ago
Paco Estevez Garcia 5482f110c1 Add type path_exec to represent an skipped path of execution. Add logic to symExec to report skipped paths
8 years ago