964 Commits (8759017f7c6d118a8ee5e5c21130a9cfbb150621)

Author SHA1 Message Date
Sam Blackshear 2f44f3faa8 adding generic abstract interpreter
9 years ago
Sam Blackshear b62bdc46b6 adding scheduler abstraction and reverse postorder scheduler
9 years ago
Cristiano Calcagno 494dabf638 Simplify code in SymExec: cleanup and look up cfg.
9 years ago
jrm e123635122 Add support for @SuppressWarnings for Gradle and Ant projects.
9 years ago
Dulma Rodriguez ff3455452a Add trace to frontend checks
9 years ago
Dulma Rodriguez c9e5d27e0d Translate GCCAsmStmt
9 years ago
Sam Blackshear 85747084b5 adding dependency on ounit
9 years ago
Dulma Rodriguez 6c567f1104 Translate GenericSelectionExpr
9 years ago
Dulma Rodriguez ef3e516f6f Translate ImplicitValueInitExpr
9 years ago
Sam Blackshear 62965e8051 adding runner for OCaml unit tests
9 years ago
Sam Blackshear 177574c29e type signatures for abstract domains and transfer functions
9 years ago
Dulma Rodriguez d499d5fc8e Translate C++ exceptions
9 years ago
Andrzej Kotulski 7d425f22c2 Don't run rocksdb benchmark in debug mode
9 years ago
Sam Blackshear 65de2d9946 refactoring procCfg API to make it easier to mock
9 years ago
Sam Blackshear 2d89426170 fixing tenv_lookup
9 years ago
Sam Blackshear 337d2cc537 fixing tenv_add to add only struct_typ's
9 years ago
Sam Blackshear 749a649138 translating an expression returns its type
9 years ago
martinoluca 44502c1673 Merge infer-deps files generated by Buck
9 years ago
jrm 082ca6a90a Initial support for lazy dynamic dispatch
9 years ago
Sam Blackshear 82f2b7b6de make tenv a typename -> struct_typ map
9 years ago
Sam Blackshear 878bf938eb kill Tenum
9 years ago
Dino Distefano b7d6f2a3bd Fixed problem with null pointer dereference in c library models.
9 years ago
Cristiano Calcagno 89a2f2a7b4 Keep only on-demand infrastructure and delete the rest or the infrastructure.
9 years ago
jrm 761902afad for the @PerformanceCritical checker, skip allocations reports on subtypes of java.lang.Throwable instead of only java.lang.Exceptions
9 years ago
Cristiano Calcagno e0d5847eb8 Deprecate incremental
9 years ago
Dino Distefano c868f51b2d Introducing checker for observer of notification centers
9 years ago
Cristiano Calcagno 021cf213a6 Bypass the interprocedural algorithm in Fork with ondemand, and replace it with a simple iteration.
9 years ago
kstreee f400247d16 Fix missing import statement bug.
9 years ago
jrm 8ce56968d6 no longer report NULL_TEST_AFTER_DEREFERENCE in tracing mode
9 years ago
Jules Villard fcd0379d52 fix bug that made it crash
9 years ago
Jules Villard 1952f54d8c minor cleanups
9 years ago
Dulma Rodriguez 379d185d74 Sort the fields in the tenv at the end of translation as some translations need the original order
9 years ago
jrm 697778cc3b Add the annotation @IgnoreAllocations to stop tracking allocations whenever useless
9 years ago
Samuel Blackshear ed580c59e9 implementing procedure cfg wrapper
9 years ago
Cristiano Calcagno f3ba6c3906 Revamped Timeout module to save and restore seconds and symops.
9 years ago
Jules Villard 2277c23c60 move java-specific code out of analyze.Infer
9 years ago
Dino Distefano be8f25c90b Improved/simplified framework for frontend checkers.
9 years ago
Dulma Rodriguez 4264e94565 Fix problems with translation of InitListExpr
9 years ago
Jules Villard 9d080cadb1 move get_javac_args to jwlib.py
9 years ago
Josh Berdine 2c489371dd Revert "[ondemand][backend] Turn on on-demand infrastructure by default"
9 years ago
Peter O'Hearn bec08365de Part 1 of double unlock, locks as resources
9 years ago
jrm 1f5529c67e The @NoAllocation checker should not report on created exceptions
9 years ago
Cristiano Calcagno 16402cddc0 Save global state for abstraction for on-demand.
9 years ago
Cristiano Calcagno 90489d7f54 Always analyze procedures when analyze_models is set.
9 years ago
Andrzej Kotulski decb263b1d Fix translation when accessing reference type fields
9 years ago
Cristiano Calcagno ccd760b239 Fix pre-analysis crash in master.
9 years ago
Dulma Rodriguez 06f40efab8 Add extra dereference to the variable of the method call to find null dereferences when a method called with null.
9 years ago
jrm ba4dbef2d9 cleanup the Java divide by zero end-to-end test
9 years ago
jrm 73a07dc44e Fix gradle integration tests
9 years ago
Jules Villard 37c2d39dac move jwlib.FILELISTS to config.py
9 years ago
Jules Villard dc52ce8158 ignore errors as appropriate on input decode/output encode
9 years ago
Sam Blackshear cd002e5c46 fixing angelic mode for struct values passed by reference
9 years ago
Sam Blackshear 9f346ea1fc allowing abstraction of Tvar's
9 years ago
Jules Villard af5f4c6afd remove inaccurate output about analyzing 0 procedures
9 years ago
Andrzej Kotulski a83f544775 Make Sil.expand_type non-recursive
9 years ago
Jules Villard 88881581b3 use supplied javac instead of the one from PATH
9 years ago
Andrzej Kotulski e4a0e9bbf7 Translate CXXDefaultInitExpr
9 years ago
Cristiano Calcagno 2b1558af6d Turn on on-demand infrastructure by default
9 years ago
Cristiano Calcagno 57b4497663 Start reactive exploration from changed procedures only.
9 years ago
Josh Berdine cca3ecf15c Update .merlin warnings list and compile flags
9 years ago
kstreee a7e004472d Resolve a bug that Infer does not analyze procedures when the analyzer is run on '/'.
9 years ago
Andrzej Kotulski 7cb4165189 Set _FORTIFY_SOURCE to 0 when compiling with clang
9 years ago
Cristiano Calcagno 42ecddcf37 Add command line arguments for reactive mode.
9 years ago
Andrzej Kotulski 49bf38c56f Fix symbolic links in cpp tests after formatting diff (part 2)
9 years ago
Andrzej Kotulski 1fdead5958 Fix symbolic links in cpp tests after formatting diff (part 1)
9 years ago
Cristiano Calcagno c570d97ad8 Cleanup code for registering builtins.
9 years ago
Cristiano Calcagno bf2909dd34 Cleanup global state in module Fork.
9 years ago
Josh Berdine de31246399 Builtin.builtin_plain_functions is no longer used
9 years ago
Josh Berdine b54fbc2776 Add test_build target warnings not fatal otherwise
9 years ago
Josh Berdine 3a7f4b9d3f Add byte target
9 years ago
Josh Berdine 4e8008baf2 Simplify setting ocamlbuild options
9 years ago
Dulma Rodriguez 2fb2b3d9e1 Add the virtual flag of C++ methods in method calls
9 years ago
Josh Berdine c585383fba Let ocamlfind find include and lib files
9 years ago
Andrzej Kotulski 4584f7f6fc [clang-format] Reformat all c/cpp/objc sources with clang-format
9 years ago
Dulma Rodriguez c82a4c1cc1 Add the models to the intellij project that contains the tests
9 years ago
Andrzej Kotulski 50fc847c10 Compile C models again in C++
9 years ago
Andrzej Kotulski 9163b319a6 Fix whitespace issues from last diff
9 years ago
Josh Berdine a73d7be9a8 Remove unused support for ocaml < 4.02
9 years ago
martinoluca fc589ccf34 Fix encoding error while printing descriptions in stdout
9 years ago
Andrzej Kotulski 941a1c02fb Increase size of biniou buffer, add logging in case of failure
9 years ago
Josh Berdine 77b22ded03 Warn on unused identifiers
9 years ago
Josh Berdine 02056079cf Warn of unused values
9 years ago
Josh Berdine a87ef7e7ff Remove old front-end code
9 years ago
jrm c6d8cdc8ee Add support for @NoAllocation in the performance critical checker
9 years ago
jrm 14d4f862eb @Performance critical checker: compute the expensive call stack lazily when reporting errors
9 years ago
Sam Blackshear 091f31dd17 translating monitor exit/enter
9 years ago
Dulma Rodriguez 7721743f46 Model ObjC method isKindOfClass
9 years ago
Dulma Rodriguez efd3aeccc6 Using the attributes table to find out the method to call in virtual calls
9 years ago
Andrzej Kotulski f703d780da Translate headers located inside analyzed project
9 years ago
Josh Berdine a6d7bbb38b Warn of unescaped end-of-line in a string constant
9 years ago
jrm 4af130bf8d remove subtyping rule for the @PerformanceCritical annotation
9 years ago
Josh Berdine 55cb61dbda Warn of unused open statements
9 years ago
Josh Berdine b155168083 Open Utils implicitly
9 years ago
Josh Berdine 8a9f221119 Use Utils in jTransExn and jTransStaticField
9 years ago
Josh Berdine 7f231b8aa0 Move pi and sigma types from Dom to Prop
9 years ago
Josh Berdine 2fa5c5b4e9 Warn of unused types
9 years ago
Josh Berdine 89338c86e9 Warn of unused constructors
9 years ago
Josh Berdine 2e4f4a0c5f Warn of label omitted in function application
9 years ago
Josh Berdine 2f47142b94 Warn of unused loop index variables
9 years ago
Josh Berdine bd8284443c Warn of unused extension (exception) constructors
9 years ago
Josh Berdine 7e7d524e29 Enable -short-paths for better error messages
9 years ago
Josh Berdine 4f4b00fffa Enable -strict-sequence
9 years ago
Josh Berdine 675cfeb56c Enable -strict-formats
9 years ago
Josh Berdine 9bdd1a9d0f Enable -principal to check ambiguous code
9 years ago
Sam Blackshear 5833835289 dynamic dispatch for virtual calls in Java
9 years ago
Josh Berdine fb96eaabcd Make ocamlbuild obey make --silent
9 years ago
Josh Berdine 264038f3ee Make clean target obey --silent
9 years ago
Sam Blackshear bb793770b9 remove --no-cache option, which does nothing
9 years ago
Jules Villard 07822ff16e output infer source locations on --debug-exceptions
9 years ago
Dino Distefano e0fe2af712 Added a two new attributes: observer/unsubscribed_observer
9 years ago
Andrzej Kotulski 3320043217 Fix further problems with forward declarations in C/C++
9 years ago
Andrzej Kotulski 32a5cae175 Fix infinite loop in type expansion
9 years ago
Andrzej Kotulski 3db68bcb4c Create .start file when infer starts
9 years ago
Dulma Rodriguez 5db8fa4539 Remove tvars from the tenv
9 years ago
Sam Blackshear 556b9c121d improving error message from fragment retains View checker
9 years ago
Dulma Rodriguez bf90a64fb5 Fix the typing implication in the bi-abduction for non Java types
9 years ago
jrm 8eb73bf39d Turn on ondemand for the tracing mode
9 years ago
Cristiano Calcagno 2a926d8294 Remove uses of assert false to get original ml location.
9 years ago
jrm 38cb5b48ec Remove no longer useful model for java.lang.Thread
9 years ago
Andrzej Kotulski 8c832142b4 Don't add process type redeclaration unless it has definition
9 years ago
Sam Blackshear 7af27e07d5 deleting unused type_prop.ml
9 years ago
Dino Distefano c41cba92ea Fixed test for taint analysis
9 years ago
Sam Blackshear 5e9a21573b preventing Bad_footprint when passing struct value by reference
9 years ago
jrm 36cc1b0d2e Remove dead code. Feature now implemented in .inferconfig
9 years ago
jrm 904151888c fix treatment of linked list in Java
9 years ago
Dulma Rodriguez ac7959f2df Adding subtyping to ObjC
9 years ago
Jeremy Dubreil 208021fc7e Fix the buck integration for the analysis of Buck itself
9 years ago
Cristiano Calcagno 047eec5a6f Refactor callbacks for Eradicate and Checkers.
9 years ago
Dino Distefano c65947439f Implementing translation of CXXForRangeStmt
9 years ago
Jeremy Dubreil 6389cb9bd0 revert on-demand for the checkers now that the hash for long filename is fixed
9 years ago
Sam Blackshear d0cd8fca47 removed unused param footprint_part
9 years ago
Cristiano Calcagno 88e1d137ba Refactor State module and make OnDemand restore it after calls.
9 years ago
Sam Blackshear 0fbd333cab Checker that complains when Fragments don't nullify their Views
9 years ago
Cristiano Calcagno d31b041fba Replace CRC module with Digest.
9 years ago
jrm 3ece750c15 disable on-demand for the checkers while we fix the filename too long issue
9 years ago
Cristiano Calcagno 6be7266f1f Restore intraprocedural mode for Eradicate and Checkers
9 years ago
Cristiano Calcagno 34b62fc51c Inline Java synthetic methods systematically before writing the cfg to disk.
9 years ago
Cristiano Calcagno 987471d938 Remove unused code for cyclomatic complexity.
9 years ago
Sam Blackshear 526e155046 move resolve_method inside method_invocation
9 years ago
Cristiano Calcagno 41de08924b Indentation of command-line agruments.
9 years ago
jrm dba7e7124f revive the @PerforamanceCritical checker when using Buck
9 years ago
Andrzej Kotulski 49d7bdb6bd Translate CXXScalarValueInitExpr
9 years ago
Andrzej Kotulski 359ad9dd4b Translate constructor initializer
9 years ago
Andrzej Kotulski 1d6aea0fb9 Add typ to trans_state.var_exp
9 years ago
Andrzej Kotulski 7cabc86f77 Pass return parameter type in context
9 years ago
Peter O'Hearn 028ac24d46 Simple model for locks
9 years ago
Jules Villard b1d77e54aa add summary of the analysis to the standard output
9 years ago
Jules Villard cbb8810e2c make dotty field optional in json
9 years ago
Jules Villard e11395d199 print location of errors in infer source code in debug mode
9 years ago
Andrzej Kotulski 8545a0310e Treat xvalues as they were lvalues
9 years ago