2292 Commits (a6ab0cbb0d516d28ced57f5c3f606e337322e60a)

Author SHA1 Message Date
Mehdi Bouaziz fac9932168 [inferbo] Add traces to Conditions always true/false and Unreachable code
6 years ago
Ezgi Çiçek 6683c71f8b [purity, hoisting] Add more purity models for fblite and instagram
6 years ago
Sungkeun Cho 1503f63c27 [inferbo] Fix evaluation of multi-dimensional arrays
6 years ago
Sungkeun Cho 07f8855185 [inferbo] Fix condition check of multi-dimensional array
6 years ago
Nikos Gorogiannis f3194e00c9 [starvation] silence some strict mode models
6 years ago
Nikos Gorogiannis a3df8f9f99 [starvation] simplify report format
6 years ago
Jules Villard b42d625606 [tests] fix buck tests
6 years ago
Mehdi Bouaziz 0ba4c2c892 [cost] Pretty-printing exponents
6 years ago
Mehdi Bouaziz 5ed59b1655 [Inferbo/cost] Improve pretty-printing
6 years ago
Ezgi Çiçek dde0067eec [purity] Don't report pure functions if hoisting mode is turned-on
6 years ago
Ezgi Çiçek f3d82a0230 [hoisting] Don't report functions modeled as VariantForHoisting but consider them invariant
6 years ago
Mehdi Bouaziz 42b16d45fa [inferbo] New tests
6 years ago
Martino Luca 0547878898 Update InferBO tests
6 years ago
Mehdi Bouaziz a7921536da [quandaryBO] New test
6 years ago
Daiva Naudziuniene 2c06254800 [pulse] False positive caused by multiple variables captured by value in lambda
6 years ago
Ezgi Çiçek 2f06fd768f [purity, hoisting] Keep track of modified args
6 years ago
Sungkeun Cho 1cbcbe6fb3 [inferbo] Improve division on constant
6 years ago
Sungkeun Cho 01a83e694b [inferbo] Improve semantics of binary and
6 years ago
Dino Distefano d10f6855f2 Making error message more explicit in CXX Reference rule
6 years ago
Jules Villard 67ff14b4ed [pulse] record attributes inside memory cells instead of separately
6 years ago
Jules Villard 6f9028a77f [pulse] use WTO scheduler
6 years ago
Sungkeun Cho b3bfa8100b [inferbo] Add test
6 years ago
Ezgi Çiçek d5a2198010 [hoisting] Make invalidation stop at already explored (var,node) pairs
6 years ago
Ezgi Çiçek ff722f975d [hoisting] Stop invalidation at loop head
6 years ago
Ezgi Çiçek 3fb1053b75 [hoisting] Invalidate arguments of type structs
6 years ago
Mehdi Bouaziz 9a4416f7d4 [quandary] String concatenation sanitizes class loading
6 years ago
Mehdi Bouaziz 174bdcd22b [quandary] Add class-loading sinks
6 years ago
Sungkeun Cho 72ce05c039 [inferbo] Fix width of bool
6 years ago
Daiva Naudziuniene 86f52e52ed [pulse] Operator= copy assignment
6 years ago
Jules Villard f30e97f072 [pulse] add model for `std::vector::reserve` using additional memory attribute
6 years ago
Jules Villard 1c8143898e [pulse] generalise "invalid" addresses as sets of attributes
6 years ago
Jules Villard 637018a330 [pulse] model some early exit functions
6 years ago
Jules Villard 9aa5582caa [clang] leave markers of variable initialization for pulse
6 years ago
Martin Trojer 0d4a0ba35c [objc] add test for strong/weak self references
6 years ago
Jules Villard 165cb1cf73 [pulse] back to sounder joins
6 years ago
Jules Villard f400d4c5c5 [pulse] always register havoc'd variables
6 years ago
Sungkeun Cho 2401f6f6eb [inferbo] Give a widening threshold of zero
6 years ago
Sungkeun Cho 00081274cb [inferbo] Preciser pruning: (x != 0)
6 years ago
Sungkeun Cho b2189c1c17 [inferbo] Loosen similar bounds condition
6 years ago
Sungkeun Cho bf29bd9772 [inferbo] Fix xcompare of Itv
6 years ago
Ezgi Çiçek 39335bb095 [hoisting] Invalidate all dependencies of invalidated parameters
6 years ago
Sungkeun Cho fed56fd0d8 [inferbo] Revise deduplication
6 years ago
Dino Distefano 5d533bba5c New Infer rule for dispatch_once_t
6 years ago
Sungkeun Cho 9e9deb93be [inferbo] Use set instead of list on get_symbols
6 years ago
Ezgi Çiçek 8a51a70162 [Hoisting] Add FP test for indirect modification in loop
6 years ago
Ezgi Çiçek affe3d1d60 [hoisting] Invalidate args of impure function calls
6 years ago
Daiva Naudziuniene 4954d3da4b [pulse] Model operator=
6 years ago
Daiva Naudziuniene 881bcb8fce [pulse] Clean up placement new model
6 years ago
Sungkeun Cho a2312462eb [inferbo] Use values of global constant variables in C
6 years ago
Sungkeun Cho e5ee023aa3 [infer] Add integral constant expression info
6 years ago
Jules Villard 0a2cb44667 [pulse] introduce the more precise `VECTOR_INVALIDATION` issue type
6 years ago
Jules Villard f627812541 [pulse] new issue type `USE_AFTER_DESTRUCTOR`
6 years ago
Jules Villard c6b2126c3f [pulse] forget about addresses that are invalid on only one side of a join
6 years ago
Daiva Naudziuniene 8b54879b07 [pulse] Constructors
6 years ago
Sungkeun Cho 87dd2047ec [infer] Use big int in IntLit
6 years ago
Sungkeun Cho 120c8785eb [inferbo] Update pp of buffer overflow condition
6 years ago
Daiva Naudziuniene 1094a8224c [pulse] Invalidate object rather than address in destructor call
6 years ago
Sungkeun Cho 423b732cb4 [inferbo] Fix condition of narrowing termination
6 years ago
Mehdi Bouaziz 10804588b2 New function pointer preanalysis without recursion
6 years ago
Mehdi Bouaziz 6131b1fd13 Allow ints for int options in .inferconfig
6 years ago
Sungkeun Cho a40a7984c7 [inferbo] Try division on minmax value conservatively
6 years ago
Sungkeun Cho 3f71cf327b [inferbo] Separate offset and index in condition
6 years ago
Sungkeun Cho 0ce0ec03d9 [inferbo] Support global constant
6 years ago
Dino Distefano 6fe3edc44e Extending type matching to BlockExpr
6 years ago
Jules Villard 6cce767d19 [pulse] copy tests from ownership
6 years ago
Jules Villard cf66ea0afb [pulse] havoc vector array on push_back
6 years ago
Jules Villard 6d6ac1d368 [pulse] do not use access paths as they forget about &/*
6 years ago
Jules Villard f5786c444b [pulse] use after free
6 years ago
Jules Villard 38ced865f3 [pulse] more issue types and add details about why locations get invalidated
6 years ago
Mehdi Bouaziz 3ee96263a7 [inferbo] Simplify and improve Itv.prune_comp
6 years ago
Mehdi Bouaziz 2824056af5 [inferbo] Normalize intervals after substitution
6 years ago
Nikos Gorogiannis 342bfb418a [racerd] fix NSObject.init treatment of ownership
6 years ago
Nikos Gorogiannis b0b8459c3a [racerd] detect ObjC "private" methods
6 years ago
Nikos Gorogiannis 105b772cff [racerd] iOS first steps
6 years ago
Mehdi Bouaziz 148664a7d4 Fix objc tests
6 years ago
Mehdi Bouaziz ce34dcb695 Format everything
6 years ago
Mehdi Bouaziz ecedb27d77 Add missing FB copyrights
6 years ago
Sungkeun Cho fd3f298156 [inferbo] Add narrowing
6 years ago
Daiva Naudziuniene 5dab665fc2 [pulse] Model placement new
6 years ago
Daiva Naudziuniene 50da07e922 [pulse] Invalidate addresses for destructors
6 years ago
Sungkeun Cho 85ef451701 [infer] Use integer widths on constructing Sizeof exp
6 years ago
Mehdi Bouaziz 3dd97cc40f [inferbo] Use WTO abstract interpreter
6 years ago
Sungkeun Cho f28faad627 [inferbo] Filter integer_overflow_l5 and _u5 by default
6 years ago
Nikos Gorogiannis ea7b185b6b [classloads] add option for specifying root methods and add tests
6 years ago
Jules Villard 497720386e [pulse] join of memory graphs
6 years ago
Mehdi Bouaziz e72cd6c00f [inferbo] More precise min/max
6 years ago
Sungkeun Cho 38ab5fda4e [inferbo] Add some tests of imprecise pruning on unsigned int
6 years ago
Mehdi Bouaziz 592efbf5fa [inferbo] Refine <= for MinMax
6 years ago
Sungkeun Cho 3f969414fe [inferbo] Check integer overflow when really need
6 years ago
Sungkeun Cho 5d9f11c68e [inferbo] Do not raise integer overflow when multiplying 1
6 years ago
Sungkeun Cho cd1981a567 [inferbo] Change pp of BinaryOperationCondition
6 years ago
Jules Villard 47867a8fdc [pulse] rename `Location` -> `Address` and better reporting
6 years ago
Jules Villard dd220a0fb4 [pulse] vector models
6 years ago
Jules Villard ad98ffa22b [pulse] more aggressive join
6 years ago
Mehdi Bouaziz 6d9943f2aa Uninit: fix test
6 years ago
Martin Trojer 0d4b88ae29 [objc] fixing false positive for weak pointers inside c++ structs
6 years ago
Sungkeun Cho fb4086c6f6 [inferbo] Add integer overflow issue type
6 years ago
Mehdi Bouaziz 81f31068e2 [Uninit][9/13] Check rhs using prestate
6 years ago
Dino Distefano 3d07754275 Giving cost 1 to procedure with empty body
6 years ago
Jules Villard 3821be4b7f [pulse] fix compilation error in test
6 years ago
Jules Villard d28d0528d1 [pulse] initial commit
6 years ago
Sungkeun Cho fd660f42f5 [inferbo] Suppress exception on placement new
6 years ago
Dino Distefano 2e64566a6c Finding stateless CKComponents
6 years ago
Ezgi Çiçek 78a865b14e [hosting] Disable purity and cost callbacks temporarily
6 years ago
Ezgi Çiçek 99c2a6da8d [hoisting] Hoist only expensive pure functions
6 years ago
Nikos Gorogiannis 9eecd1bb9b [racerd] reconcile java and clang report corellation code
6 years ago
Dino Distefano 08a26d4ba1 First approximation of stateless
6 years ago
Mehdi Bouaziz c3f2fbc8c6 [inferbo] Do not alias values representing multiple values (Java, C partially)
6 years ago
Mehdi Bouaziz eca0b491d6 Weak Topological Order and Abstract Interpreter using it
6 years ago
Mehdi Bouaziz 5679105c15 [Uninit][7/13] Add new tests
6 years ago
Dino Distefano 89700a7d95 Added new predicated for captured values
6 years ago
Mehdi Bouaziz 8cac7df447 [Uninit][1/13] Move interproc tests
6 years ago
Sungkeun Cho 1330475032 [infer] Fix placement_new translation
6 years ago
Sungkeun Cho f4ee2a0234 [inferbo] Revise placement new model
6 years ago
Jeremy Dubreil 56709b4ccb [infer] the bug hash should also consider the anonymous classes in the qualifier
6 years ago
Jules Villard 7615963bf4 [proc-cfg][2/5] fix duplicate symbols detection
6 years ago
Jeremy Dubreil fd29aff3a7 [infer] remove the special case to always create summaries for the Java methods
6 years ago
Sungkeun Cho 96cbdb15c7 [inferbo] Use big_int in interval domain
6 years ago
Nikos Gorogiannis 1644e99499 [starvation] add issue type STRICT_MODE and make distinct reports on it
6 years ago
Jules Villard 116ec5ae55 [clang] changes to accomodate the new version of clang
6 years ago
Ezgi Çiçek b54307f5d0 [Hoisting] Add test for FP due to no purity check
6 years ago
Ezgi Çiçek aca0b8e130 [Hoisting] Fix hoisting of void functions
6 years ago
Jeremy Dubreil 2f7e4563c6 [eradicate] also lookup the procedure attributes in the super class
6 years ago
Mehdi Bouaziz e11ec33289 arc: add Java formatter
6 years ago
Jeremy Dubreil ae1861ca42 [eradicate] match the number of parameters when iterating over the list of overridden methods
6 years ago
Mehdi Bouaziz 7c89d92851 [RFC] Format all java files
6 years ago
Sungkeun Cho 86d1560984 [inferbo] Add tests of integer overflow and unsafe casting
6 years ago
Jeremy Dubreil 1989ef7e28 [eradicate] add example false positive caused by not finding the attributes
6 years ago
Ezgi Çiçek 43b3f80de5 Add simple purity analysis
6 years ago
Julian Sutherland 93690dfa0e Check that the end the traces of inferBO and quandary issues match before matching them to form an quandaryBO issue
6 years ago
Jules Villard bb037c39ee [kill -a][4/4] kill `Config.analyzer`, deprecate `--analyzer`
6 years ago
Jules Villard a29e769b61 [kill -a][1/4] stop using `-a foo` in the infer repo
6 years ago
Jeremy Dubreil 878add3fad [eradicate] no longer report Field Not Nullable warnings on the Fragment onDestroy method
6 years ago
Nikos Gorogiannis 631959ced0 [starvation] refactor method matching ; kill dev-android-strict-mode option
6 years ago
Nikos Gorogiannis 0c7a8556dc [concurrency] treat @MainThread annotation
6 years ago
Martin Trojer 6d17ba7044 make tests work in xcode10
6 years ago
Mehdi Bouaziz 82a7f14f90 QuandaryBO issue filtering: fix --no-filtering behavior
6 years ago
Nikos Gorogiannis 66392db8d5 [starvation] allow specifying method patterns for skipping analysis via cmdline and inferconfig
6 years ago
Julian Sutherland 0e9d8380c2 filter issues correctly
6 years ago
Dino Distefano 3c04f32709 hadoc const version
6 years ago
Julian Sutherland 60784ad045 Updated QuandaryBO issue matching.
6 years ago
Martin Trojer f1353ec3da Turn --buck-blacklist into a string list
6 years ago
Thomas M. DuBuisson 75e4226ea3 [infer][PR] Fix getcwd model to allow NULL argument
6 years ago
Julian Sutherland f6afe3a092 quandaryBO now filters out quandary and inferBO errors if they are not enabled.
6 years ago
Julian Sutherland 5cf66f6da8 InferBO strncpy model
6 years ago
Julian Sutherland 949aae560b Added traces to QuandaryBO errors
6 years ago
Julian Sutherland a5d3203ce8 inferBO calloc model
6 years ago
Martin Trojer 5dff755691 Lock objc_missing_fld to one thread.
6 years ago
Martin Trojer f94e760c7e Adding model and tests for NSString_stringByAppendingString
6 years ago
Jeremy Dubreil 48f03f06f4 [eradicate] skip the analysis of the method in external methods
6 years ago
Jeremy Dubreil ff851040fc [eradicate] read the procedure attributes directly
6 years ago
Julian Sutherland e24ce31744 Added inferBO model for the C memset function.
6 years ago
Mehdi Bouaziz d9fb7b3004 ProcAttributes: removed unused by_vals
6 years ago
Jeremy Dubreil 3442ce1999 [eradicate] no longer report Inconsistent Subclass Return Annotation when overriding external methods
6 years ago
Julian Sutherland 16c70d1c23 Fixed a bug that caused the stride of symbolic arrays to not be set.
6 years ago
Dino Distefano 21145c75c9 Added new predicate is_const_expr()
6 years ago
Jeremy Dubreil 0d4007e6be [nullsafe] translate the more attributes
6 years ago
Nikos Gorogiannis 52eef069b2 [concurrency] fix UI thread models
6 years ago
Jeremy Dubreil c38163a83a [eradicate] the Java map put method does not accept nullable parameters
6 years ago
Daiva Naudziuniene 0bbeb85295 [ownership] Stack reference wrapper example
6 years ago
Julian Sutherland e2150d1579 Wired up model for memmove which is identical to memcopy
6 years ago
Martino Luca aea1b4095e [Perf][CI] Disable threshold based cost reports
6 years ago
Martino Luca c078bf5a12 [Perf][CI] Differential of costs, based on degree variation
6 years ago
Nikos Gorogiannis 888a169dce [starvation] make a trace out of our explanation as to why a method runs on the UI thread
6 years ago
Nikos Gorogiannis a6e5ab7fdb [starvation][strict mode] disable strict mode violation reporting and analysis by default
6 years ago
Nikos Gorogiannis 96e698a458 [starvation] strict mode meta-analyzer for Android
6 years ago
Julian Sutherland b7353c961c Added model for memcpy C function to inferBO
6 years ago
Julian Sutherland e715d48c12 QuandaryBO
6 years ago
Mehdi Bouaziz 9318a22b29 Update plugin
6 years ago
Ezgi Çiçek 15bdcca119 [Loop-hoisting] Add a new model for Javax's Provider.get() and make it invariant only
6 years ago
Daiva Naudziuniene e5b38a42d8 [ownership] More examples
6 years ago
Martin Trojer e2c08e4085 Decouple objc tests from xcode-select
6 years ago
Martino Luca e46bf6a3d9 [Perf] Perform comparisons of costs-reports by using costs-report.json files
6 years ago
Mehdi Bouaziz 46cd49df8d PrintfArgs is not an Eradicate checker
6 years ago
Daiva Naudziuniene 2a35d6579b [dead store] Removed special case for constexpr in lambda captures
6 years ago
Julian Sutherland 34b0a6165c Added new issues to differentiate tainted buffer accesses and heap allocations
6 years ago
Sungkeun Cho 0cffc52b3b [inferbo] Simplify memory instantiation of function call
6 years ago
Mehdi Bouaziz 39a146a56a Reporting cleanup 14: log error using state
6 years ago
Julian Sutherland 7fc29b3248 Added unit tests for function pointers
6 years ago
Ezgi Çiçek b2e7a785ba [Loop-hoisting] Add more models for invariant analysis
6 years ago
Daiva Naudziuniene bfab195d08 [dead store] Do not report dead stores on constexpr
6 years ago
Sungkeun Cho da51a736ec [inferbo] Add a test showing empty fields of structure
6 years ago
Jules Villard 5894258f43 [ownership] do not warn on returning ref to outer local
6 years ago
Daiva Naudziuniene 8e753c2b74 [deadstore] Do not report on __tmp
6 years ago
Mehdi Bouaziz b4b54025bf Remove C++ mutex DOUBLE_LOCK checker
6 years ago
Ezgi Çiçek 49e582fa49 [Loop-hoisting] Add a new checker for hoisting invariant function calls
6 years ago
Nikos Gorogiannis 14556f52b4 [starvation] whitelist @WorkerThread methods
6 years ago
Sungkeun Cho 524ae3a7e2 [inferbo] Return unknown value on non-const function calls
6 years ago
Jules Villard a3d5f0283d [clang] only pass `--Xclang` args to driver commands
6 years ago
Sungkeun Cho 76bf31bc17 [inferbo] Add a test case of global constant
6 years ago
Mehdi Bouaziz 5817ff6adc [inferbo] Do not re-report issues if the precision hasn't improved
6 years ago
Jeremy Dubreil 3cffdb9745 [infer] remove the field procedure_id in the analysis report
6 years ago
Mehdi Bouaziz 5a4d4f0882 [inferbo] Fail if trying to substitute non-symbolic conditions
6 years ago
Mehdi Bouaziz 1a75fa9ebd [inferbo] Propagate INFERBO_ALLOC_MAY_BE_ even when the bound is infinity
6 years ago
Mehdi Bouaziz 693089ab08 [inferbo] Alloc site in the trace for INFERBO_ALLOC_xx issues
6 years ago
Dino Distefano 370f33c8dc Added predicate for CXX11ConstantExpr
6 years ago
Nikos Gorogiannis af14da6a13 [starvation] stop considering View.get... as blocking.
6 years ago
Ezgi Çiçek 527fb90bbe [Cost] Add a Java model for functions to be considered invariant
6 years ago
Mehdi Bouaziz 07f22daada [inferbo] Report calls without ()
6 years ago
Ezgi Çiçek cc18f9883d [Cost] Fix invariant variable analysis to be based on all reaching defns
6 years ago
Jules Villard d9e12850b9 [biabd] do not try to bypass `Ondemand` to get proc desc of models
6 years ago
Julian Sutherland dd4ee55d5a fixed error in java expected test results
6 years ago
Julian Sutherland b7c90c3fe0 Fixed incorrect reporting of tainted index in function call by quandary
6 years ago
Jeremy Dubreil d000a27bd4 [infer] use a fully qualified name for the procedure field in the final report
6 years ago
Ezgi Çiçek bedf32bed5 [Cost, InferBo] generalize ArrayLists to Collections and Iterators
6 years ago
Ezgi Çiçek 9022228804 add support for hasNext() and iterator() for Java
6 years ago
Daiva Naudziuniene e8c5a84acd [Ownership] Add ownership to return param
6 years ago
Mehdi Bouaziz ad986dffde Get rid of Declare_locals
6 years ago
Ezgi Çiçek 832e0130cd [Inferbo] Fix the way pointers to arrays are handled in Java
6 years ago
Jeremy Dubreil 802d67ab64 [infer] fix the dependencies for the Buck javac_jar test
6 years ago
Jules Villard e5a5d64760 [caml] do not use `let _ =`
6 years ago
Mehdi Bouaziz 12c0e245c6 [Inferbo] Simplify interval pretty-print
6 years ago
Martino Luca 632cb0e513 [Perf] Emit ZERO_EXECUTION_TIME_CALL issue-type, when zero-costing functions are met
6 years ago
Dino Distefano 4065b76663 Fixed has_type for iterator type
6 years ago
Jules Villard 9ea6d4723f [toplevel] install infertop in infer/bin/ to get models and stuff
6 years ago
Jeremy Dubreil bdbb8242cf [infer][java] no longer fail on Buck Java project using a custom javac_jar compiler
6 years ago
Jules Villard 987ef9ef67 [biabd] ondemand analysis for `pthread_create` builtin
6 years ago
Ezgi Çiçek 0a668c2161 [DEAD_STORE] Capture `constexpr`s in lambdas
6 years ago
Jeremy Dubreil d5a5e7da10 [infer] remove ad hoc treatment of anonymous class renaming
6 years ago
Daiva Naudziuniene ba4f33089e [stack variable address escape] Do not report on temporary variables
6 years ago
Dino Distefano 1efc44c27f Fix has_type when used in the context of namespace
6 years ago
Nikos Gorogiannis 3870ebb747 [starvation] catch calls to Thread.sleep
6 years ago
Martin Trojer 562f9d1c7c Add guard against triggering static self logic when we have nested class calls
6 years ago
Sungkeun Cho 9eca72d405 [Inferbo] Add relational domains
6 years ago
Ezgi Çiçek 396caca5d6 Fix array size for Java in `get_malloc_info`
6 years ago
Nikos Gorogiannis 4cc8563212 [starvation] catch Object.wait calls on main thread
6 years ago
Martin Trojer 4ba7218133 Added test to verify a NSArray nil insert case.
6 years ago
Jeremy Dubreil 3539388ea6 [infer][tests] fix the expected test output
6 years ago
Nikos Gorogiannis 14aa1edbf5 [starvation] Avoid FPs in guava Futures
6 years ago
Martino Luca c50b250576 [Perf] Compute the degree of polynomials
6 years ago
Martin Trojer 46e2c153f1 Add std::string as container-method for objc, and change string matching to regexes.
6 years ago
Jules Villard 6e44cae7cd [c] record complex sizeof() and leak from #86
6 years ago
Katie Ots d86737946c Validate buck linters used with compilation database
6 years ago
Ezgi Çiçek 2d889791e2 Fix Java's handling of pointer parameters in Inferbo
6 years ago
Ezgi Çiçek 9ed18e958a Add support for ArrayList.remove
6 years ago
Jules Villard 2761a62e94 [java] record HashMap get from `KeySet()` FP from #128
6 years ago
Jules Villard b23449a7d2 [c] record C lists FP from #120
6 years ago
Jules Villard 398e97183f [java] record Closeable example from #49
6 years ago
Ezgi Çiçek f540aa47a3 Add support for Java's ArrayList.set and ArrayList.get
6 years ago
Ezgi Çiçek 0c6eacc902 Add support for Java's ArrayLists.add*
6 years ago
Martino Luca cccef6261d Revert "[Perf] Add cost information to the hashing function"
6 years ago
Martino Luca ac64be761f [Perf] Add cost information to the hashing function
6 years ago
Nikos Gorogiannis 6b156f71fe [racerd] special-case for Litho's getThis
6 years ago
Martin Trojer ee7f07a1a9 Add missing case to block instruction converter
6 years ago
Daiva Naudziuniene 84cfd0a450 [frontend] Do not create exceptional successors for return nodes
6 years ago
Martin Trojer 4b69087ad5 Adding OBJCPP models to avoid SKIPs of models from .mm
6 years ago
Ezgi Çiçek 34c2899a69 Fix printing of fields in Java
6 years ago
Dino Distefano b215cdbff4 Fixed problem with expasion of %name% placeholder
6 years ago
Nikos Gorogiannis c5ad94d825 [starvation] Adjust blocking call severities to better reflect practice
6 years ago
Martino Luca ae9ee41f78 [TD] Change JSON format for test-determinator
6 years ago
Sungkeun Cho 06a04ca9f5 Revert "[Inferbo] Add relational domain"
6 years ago
Sungkeun Cho 1f7a6e53fb [Inferbo] Add relational domain
6 years ago
Dulma Churchill 5653839540 [clang] Add the types of captured variables to the procname of blocks
6 years ago
Ezgi Çiçek 5cff9c91f9 Add Java support to ProcnameDispatcher
6 years ago
Kai Yang 2d73494e87 Add is_static_local_var predicate
6 years ago
Nikos Gorogiannis d4a9c6f81a [racerd] gate stability
6 years ago
Jules Villard 6f3719f5f2 [siof] do not warn on simply taking reference of global
6 years ago
Jules Villard 2c8d7a2046 [clang] support `SubstNonTypeTemplateParmExpr`
6 years ago
Jules Villard 2cb96c356a [clang] remove capture hack
6 years ago
Martin Trojer 63b3f5b99b Deal with anonymous objc blocks where non closure args could wrongly be considered duplicates.
6 years ago
Martin Trojer d442937380 Add CFRunLoopObserverCreateWithHandler model and test
6 years ago
Martin Trojer 1ee0390f3c Add test that exemplifies Missing_fld issue on objc
7 years ago
Martin Trojer 8bdbf3aedc Fix false positive BAD_POINTER for objcpp
7 years ago
Mehdi Bouaziz e5de1b6663 Cost: simplify range of parameters
7 years ago
Mehdi Bouaziz bea71d9168 Inferbo/perf: path rather than symbols
7 years ago
Ezgi Çiçek 4624ff48d1 Fix control variable imprecision in do while loops
7 years ago
Martin Trojer a1cadfd88c Adding objcpp liveness test
7 years ago
Daiva Naudziuniene 1e2e9b6d11 [clang frontent] Fix translation of binary operator
7 years ago
Mehdi Bouaziz a8e84d1657 Cost: improve NonNegativePolynomial.(<=)
7 years ago
Mehdi Bouaziz 0639ef82b7 Cost: also take into account arguments in range
7 years ago
Dulma Churchill 60cbc2c98e [biabduction] Enable dynamic dispatch for ObjC methods
7 years ago
Dulma Churchill 2cf0e7a1d2 [clang] Treat class method as a static self only as the first argument of an instance method call, not a class method
7 years ago
Nikos Gorogiannis 848ef3da21 [RacerD] Fix stability implementation
7 years ago
Nikos Gorogiannis f28aa37cb6 [racerd] Do not record paths starting at variables not appearing in source
7 years ago
Martin Trojer 5156ff7f65 [infer][PR] handle improper version strings in @available clauses
7 years ago
Jeremy Dubreil 055a8267e8 [eradicate] promote reports as errors for generated GraphQL source of nulls
7 years ago
Nikos Gorogiannis e5d8f501f4 [starvation] fix conversions of int literals which need 64 bit ints
7 years ago
Jeremy Dubreil 90c08e4596 [eradicate] report as warnings by default
7 years ago
Ezgi Çiçek cf1c2acb54 [Cost] Add invariant analysis
7 years ago
Jules Villard 25627fd4d9 [c] add test for cleanup attribute
7 years ago
Ezgi Çiçek f80af7be93 Fix control var analysis for loops with multiple back-edges per loop head
7 years ago
Mehdi Bouaziz bd725602ee Inferbo: size of arrayblk is unsigned
7 years ago
Mehdi Bouaziz affced4303 Cost: actually, we needed data dependency
7 years ago
Nikos Gorogiannis 73507de47b [starvation] report only on public methods
7 years ago
Dulma Churchill 91e0a7d1a3 [IR] Take parameters into account in to_filename method
7 years ago
Nikos Gorogiannis 101574e9d0 Revert again.
7 years ago
Nikos Gorogiannis d13b845434 [starvation] improve deadlock reports
7 years ago
Nikos Gorogiannis db17b13f6a Bad rebase of stacked diff -- reverting.
7 years ago
Nikos Gorogiannis 787cb2c612 [starvation] improve deadlock reports
7 years ago
Mehdi Bouaziz 5b6430e739 Cost solver
7 years ago
Nikos Gorogiannis 113ddbb3ac [starvation] dedup deadlocks
7 years ago
Daiva Naudziuniene 9738f9821e [frontend] Translating ToVoid cast
7 years ago
Ezgi Çiçek bbd6820ca1 Get rid of data dep analysis and localize it to single step
7 years ago
Daiva Naudziuniene 18b3a465d2 [uninit] Report on unitialized expressions in conditions
7 years ago
Dulma Churchill 79a8f8716c [clang] Adding parameters as part of the procname for C++/ObjC methods and ObjC blocks
7 years ago
Nikos Gorogiannis 4820e3db1e [starvation] add NonBlocking annotation
7 years ago
Jeremy Dubreil a5129e57db [Nullable checker][Objective C] add test for nullable properties in NSArray
7 years ago
Ezgi Çiçek cb8e734bbb Get all the loop instructions
7 years ago
Nikos Gorogiannis cacc975394 [starvation] implement SuppressLint
7 years ago
Daiva Naudziuniene be754c1558 [bi-abduction] Do not treat for union fields as uninitialized
7 years ago
Daiva Naudziuniene 610ed0c885 [uninit] Filter out fields if they come from unions
7 years ago
Nikos Gorogiannis 2a83d64481 [starvation] silence reports on IO
7 years ago
Nikos Gorogiannis 971cd84455 [starvation] report using split events
7 years ago
Mehdi Bouaziz 3c7f38eb09 [infer][tests] update the expected test output for the ndk-build tests
7 years ago
Jeremy Dubreil a2584c6ed2 [infer][tests] update the expected test output
7 years ago
Mehdi Bouaziz 1b63cb42b7 [cost] Compute range using post state
7 years ago
Jules Villard 30c470eb48 [tests] record error bucket in expected output
7 years ago
Jules Villard 8b882ac1df Change license to MIT
7 years ago
Daiva Naudziuniene d7d3e16d6f [uninit] Enable reporting on uninitialized pointers
7 years ago
Nikos Gorogiannis c70b978aa8 [starvation] deduplication
7 years ago
Jeremy Dubreil c35278a8f8 [infer] the fragment retains view checker should not warn on field annotated with @AutoCleanup
7 years ago
Brandon Kieft eab7fd1242 Add predicates to check the receiver class type
7 years ago
Jules Villard fecabb3bf3 [siof] do not report on standard streams
7 years ago
Daiva Naudziuniene c47071f186 [uninit] Initialize indirect function call arguments of pointer type
7 years ago
Martino Luca c7c68346c3 [Test determinator] Add tests
7 years ago
Nikos Gorogiannis e36ca3d07f [starvation] explain why we think a method runs on the ui thread
7 years ago
Mehdi Bouaziz a0e3314b7b Eradicate: add a test for condition-redundant check
7 years ago
Nikos Gorogiannis 5e8b118151 [starvation] fix reported location
7 years ago
Daiva Naudziuniene 736badbb2f [uninit] Fix false positive that includes array element passed by reference
7 years ago
Dino Distefano 9b18d87427 Moved TestDeterminator module
7 years ago
Sam Blackshear 9ca945aa2f [ownership] warn when returning references to borrowed values
7 years ago
Daiva Naudziuniene 8ccf4897dd [uninit] Use access expressions
7 years ago
Martino Luca 858c5aab01 [Test determinator] New format for the profiler samples passed in input to TD
7 years ago
Sungkeun Cho cac08598a0 [inferbo] preciser widening of bound
7 years ago
Jules Villard 8715c4f892 [clang] make switch statement translation more robust
7 years ago
Sam Blackshear 370f5c80e6 [quandary] only treat overrides of service methods as endpoints
7 years ago
Ezgi Çiçek 1263bfa899 Add tests for cost analysis
7 years ago
Ezgi Çiçek 6f8bccb8fd Add tests for invariant problem in cost analysis
7 years ago
Nikos Gorogiannis 9cddbd7af8 [racerd] make locals in Java owned, plus stop reporting on temps/logical vars
7 years ago
Daiva Naudziuniene 9e1678ec65 [uninit] Check the type of whole lhs rather than the base of lhs
7 years ago
Dulma Churchill accfc00d82 [objc frontend] Do not crash on internal forward classes
7 years ago
Sam Blackshear 5ed2016899 [clang] basic support for exceptional control-flow
7 years ago
Sam Blackshear 85b8087f66 [quandary] de-prioritize command line flag sources
7 years ago
Dulma Churchill 27a7f2e798 [linters] Do not report mutable local variable in weakSelf and strongSelf
7 years ago
Mehdi Bouaziz aaf346d115 [cost] Polynomial domain
7 years ago
Nikos Gorogiannis 7e5381b7a9 [starvation] model legacy synchronized containers
7 years ago
Nikos Gorogiannis e3f0754335 [starvation] add static timeout recognition and 5 second android limit
7 years ago
Nikos Gorogiannis f22bb53aa8 [starvation] Treat Service (but not IntentService) subclasses as on UI thread
7 years ago
Nikos Gorogiannis 78ad6e6d00 [concurrency] extend notion of ui thread
7 years ago
Nikos Gorogiannis b02a6e9e48 [starvation] catch AsyncTask.get calls on main thread
7 years ago
Mehdi Bouaziz 62fa99ad3f Simplified example showing problem with arrays
7 years ago
Oliver Castillo fb4e7ee4a4 [infer][PR] Fix spelling errors
7 years ago
Nikos Gorogiannis ecfa29b083 [starvation] dedup deadlock warnings
7 years ago
Jules Villard 766a16cd90 [clang] enforce that `instruction` always returns one SIL expression
7 years ago
Jeremy Dubreil 8162cf826e [infer][genrule] set the project root for the integration test
7 years ago
Brandon Kieft cb66e4212b Add predicates for instance and class methods
7 years ago
Dulma Churchill afe511b53d [biabduction] Support finding skip reasons from attributes for clang too
7 years ago
Jules Villard dfe2ad5229 [camel] call `Format.pp_print_*` directly where appropriate
7 years ago
Jeremy Dubreil cbfdacd21c [infer][eradicate] add the name of the class for the method expecting non-null parameters
7 years ago
Jules Villard 9a9d199021 [make] fix toplevel
7 years ago