2677 Commits (822ffc6f62142737fe3c6bc660277ef8d1898713)

Author SHA1 Message Date
Jules Villard 5074388e25 [buck] always create multilinks for attribute files
8 years ago
Dulma Churchill 931d4442c8 [buck integration] Add buck flavor option to use for getting dependencies
8 years ago
Andrzej Kotulski de6c396800 [docs] Extend src/clang/README.md with info about AST
8 years ago
Jules Villard f5ee50e7b5 [graphql] kill unused files
8 years ago
Sam Blackshear 1157364a09 [preanalysis] kill copy-propagation code
8 years ago
Sam Blackshear 557faa4a46 [bi-abduction] use ProcCfg instead of file CFG
8 years ago
Andrzej Kotulski 6ca447fa6a [C] Fix issue with enum initialization lists
8 years ago
Andrzej Kotulski 88b74d524d [C++] Rewrite initListExpr_trans
8 years ago
Dulma Churchill c435ba2c76 [linters] Add a reset option for linters-def-folder
8 years ago
Sam Blackshear 7be5df384e [quandary] stack allocation of array as sink
8 years ago
Sam Blackshear ccdf15a1ca [quandary] vector and array access as sink
8 years ago
Sam Blackshear 9c99c38b22 [quandary] handle procedures that have name conflict with sinks, but different number of args
8 years ago
Sam Blackshear d850492ffe [cleanup] kill condition_is_assignment check
8 years ago
Jules Villard 679b125ac4 [trace] infer subcommand for inferTraceBugs
8 years ago
Jules Villard b2ee1152fe [prover] do destructive normalization to prove more
8 years ago
Sam Blackshear 91d518979b [quandary] log internal error when taint sink index doesn't match
8 years ago
Sam Blackshear 4b8a5683aa [java] fix noexcept hack
8 years ago
Dulma Churchill 76629ee9a4 [buck integration] Implement a way of getting the compilation database for dependencies of given targets
8 years ago
Jules Villard de86c12a9a [diff] suppress console output in report called from diff analysis
8 years ago
Jules Villard 6a4e4d4b6a [diff] support for --gen-previous-build-command-script
8 years ago
Jeremy Dubreil 34d10fdede [infer][cleanup] remove some left-over use of the Eradicate analyzer entry
8 years ago
Sam Blackshear 73dba57e45 [cleanup] remove useless append_instrs on empty instruction list
8 years ago
Jia Chen b68770d592 [infer][backend] Teach the biabduction analysis more simplification rules
8 years ago
Sam Blackshear 6d001ee566 [access paths] optional index expression for arrays
8 years ago
Sam Blackshear b61a68e859 [quandary] HTML creation as a sink
8 years ago
Jia Chen 5deffbce24 Teach the prover more simplification rules
8 years ago
Jia Chen a718ebe8ec [frontend] Additional information for the backend to distinguish between pass-by-val args and pass-by-ref args
8 years ago
Jules Villard 766a73d80c [buck flavors] make `infer run ...` use #infer-capture-all
8 years ago
Daiva Naudziuniene 7a3decf7f7 [ThreadSafety] Treating lock_guard destructor as Unlock.
8 years ago
Jeremy Dubreil 93ad3773fc [infer][biabduction] no longer catch the Unix errors during the symbolic execution
8 years ago
Jeremy Dubreil 2a8e192280 [infer][biabduction] disable the reporting of return value ignored
8 years ago
Jeremy Dubreil 99b412e165 [infer][checkers] remove the Eradicate analyzer option
8 years ago
Sam Blackshear f83284ad7c [access paths] make raw access paths the default, move abstraction into AccessPath.Abs module
8 years ago
Sam Blackshear 25d9f940fe [dead stores] fix FPs due to capture by ref
8 years ago
Sam Blackshear 36ea71a983 [HIL] add function for getting type of HIL expression
8 years ago
Jeremy Dubreil 15a8848502 [infer][biabduction] always reuse the same abduced return variable for unknown methods in Java
8 years ago
Jules Villard 4958130297 [reportdiff] take key into account for file renamings
8 years ago
Daiva Naudziuniene f12616cea5 [destructors] Add scope management to clang frontend
8 years ago
Jules Villard 6f3cdd462d [report] make --report-hook show up in `infer --help`
8 years ago
Dulma Churchill 00c1b354e1 [linters] Improve to_string method for boxed values
8 years ago
Dulma Churchill d0858c7770 [linters] Improve the to_string method for string constants
8 years ago
Jeremy Dubreil a292620a69 [infer][backend] No longer swallow the process failures unless --keep-going is passed from the command line
8 years ago
Mehdi Bouaziz 5ea80fdb82 [inferbo] Remove temporary logical variables
8 years ago
Jeremy Dubreil 53278f780c [infer][biabduction] simplify the symbolic execution of the execute load instruction
8 years ago
Jeremy Dubreil 7680c83f45 [infer][build] enable the OCaml compiler unused value declaration warning
8 years ago
Sam Blackshear c6ee53de50 [thread-safety] relax treatment of array aliasing
8 years ago
Jules Villard 854b8f30bd [CLI] always pass --issues-txt to the report hook script
8 years ago
Jules Villard fe01f47e41 [clang] correct sizeof info
8 years ago
Sam Blackshear 6b792e0015 [thread-safety] track container reads and report read/write races
8 years ago
Jules Villard cfecff03c3 [reportdiff] allow "current" and "previous" to be specified in any order and among other fields in file_renamings.json
8 years ago
Jules Villard 0c7f08d29d [wibble] `driver_mode` -> `mode` in `Driver` module
8 years ago
Jules Villard 833b093174 [diff] make use of --changed-file-index
8 years ago
Jules Villard a5393e9a37 [diff] set reactive when `infer-diff` is invoked
8 years ago
Jules Villard 3c215b8484 [diff] run driver prologue and epilogue before diff analysis
8 years ago
Jeremy Dubreil e0ad3a9d75 [infer][differential] remove the option to prevent the conflicts between Eradicate and Biabduction
8 years ago
Jeremy Dubreil f2cb85e3ab [infer][backend] remove unused code
8 years ago
Sam Blackshear 8fde27014a [absint] add widening threshold to crash hard in the face of likely divergence
8 years ago
Josh Berdine b36eaa2618 [clang] Disable -fembed-bitcode
8 years ago
Sam Blackshear c2acc670ef [cleanup] remove unused param from supertype_find_map_opt
8 years ago
Jia Chen f658690846 Whitelist more iterator-related functions and classes
8 years ago
Sam Blackshear 1b35411a5f [thread-safety] fix understanding of non-atomic writes to doubles/longs
8 years ago
Sam Blackshear 8ab998acf5 [obj-c] don't warn that self might be null
8 years ago
Sam Blackshear e43090bdc2 [java] translate `final` keyword as annotation
8 years ago
Jia Chen 7642d86c68 Oversized shift no longer produce an assertion failure
8 years ago
Radu Grigore e52b3f22b5 [infer][PR] Flush output after printing bugs in txt format.
8 years ago
Jules Villard ed0da85f6c [python] kill unused --android-harness option
8 years ago
Sam Blackshear df3590c407 [thread-safety] refactoring to make it easier to add container reads
8 years ago
Andrzej Kotulski c2207f5b06 small fixes to infer/src/*/README.md files
8 years ago
Jeremy Dubreil 9cf8d0fd3b [infer][java] fail early on broken CFGs
8 years ago
Jeremy Dubreil bf11a27158 [infer] merge --failures-allowed and --keep-going
8 years ago
Jeremy Dubreil 7dc3232f5f [infer][biabduction] no longer catch the exceptions by default during the symbolic execution
8 years ago
Sam Blackshear cb9c768c61 [clang] translate vars captured by lambda
8 years ago
Jia Chen c9a2dcf7b1 Added constant-folding support for shifting
8 years ago
Dino Distefano a386ef5e83 Adding predicate for identify a selector with a particular name
8 years ago
Martino Luca a15d868fb0 Upgrading Infer to Clang 5.0
8 years ago
Jia Chen c4f153947b Removed unused option `allow_missing_index_in_proc_call`
8 years ago
Sam Blackshear 2dcde3a812 [thread-safety] make a distinguished access kind for container writes
8 years ago
Jeremy Dubreil f49d292c3b [infer][backend] remove the bi-abduction based code for taint analysis
8 years ago
Jeremy Dubreil fd4fbe163c [infer] make sure we never swallow the failures when analyzing the models
8 years ago
Sam Blackshear 9246d1357c [thread-safety] temporarily disable non-threadsafe interface checks
8 years ago
Jia Chen a8897c2412 Properly model the copy semantics of NSString.stringWithUTF8String and NSString.stringWithString.
8 years ago
Sam Blackshear 853d476f13 [liveness] fix bug in usage of OneInstrPerNode CFG
8 years ago
Sam Blackshear ecf9c1b402 [quandary] expose actuals to Source.get
8 years ago
Jules Villard 845114f570 [al] precompute regexps
8 years ago
Sam Blackshear 73f3eee9cd [checkers] use liveness analysis to create dead store checker
8 years ago
Sam Blackshear 1fb9fb48f5 [thread-safety] warning when interface method is called from thread-safe context without annotation
8 years ago
Jules Villard 54fdab889a [driver] do not complain if results directory is empty
8 years ago
Jules Villard fb9cad4ea7 [utils] `Utils.dir_is_empty` was always returning `false`
8 years ago
Jules Villard a6632d8039 [make] restore incrementality of builds
8 years ago
Sam Blackshear 58a7cc48c1 [java integration] use argfile when trying to store a lot of data in the environment
8 years ago
Sam Blackshear 03120a337e [thread-safety] refactor ThreadSafetyDomain.Access to make it easier to add new access kinds
8 years ago
Sam Blackshear 5784357322 [thread-safety] make Pool subclasses return ownership
8 years ago
Jia Chen acb0650e96 Preserve the name of abduced by-ref logical variables in re-execution phase
8 years ago
Jia Chen 217363f5d6 Whitelist comparison operators and their equivalent functors in <functional>
8 years ago
Jia Chen 6c874957d0 Turn the analysis on for std::pair
8 years ago
Jia Chen 3bacba762a Whitelist the constructors+conversion operators+destructors for classes listed on whitelisted_cpp_classes
8 years ago
Jia Chen c80812453f Fix a corner case in Normalize.normalize where it could drop useful information during normalization
8 years ago
Mehdi Bouaziz e828b0bf8a [pp] hv box for printing collections
8 years ago
Sungkeun Cho 2091a529b1 [inferbo] Avoid precision loss on pruning
8 years ago
Sam Blackshear 52577c0a69 [CLI] don't allow the Java buck integration to store too much data in an environment var
8 years ago
Kyriakos Nikolaos Gkorogiannis 410728d18f [thread-safety] Interprocedural escape analysis for formals/locals (essentially step (3) in Sam's list).
8 years ago
Andrzej Kotulski d4c728913a [clang] Ignore all -mllvm args passed to clang -cc1
8 years ago
Dulma Churchill 416478d453 [linters] Predicate for checking enum constants
8 years ago
Sam Blackshear 29f686d245 [buck] include hash of .inferconfig in cache key
8 years ago
Jeremy Dubreil bafd1cf412 [infer][java] Infer should not suggest @Nullable on captured parameters
8 years ago
Jules Villard 297254d15e [buck] create log files erase at the end of the run
8 years ago
Jules Villard 5dd4b1c870 [build] avoid race condition, and do not run atdgen twice, add ocaml_clean
8 years ago
Jules Villard d07c8a0403 introduce new "diff" command
8 years ago
Jules Villard b0c2cfd7d4 [config] kill --bugs-json option
8 years ago
Jules Villard 9a2746c143 [make] fix javac capture
8 years ago
Josh Berdine 6bbb186ce2 [format] Attach docstrings to be warning 50 clean, other doc fixes
8 years ago
Andrzej Kotulski e366b0d9b5 [clang] Fix expression statement with conditional inside
8 years ago
Jules Villard 36b6ab1779 [log] die in a proper fashion
8 years ago
Jeremy Dubreil ad54126dab [infer][ondemand] add a `--keep-going` command line option to specify when to catch the exceptions raised during the analysis
8 years ago
Jia Chen 0b641edaac Do not assign the hidden field when processing init list initialization for objective c
8 years ago
Sungkeun Cho 1531a3d538 [inferbo] Pruning return value of function call
8 years ago
Dulma Churchill 4a6652faef [linters] Do not report mutable local variable in components advice on static locals
8 years ago
Dulma Churchill 7c384669eb [linters] Add a new linter UNAVAILABLE_CLASS_IN_SUPPORTED_IOS_SDK for checking unavailable classes in supported ios sdk
8 years ago
Josh Berdine bab3d81cb0 Convert Reason to OCaml, and auto-format OCaml
8 years ago
Mehdi Bouaziz 7411298def [cleanup] Killed Const.Cptr_to_fld and Binop.PtrFld
8 years ago
Josh Berdine f07de2d9c9 Replace long structured string literals with 'quoted strings'
8 years ago
Dulma Churchill 8e078c33d7 [linters] Print active linters to the stdout when --print-active-checkers is passed
8 years ago
Jules Villard e79f3837c3 [CLOpt] allow to override the subcommand in infer sub-processes
8 years ago
Jia Chen c1905b87b1 Making the report blacklist configurable through command line
8 years ago
Andrzej Kotulski b8e679dfeb [generic models] Implement sample generic models, add code to handle them
8 years ago
Jules Villard 3ed48e3196 [mvn] handle weird xml
8 years ago
Jules Villard 50dc0bcad4 [driver] refuse to nuke suspicious results directories
8 years ago
Dulma Churchill 144e062684 [linters] Take instancesRespondToSelector into account to avoid FPs
8 years ago
Dulma Churchill 3aa68e23d9 [linters] Be able to specify human readable bug type in the rules
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
Andrzej Kotulski e5556949d3 [backend] Introduce type substitution to expressions and instructions
8 years ago
Andrzej Kotulski 621ace48af [backend] Make Sil.subst type variant to allow more types of substitution
8 years ago
Dulma Churchill 431b5c6ede [linters] Disable filtering by path in debug or no-filtering mode
8 years ago
Josh Berdine a5c999db1e [threadsafety] Limited support for more access path forms
8 years ago
Jia Chen 89ef9356d0 Useful but insignificant changes in Prover
8 years ago
Mehdi Bouaziz d9b3b4d9ff [inferbo] Do not report location in model
8 years ago
Jules Villard 7e2b5dd161 [inferbo] printing every state of symbolic execution is verbose
8 years ago
Jia Chen 28b691d9fd [infer][backend] Perform deep match in Sil.exp_replace_exp
8 years ago
Josh Berdine 3161206534 [quandary] Continue past unbindable return values
8 years ago
Josh Berdine 926c6fee97 [threadsafety] Skip indirect calls in C++
8 years ago
Jia Chen 77c56de7a9 [infer][backend] Do not create abduced var for addresses of local variables that are marked as Aundef
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
Jia Chen afc8c1b762 [infer][backend] Deallocate local variables before formal parameters
8 years ago
Josh Berdine a98f5ab244 unbreak build
8 years ago
Josh Berdine b83ab88b65 [multilinks] do not warn when the multilink does not exist
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
Jia Chen 257e684392 [infer][checker] Put AnnotationSpec.sink_predicate and AnnotationSpec.sanitizer_predicate into actual use for annotation reachability checker
8 years ago
Jeremy Dubreil 987347ceca [infer][java] Infer should not suggest to add @Nullable for the field nullified on Fragement onDestroyView
8 years ago
Jia Chen b5b9c28a02 Add --write-html-regex-whitelist option that prints out debugging html only for selected source files
8 years ago