4592 Commits (65491b79ffc94eec31ee7a95e30053a6206c8116)

Author SHA1 Message Date
Martino Luca 8b7148d5b0 Adding a new ATD-based parser for JSON data containing profiler results
7 years ago
Dulma Churchill a274cdf785 [IR] Add the flag is_variadic to the procedure attributes
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
Dulma Churchill 2f00ccb434 [IR] Unify the proc attribute translation_unit and source_captured
7 years ago
Nikos Gorogiannis 35fba2de40 [starvation] skip generated code
7 years ago
Mehdi Bouaziz 4eef0d90c8 Logging/Printer: better code
7 years ago
Mehdi Bouaziz 0563578b43 Propgraph: relax types
7 years ago
Mehdi Bouaziz 2b77c67df5 Prop.expose: relax type
7 years ago
Nikos Gorogiannis f88fe8fc3b [starvation] improve deadlock reports
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
Dulma Churchill 776e728b63 [biabduction] Rewrite the function resolve_java_pname in SymExec for all procnames
7 years ago
Nikos Gorogiannis 113ddbb3ac [starvation] dedup deadlocks
7 years ago
Mehdi Bouaziz 2918512b95 Cost: prepare for another solver
7 years ago
Mehdi Bouaziz 4a0ed2195a [Cost] Representative map: use the union-find map
7 years ago
Mehdi Bouaziz dc49cb6124 Cost: Polynomial.min_default_left
7 years ago
Martino Luca e379132412 [TD] Add test for the case where use_signature=false
7 years ago
Martino Luca c3ec3f1958 [TD] Add test for void_method_with_no_arguments
7 years ago
Mehdi Bouaziz 9ae3b42aef Cost: move union-find to its own module
7 years ago
Mehdi Bouaziz 21ced6af62 PartialOrder
7 years ago
Dulma Churchill 7f839ae962 [biabduction] Do not crash when Exe_env.get_tenv fails for some procedure
7 years ago
Mehdi Bouaziz 507de1e96c Inferbo models: separate ret
7 years ago
Daiva Naudziuniene 9738f9821e [frontend] Translating ToVoid cast
7 years ago
Dino Distefano ac872f4bb5 Building MinTrees with equivalence relation
7 years ago
Ezgi Çiçek bbd6820ca1 Get rid of data dep analysis and localize it to single step
7 years ago
Dulma Churchill c1cd2f44cf [IR] Put the procnames for c functions and blocks in designated modules
7 years ago
Daiva Naudziuniene 18b3a465d2 [uninit] Report on unitialized expressions in conditions
7 years ago
Daiva Naudziuniene acc8712401 [HIL] Do not raise error for the case where array index is passed by ref
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 0da5435d9d [infer][backend] remove unecessary function Summary.pdesc_resolve_attributes
7 years ago
Jeremy Dubreil a5129e57db [Nullable checker][Objective C] add test for nullable properties in NSArray
7 years ago
Jules Villard 710dae8ee4 [doc] add `make doc` target for building html API doc
7 years ago
Mehdi Bouaziz aee02e27ef Cost: control-flow equality classes
7 years ago
Mehdi Bouaziz fd93d907e8 ARList
7 years ago
Dulma Churchill 7409e33ed2 [clang] Add parameters info to the procname of c functions
7 years ago
Ezgi Çiçek cb8e734bbb Get all the loop instructions
7 years ago
Dulma Churchill cbdb00a710 [clang] Compute the parameters of a method to be passed to the procname
7 years ago
Dulma Churchill 30a3615fa3 [IR] Adding module for type of parameters to be added to procnames.
7 years ago
Nikos Gorogiannis a5f9bcbbde [reporting] fix position of optional arg
7 years ago
Nikos Gorogiannis cacc975394 [starvation] implement SuppressLint
7 years ago
Mehdi Bouaziz 6861a2af15 Absint: add debugging for join and widen
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
Mehdi Bouaziz 6fccc62b34 Buckets.check_access: got rid of refs
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 69ead917c3 Instrs: Arrays and RevArrays only
7 years ago
Mehdi Bouaziz bfdc4b16a9 Typo
7 years ago
Mehdi Bouaziz 41a6480139 Instrs.single -> singleton
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
Mehdi Bouaziz fc5c093d1e ProcCfg: do not include module Node
7 years ago
Jules Villard 30c470eb48 [tests] record error bucket in expected output
7 years ago
Mehdi Bouaziz d65cee3017 Paths.Path.iter_all_nodes_no_calls -> fold
7 years ago
Mehdi Bouaziz a5b8093c42 List.drop again
7 years ago
Jules Villard 2cb4715f53 [py] change toplevel.log to infer.py.log
7 years ago
Jules Villard 4fabf03583 [integrations] support forcing integration in python too
7 years ago
Dulma Churchill 9b32ce59c7 [clang] Use the procname_from_decl method when computing objc method names to add to the tenv
7 years ago
Dulma Churchill 01c62589af [clang] Remove dependency from is_cpp from get_parameters function
7 years ago
Jules Villard 8b882ac1df Change license to MIT
7 years ago
Nikos Gorogiannis 057efb2893 [starvation] split events not under lock into separate state component
7 years ago
Daiva Naudziuniene e0e7c3cda4 Remove dead code
7 years ago
Dulma Churchill 663a923ee1 [clang] Remove dependency of mk_c_function from is_cpp
7 years ago
Daiva Naudziuniene d7d3e16d6f [uninit] Enable reporting on uninitialized pointers
7 years ago
Mehdi Bouaziz 4927e31c2f Abstract type for list of instructions in node
7 years ago
Mehdi Bouaziz 256b74b289 proc_inline_synthetic_methods: got rid of refs
7 years ago
Mehdi Bouaziz fbc13cf952 Fix IList.map_changed
7 years ago
Nikos Gorogiannis dd53d0af77 [starvation] equalise summary and abstract state types
7 years ago
Mehdi Bouaziz 3a41f50830 get_vararg_type_names: refactor to prepare for new instrs
7 years ago
Mehdi Bouaziz 42b3958a07 ProcCfg: fold on nodes only
7 years ago
Dulma Churchill dee25640f8 [clang] Remove lang from the CMethodSignature that was unused
7 years ago
Dulma Churchill 6ad971c875 [clang] Refactor building method signatures
7 years ago
Nikos Gorogiannis 6769248f9b [starvation] improve module naming and move to records for states
7 years ago
Nikos Gorogiannis c70b978aa8 [starvation] deduplication
7 years ago
Mehdi Bouaziz 3400e80122 propagate_nodes_divergence: postpone calling succs/preds
7 years ago
Mehdi Bouaziz c841bf262a Preanal: append_instrs once per node
7 years ago
Mehdi Bouaziz c84bf5959b mk_find_duplicate_nodes: better code
7 years ago
Mehdi Bouaziz c9b79039f9 cTrans: simplify assign_captured_var
7 years ago
Mehdi Bouaziz 342af52dce AbstractInterpreter: less garbage
7 years ago
Mehdi Bouaziz 0f8111d0d0 OneInstrPerNode: fix preds
7 years ago
Mehdi Bouaziz eaf4490670 Preanal: reduce garbage
7 years ago
Mehdi Bouaziz a4098f2499 Procdesc.fold_nodes: do not rev
7 years ago
Jeremy Dubreil c35278a8f8 [infer] the fragment retains view checker should not warn on field annotated with @AutoCleanup
7 years ago
Jeremy Dubreil e7714d52f3 [infer][java] remove the code to cache the summaries extracted from the jar files
7 years ago
Brandon Kieft eab7fd1242 Add predicates to check the receiver class type
7 years ago
Jeremy Dubreil 0588e26ee6 [infer][buck] catch the correct exception when calling os.unlink on some non-existing file
7 years ago
Mehdi Bouaziz 1d62441918 Fix List.drop
7 years ago
Dulma Churchill 7a68dde647 [clang] Refactor computing procnames for blocks
7 years ago
Mehdi Bouaziz bfcc88a5e2 Inferbo: use instr_is_auxiliary
7 years ago
Martino Luca f46034cfb3 [Test determinator] Better logging through debug flags
7 years ago
Martino Luca d803dc9048 [Test determinator] Minor refactoring
7 years ago
Dino Distefano 405928ad59 [Test determinator] Improving the search of affected methods and dealing with signature
7 years ago
Jules Villard fecabb3bf3 [siof] do not report on standard streams
7 years ago
Jeremy Dubreil a4531b6fa0 [infer][java] make sure the analysis does not default to absolute path on Buck projects
7 years ago
Martino Luca 9e0ed1c489 Fix unit test for JavaProfilerSamples module
7 years ago
Martino Luca 782f298674 [Test determinator] Minor fixes
7 years ago
Daiva Naudziuniene 93c2d7a4f4 [uninit] Have both pointer and its dereference as uninitialized
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
Dulma Churchill 4a710a64b1 [clang] Move functions about cTypes to the CType module
7 years ago
Jeremy Dubreil cc5708bb4e [infer] convert absolute paths to relative with respect to the common prefix betwen the path and the project root
7 years ago
Dino Distefano 4b296003fa Let's traverse the constraints list only once
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
Daiva Naudziuniene 8a6aa92fb1 [HIL] Fix type of array element
7 years ago
Mehdi Bouaziz 1cd1dc580d Errdesc.find_in_node_or_preds: got rid of ref
7 years ago
Mehdi Bouaziz 0ba993fb68 Procdesc.specialize_type_proc: fold -> filter_map
7 years ago
Mehdi Bouaziz 6b88176189 fold_slope_range, java_get_vararg_values: got rid of refs
7 years ago
Mehdi Bouaziz 6c58614f40 cArithmetic_trans: simplification
7 years ago
Jules Villard 575fd04a6e [build] move testDeterminator.mli too
7 years ago
Ezgi Çiçek 1227cd1ff8 Fix `min` in polynomial temporarily
7 years ago
Dino Distefano 9b18d87427 Moved TestDeterminator module
7 years ago
Dino Distefano d922b37ab8 Making Test Determinator parametric to Java and Clang
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
Dulma Churchill 81436c791f [retain cycles] Eliminate false positives when expression is null
7 years ago
Dulma Churchill 3b0f821fde [retain cycles] Remove false positives about modelled types
7 years ago
Sungkeun Cho cac08598a0 [inferbo] preciser widening of bound
7 years ago
Sam Blackshear ee4584e2e2 [quandary] off-by-default
7 years ago
Jules Villard 8715c4f892 [clang] make switch statement translation more robust
7 years ago
Dulma Churchill 20de2f66ad [objc frontend] Log Skipped declaration inside a class directly instead of throwing an exception
7 years ago
Jules Villard dd22e187ef [java] delete unused `models` field in `ZipLib.zip_library`
7 years ago
Jules Villard 92c129dc4e [cfg] rename `Cfg.is_proc_cfg_connected` to `Procdesc.is_connected`
7 years ago
Nikos Gorogiannis 818d359675 [racerd] reorg domain module
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
Nikos Gorogiannis dde2000e75 [racerd] disambiguate duplicate reports due to method overloading
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
Nikos Gorogiannis 0563eacbb0 [racerd] remove code and references to being sound
7 years ago
Dulma Churchill 4687573a48 [clang] Removes a crash when unexpected declarations are found in toplevel class declarations
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
Dulma Churchill 87d1f0f241 [clang] Make an assert false into incorrect_assumption as it is happening in prod
7 years ago
Mehdi Bouaziz 1898ef3a7a [Summary] Move payloads to a separate module
7 years ago
Mehdi Bouaziz 15b77c6a55 Move get_phase from Tabulation to BiabductionSummary
7 years ago
Jeremy Dubreil 6a91ad4097 [infer][eradicate] model `android.net.Uri.parse(...)` as not accepting null parameter
7 years ago
Jeremy Dubreil fe0debedb6 [infer][buck] run Infer in single core on Buck projects
7 years ago
Sam Blackshear 5ed2016899 [clang] basic support for exceptional control-flow
7 years ago
Jules Villard 316da14857 [clang] minorish improvements
7 years ago
Sam Blackshear 85b8087f66 [quandary] de-prioritize command line flag sources
7 years ago
Daiva Naudziuniene 4e821129a4 [cfg] Log if the cfg is broken for a join node or not
7 years ago
Sam Blackshear d70d23c5f3 [quandary] treat Fragments like other Context types
7 years ago
Dulma Churchill 27a7f2e798 [linters] Do not report mutable local variable in weakSelf and strongSelf
7 years ago
Mehdi Bouaziz 8615091615 [Summary] Pp simplifications
7 years ago
Mehdi Bouaziz 7f8511c2df [Summary] move Stats and Status to modules
7 years ago
Mehdi Bouaziz aaf346d115 [cost] Polynomial domain
7 years ago
Dulma Churchill 2ee4956c03 [objc] Add methods of ObjC classes and ObjC protocols to the tenv
7 years ago
Nikos Gorogiannis 7e5381b7a9 [starvation] model legacy synchronized containers
7 years ago
Nikos Gorogiannis 5d4007e176 [racerd] silence noise about wobbly paths, but leave a textual clue for statistical purposes
7 years ago
Martino Luca 1916e4fa0f Adding a new ATD-based parser for JSON data containing Java method declarations
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 f3cf0ec0f6 [Inferbo/cost][java] Model for __get_array_length
7 years ago
Mehdi Bouaziz 62fa99ad3f Simplified example showing problem with arrays
7 years ago
Dulma Churchill 7bbf349a76 [logs] Add the callee clang_method_kind and the callee source file to the skip logs
7 years ago
Jose Blanco 6ca1b69b6f [infer][PR] fixed typos
7 years ago
Oliver Castillo fb4e7ee4a4 [infer][PR] Fix spelling errors
7 years ago
Jules Villard 3aa6fdf1ce [rename] specs -> summary, Summary -> SummaryPayload
7 years ago
Nikos Gorogiannis ecfa29b083 [starvation] dedup deadlock warnings
7 years ago
Jules Villard d207f29287 [specs] move biabduction-specific stuff to BiabductionSummary.ml
7 years ago
Jules Villard 766a16cd90 [clang] enforce that `instruction` always returns one SIL expression
7 years ago
Jeremy Dubreil ed0c550905 [infer][genrule] add an option to make the genrule integration compatible with the Buck cache
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
Jeremy Dubreil 8ce79a0613 [infer][backend] no longer rely on make to drive the Infer internal parallelism
7 years ago
Dulma Churchill afe511b53d [biabduction] Support finding skip reasons from attributes for clang too
7 years ago
Daiva Naudziuniene 63f1a341b5 [cfg] Filter out join*->destructor->exit nodes as being not broken
7 years ago
Jules Villard dfe2ad5229 [camel] call `Format.pp_print_*` directly where appropriate
7 years ago
Jules Villard 1fd11ee3cc [log] add colors to console output
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
Mehdi Bouaziz d7024298f9 [cost] Implem-agnostic abstract domain name
7 years ago
Mehdi Bouaziz 131ae4a801 [itv] Prettier print
7 years ago
Nikos Gorogiannis a7bd92de2f [starvation] enable starvation checker
7 years ago
Daiva Naudziuniene 28b696881c [minor] Use List.is_empty instead of List.length equal to 0
7 years ago
Daiva Naudziuniene 5e6c859922 [cfg] Filter out more benign broken cfgs
7 years ago
Dulma Churchill c24ff02bb4 [biabduction] Add to the skip reason when the method comes from a protocol
7 years ago
Jeremy Dubreil bc6afc5d32 [infer][config] remove the per_procedure_parallelism option which was always true
7 years ago
Ezgi Çiçek fcb83a949f implement missing CXXInheritedCtorInitExpr
7 years ago
Nikos Gorogiannis c104ea11dc [racerd] switch to external issue logs
7 years ago
Jules Villard 7cf0a5e2cc [make] ignore copy-copy races in clang compilation db tests
7 years ago
Nikos Gorogiannis 58f37cb9d8 [starvation] do not report deadlocks when both traces on UI thread
7 years ago
Nikos Gorogiannis 538bcd9135 [starvation] store issues to issue-logs like linters do
7 years ago
Dulma Churchill 7533092037 [clang] Make the frontend with compilation database fail with compilation errors
7 years ago
Dulma Churchill 4a2174a322 Revert "[clang] Make the frontend with compilation database fail with compilation errors"
7 years ago