1433 Commits (3d39fba622525ce6f127624f207e6bc69f8cec31)

Author SHA1 Message Date
Jules Villard 9de3f9792c print legend for the output
9 years ago
Josh Berdine 3e2fa59262 Reimplement command line options
9 years ago
Dulma Churchill d73d4ea177 Getting a more precise type when creating ObjC objects
9 years ago
Sam Blackshear c92bbf362b removing need to pass around lists of temporary id's in the frontend
9 years ago
Sam Blackshear 3f49f3a1d4 using liveness to add removetemps instructions
9 years ago
Josh Berdine a8c696338b Prepend to classpath in args file when present
9 years ago
Sam Blackshear ef1b76d27b new procCfg type with each node containing at most one instruction
9 years ago
Sam Blackshear 0becc32a88 factoring Node module out of CFG
9 years ago
Sam Blackshear f4335c7c4a Making BLog a privacy sink
9 years ago
Sam Blackshear 20925df57c removing unused deallocate param in nullify instr
9 years ago
Sam Blackshear 4fd2f52fe8 new analysis for adding nullify's
9 years ago
Dulma Churchill c3fbd5af29 Model CHECK macro and fix the model for builtin_expect
9 years ago
Jeremy Dubreil a352c0ffa8 Lazily load summaries from zip files
9 years ago
Josh Berdine 0cda42fc90 Add target to build single module
9 years ago
Jeremy Dubreil 6dfd1a317e Some cleanup and renaming
9 years ago
Sam Blackshear f60b17d8b9 correctly handling Sil.Letderef(Var, Var) Sil.Set(Var, _) in copy propagation
9 years ago
Josh Berdine 7ed2425320 Incorporate _tags file into Makefile
9 years ago
Josh Berdine 12e42fefd9 Fix perf stats filename for relative path clusters
9 years ago
Sam Blackshear b20ef20644 Allowing custom procCfg node types
9 years ago
Dulma Churchill 3defb52e4e Fixing broken test + adding objcpp tests to make test target
9 years ago
Andrzej Kotulski 3340a9e8a5 Create initial vector header for models
9 years ago
Sam Blackshear 6f6da12b2c don't nullify params/locals at beginning of procedure
9 years ago
Sam Blackshear ebcfae388a handling Set(Var, _,) as read of var in liveness analysis
9 years ago
Jules Villard d4521fd70d handle utf8 PWD
9 years ago
Dulma Churchill f88e5be395 Move the npes regarding smart pointers from B5 to B1.
9 years ago
Sam Blackshear 442cf66fdc don't fail when nullifying a var not in the prop
9 years ago
Sam Blackshear 49d32859cb adding optional postprocessing step to transfer functions
9 years ago
Sam Blackshear 90a5a5912f allowing extra data to be packaged along with procCfg
9 years ago
Sam Blackshear c7c1588830 getting rid of string parameter on privacy annotations
9 years ago
Sam Blackshear f3fe199a25 Forcing node ids of procCfg's to be Cfg.Node.id
9 years ago
Jeremy Dubreil b3baf72df8 Lazy dinamic dispatch: add missing case where the right hand side is a idenfier
9 years ago
Sam Blackshear e96b94204c widen at pre instead of at post
9 years ago
Jeremy Dubreil 71b6581823 No longer save the list of SKIP_FUNCTION warnings in the report
9 years ago
Dulma Churchill 54a3bdd455 Load the attribute file to get the getter/setter info from the procdesc
9 years ago
Jeremy Dubreil 8072d2c1e5 report errors when all the postconditions are error states
9 years ago
Jeremy Dubreil 049c353f52 Add a model for gzdopen
9 years ago
Sam Blackshear 46fc0bb1dc remove recursive call in try/with
9 years ago
Jeremy Dubreil 0737b9231d make Tabulation.prop_get_exn_name return an option type
9 years ago
Sam Blackshear ffc4e2d213 checking supertypes for annotations
9 years ago
Sam Blackshear b228584855 refactoring get_strict_supertyps to use iteration for more flexibility
9 years ago
Luis Cruz 51f4dc7a9a added Tenv.get_overriden_method
9 years ago
Jeremy Dubreil 3a856aa6f0 Add example of lazy dynamic dispatch calling a method from the interface
9 years ago
Andrzej Kotulski 2989105318 Decrease number of allocations in Prop.typ_normalize
9 years ago
Sam Blackshear 77791b7e8e warn on deref of nullable skip function
9 years ago
Sam Blackshear 843bcc1576 support tainting of annotated fields
9 years ago
Dino Distefano 83c1bbc832 Implementing a checker to warn initialization of global variables with mehod calls.
9 years ago
Andrzej Kotulski 1d909606aa Add option to replace path to clang internal headers
9 years ago
Peter O'Hearn 50081c7ccb alloc/dealloc model for locks
9 years ago
Jules Villard cb2d8dbe83 update clang command-line flags that we filter out
9 years ago
Jules Villard b9c9f20892 get encoding from `locale.getdefaultlocale()`
9 years ago
Dino Distefano a15095c854 Introducing a mechanism of white/black listing of checks/error reporting based on .inferconfig
9 years ago
Dulma Rodriguez 7671fe755f Skip translation and checks from headers in specified folders
9 years ago
Andrzej Kotulski 7a91f47131 Fix definition of std::hash<unique_ptr> in C++ models
9 years ago
Andrzej Kotulski 05c218d84f Declare local variable for conditional in procdesc
9 years ago
Jules Villard 07acaa3b97 remove bogus logging passing `None` to `utils.stdout()`
9 years ago
Sam Blackshear a10d7099c7 warning on deref of nullable retvals
9 years ago
Dulma Rodriguez be91fb5429 Fix toll free bridging
9 years ago
Andrzej Kotulski 1be7827981 Fix compilation issues with objc modules
9 years ago
Sam Blackshear 3e8b681135 big refactoring to improve API for subtyping related operations
9 years ago
jrm 9b6de7aeb0 Do not report @NoAllocation and @PerformanceCritical violations in "unlikely" branches
9 years ago
Josh Berdine 5710a3e887 Do not special case default InferPrint results_dir
9 years ago
Sam Blackshear 6113497020 delete callbackChecker and deps
9 years ago
Andrzej Kotulski 66d3d492f8 Fix translation of BinaryConditionalOperator
9 years ago
Dulma Rodriguez 8a1288860b Make alloc save a given procanem in the path
9 years ago
jrm 82670de0c8 improve errors traces for the @NoAllocation and the @PerformanceCritical checker
9 years ago
Cristiano Calcagno 45621ab171 Fix two issues in the prover.
9 years ago
Sam Blackshear e1e62be243 supporting new @PrivacySource/PrivacySink annotations
9 years ago
jrm 4b6d754164 Some cleanup of the models where calls to instanceof are not necessary
9 years ago
Sam Blackshear 596d8338ee dealing with exceptional control-flow in abstract interpreter
9 years ago
Dino Distefano b7ab1760a6 Translation of lambda [part one]
9 years ago
Sam Blackshear 6aca1cdfef exceptional procCfg
9 years ago
Jules Villard 70c8494625 opacify the type of node ids
9 years ago
Jules Villard ac6ef1d9f6 kill Sil.Goto
9 years ago
Sam Blackshear 988ceafbf0 adding try/catch/finally instruction to structured SIL
9 years ago
Cristiano Calcagno 054ad223a8 Fix control-flow graph shape when conditional is last instruction.
9 years ago
Dulma Rodriguez d366bb970b Create the procdescs for frontend checks only when needed
9 years ago
Josh Berdine 7a5cc8f42c Add make target for module dependency graph
9 years ago
jrm ad3e32d935 Fix resource leak false positive with the resource wrapper java.io.DataInputStream
9 years ago
Sam Blackshear f8ecbd800a moving noAllocation checker into AbsInt framework
9 years ago
Josh Berdine a5e1a6c77e Report time and memory stats
9 years ago
Dulma Rodriguez 6b2b76d956 Translate dynamic arrays to cpp classes
9 years ago
Sam Blackshear fa0184be87 adding string param to PrivacySink and PrivacySource annots
9 years ago
Josh Berdine 5481f14768 Remove dead code introduced in 41e99357
9 years ago
Andrzej Kotulski 590f73b59f Translate functions/methods from headers when they are referenced
9 years ago
Josh Berdine b881887bf2 Refactor Utils.SymOp into separate module
9 years ago
Sam Blackshear 607621920f PrivacySource and PrivacySink annotations
9 years ago
Josh Berdine e1020c8ebe Remove -open(Utils) compile flag hack
9 years ago
Andrzej Kotulski 037b27d465 Put goto label map into Context instead of one global map
9 years ago
Sam Blackshear e468d3d189 using address equality optimization in all abstract domains
9 years ago
Sam Blackshear 378ab69558 consistent API and usage for extracting Java types from strings
9 years ago
Josh Berdine 35e1a8740a Add checkcopyright to test build
9 years ago
Sam Blackshear 15aaa39fea allowing class-level Expensive and PerformanceCritical annotations
9 years ago
Andrzej Kotulski e495a81942 Remove parent_dec from translate_one_decl
9 years ago
Josh Berdine 213fe46c89 Move ml_loc and operations to Logging
9 years ago
Sam Blackshear 0a14ac8e2a pair domain
9 years ago
Sam Blackshear e54db73bab pass tenv to the transfer functions
9 years ago
Andrzej Kotulski 64bb3b62b3 Use variable stmt location info in init_res_trans
9 years ago
Cristiano Calcagno dbbf3b8758 Fix issue in merge of captured buck targets where .start file was overwritten.
9 years ago
Dulma Rodriguez bc3134dd32 Translate initializing arrays of C++ classes
9 years ago
Sam Blackshear b5b4d436ba ContentResolver methods that open files are sinks
9 years ago
Josh Berdine 61c5a80567 Clean files generated by setup.sh
9 years ago
Dulma Rodriguez 44491679cf Fix broken tests in master
9 years ago
Josh Berdine 6278dc7200 Additional modeling of NS collections
9 years ago
Sam Blackshear e9cb9f4352 assign pointer type checker
9 years ago
Josh Berdine ee206dbc12 Simplify NCPU computation and avoid fork bombs
9 years ago
Sam Blackshear 44a6bf7128 move Var into its own module
9 years ago
Sam Blackshear c499645f6f better names in AbstractDomain and TransferFunctions modules
9 years ago
Sam Blackshear 967dcec7f1 liveness analysis and unit tests
9 years ago
Dino Distefano 1b21869108 Disabling the NSNotification center error from the backend
9 years ago
Dulma Rodriguez bbd09d39dd Remove modelling of setObject:forKeyedSubscript: of NSMutableDictionary to mean a crash when object is nil
9 years ago
Andrzej Kotulski 89e3962347 Remove source file filtering in clang_wrapper
9 years ago
Andrzej Kotulski 19bc559440 Don't skip objc tests on unknown versions of xcode
9 years ago
Dulma Rodriguez cb45e38f7f Fix broken frontend test in master
9 years ago
Andrzej Kotulski bfde405495 Fix detection of gcc version in models
9 years ago
Sam Blackshear 7166a4856c nullifying vars captured in blocks
9 years ago
Andrzej Kotulski f1b68fe5b9 Always define static_assert(...) to do nothing
9 years ago
Jules Villard 660250dcf7 move Dom.JoinState to its own file
9 years ago
Cristiano Calcagno 031f433b15 Print timing information in InferClang debug mode.
9 years ago
Cristiano Calcagno a386cf7dbf Fix quadratic behaviour of collect_res_trans.
9 years ago
Cristiano Calcagno 8759017f7c Store proc attributes inside bucket directories.
9 years ago
Sam Blackshear aa1588372e using address-taken checker in liveness analysis
9 years ago
Cristiano Calcagno d2ff52e17c Fix some issues with merging the capture from several buck targets.
9 years ago
Andrzej Kotulski a8de56e9bf Include C++ models only in --cxx mode
9 years ago
Jules Villard 72c2a098ab relative paths for infer and inferTraceBugs targets
9 years ago
Andrzej Kotulski 69860628a7 Better detection of stdlibc++/libc++ and C++11
9 years ago
Josh Berdine 9539b430f7 Create symlinks in near future when merging
9 years ago
Sam Blackshear c8b87ed0c8 passing caller pdesc into the transfer functions
9 years ago
Jules Villard f813b801ee change external buckversion
9 years ago
Sam Blackshear 6504b58802 support for interprocedural checkers
9 years ago
Jules Villard 27f4b99a7a create "install" target
9 years ago
Jules Villard 2a41d7b0ff always create .start if it doesn't exist
9 years ago
Josh Berdine b4bc7904f5 Move SymExec.lookup_java_typ_from_string to Tenv
9 years ago
Jules Villard f0512bcd91 create infer/bin/ symlinks from the makefile
9 years ago
Jules Villard 9f10b09688 add cmake to the list of make-like tools
9 years ago
Josh Berdine 61d2a50809 Simplify interface of SymExec
9 years ago
Jules Villard a093780885 add configure to the list of make-like tools
9 years ago
Josh Berdine fd062cf736 Refactor SymExec.ModelBuiltins into toplevel module
9 years ago
Cristiano Calcagno 509a666ee0 Refactor Sil.pvar into a separate module.
9 years ago
Cristiano Calcagno 53702e43e8 Created IR folder for the intermediate representaion files.
9 years ago
Sam Blackshear c03f39f20c Fixing some issues with Obj-C blocks
9 years ago
Josh Berdine 2dcd93204c Refactor SymExec.Builtin into toplevel module
9 years ago
Josh Berdine 6ae225dd62 Merge captured targets after parsing args
9 years ago
Cristiano Calcagno d41d452b67 Make eradicate work in the absence of procdescs for callees.
9 years ago
Josh Berdine 97bc95e8c9 Allow relative or absolute names in ondemand_file
9 years ago
Jules Villard bc5dc80df6 waf support
9 years ago
Dulma Rodriguez c0e5365458 Translate delete of arrays with the correct destructor
9 years ago
Dino Distefano b7e93737df This diff exclude names containing queue from the strong delegate warning
9 years ago
Dulma Rodriguez 0c5bca7a4b Translate arrays created with new
9 years ago
Jules Villard d95ed8e9a7 write filenames as ascii only
9 years ago
Jules Villard 588cdcde42 options to run selective tests in build_integration_tests
9 years ago
Josh Berdine 63b1df9966 Print usage message when cl arg parsing fails
9 years ago
Jeremy Dubreil ebe82340b9 No longer create procedure description for the callees when running the checkers
9 years ago
Jeremy Dubreil 319cc9334e Create the procedure description of the callee when running the capture only, because Gradle uses this
9 years ago
Dulma Rodriguez c6524d799f Translate C++ constructors after new
9 years ago
Jules Villard 037c257c4f Fix base results for the Objective C frontend tests
9 years ago
Jeremy Dubreil ff737edf93 Fix broken caching support for the Buck integration
9 years ago
Cristiano Calcagno e34e369835 Complete command-line support for reactive mode with buck on iOS.
9 years ago
Sam Blackshear a71caccc80 address-taken analysis and tests
9 years ago
Dino Distefano fc5d4897a5 Registered Observer check done by front-end
9 years ago
Andrzej Kotulski 65449c87ab Fix unique_ptr model
9 years ago
Cristiano Calcagno b7bc95e1f9 Add option -merge_captured to merge the result of capture for different targets.
9 years ago
jrm af80cdc168 Enable the printing of OCaml exceptions stack traces
9 years ago
Cristiano Calcagno c198d76631 Clean up the Procname module, and remove remaining assert false
9 years ago
Sam Blackshear 91ae1baebc massive refactoring of harness generation
9 years ago
Andrzej Kotulski 675009a2ee Add unique_ptr model
9 years ago
Dulma Rodriguez 9f7bfea98f Translate CXXStdInitializerListExpr
9 years ago
martinoluca c5d26439f5 Proactively merge infer-deps.txt and report.json files and emit results to stdout
9 years ago
jrm e734c1873d Fix cases of resource leaks not detected when the resource indirectly implements Closeable
9 years ago
Sam Blackshear fb5c5c8515 turning off copy-propagation
9 years ago
Sam Blackshear 9f24051d96 adding ounit to .merlin
9 years ago
Sam Blackshear f9bffe1e87 move remove_tmps and add_abstraction steps into the pre-analysis
9 years ago
Sam Blackshear dec843f5f5 copy-propagation analysis + tests
9 years ago
Sam Blackshear 2991bd3fc3 using address-taken analysis for nullify placement rather than alias analysis
9 years ago
Josh Berdine 97cb854e5c Model NSArray::arrayWithObject
9 years ago
Andrzej Kotulski 0a32ff4400 Translate std::move from system headers to improve analysis quality
9 years ago
Sam Blackshear ab1ac822f6 Replacing Ctuple with Cclosure
9 years ago
jrm 0b56374b11 Seprate the concept of @PerformanceCritical from the concept of @NoAllocation
9 years ago
Josh Berdine 66d865ff6a Accept command line options via environment vars
9 years ago
Cristiano Calcagno 86304b3d9c Prevent assert false from occurring on Java functions in Procname.
9 years ago
Jules Villard 4384870b44 move utils.Escape to its own file
9 years ago
Sam Blackshear 8913e38dbd getting rid of bottom
9 years ago
Dulma Rodriguez a62ccc7a05 Fixing init list expr when there is no variable or compound literal expression
9 years ago
Dulma Rodriguez 7ffb635719 Restore translating C++ methods only in cxx experimental mode
9 years ago
Sam Blackshear 7d10105060 moving tracecalls around so tests will pass on open-source build
9 years ago
Dulma Rodriguez 10a14a7324 Translate CXXTypeidExpr
9 years ago
Sam Blackshear 63f8a3e709 refactoring facebook-specific and open-source taint lists to fix open-source tests
9 years ago
Dino Distefano 45ae457150 Renamed files to reflect the new structure of the translation.
9 years ago
Nick Firmani 1c819770e2 Add SuppressViewNullability annotation
9 years ago
Deniz Türkoglu beaa9a6925 Add option to generate the report in PMD XML format
9 years ago
Dino Distefano ce0ae5c821 Refactoring in preparation of implementing C++ lambda
9 years ago
Cristiano Calcagno 010b57e7cc Add --continue option for reactive analysis to continue the capture.
9 years ago
Dulma Rodriguez 3d4942a748 Restore not translating header in testing mode
9 years ago
Cristiano Calcagno 3c4013d363 In debug mode, write html files for headers too.]
9 years ago
jrm cc4fcd6837 Add support for modeling @Expensive methods using .inferconfig
9 years ago
Jules Villard c637c10d0f Revert "[java] no longer catching Class_structure_exception"
9 years ago
Cristiano Calcagno 909473f3da Clean up code to produce html pages of analysis results in debug mode.
9 years ago
Cristiano Calcagno e71ae11cae Activate timeout logging in the progress bar when developer mode is on.
9 years ago
Andrzej Kotulski eb76a441f9 Initial implementation of shared_ptr model
9 years ago
Cristiano Calcagno b2969820a4 Avoid loading the cfg explicitly to find a proc desc.
9 years ago
jrm 81a59515e4 Simplify the code to collect the list of @SuppressWarnings annotations
9 years ago
Sam Blackshear 8d62fd12ca pretty-printable versions of common data structures
9 years ago
Dulma Rodriguez a4b87a0951 Translate destructor calls
9 years ago
Jules Villard 14f329ba59 bye bye logo
9 years ago
Dulma Rodriguez 91a2eaa5f1 Translate CXXPseudoDestructorExpr
9 years ago
Cristiano Calcagno a06d854364 Make the API of Exe_env return options instead of throwing exceptions.
9 years ago
Dulma Rodriguez c20ace4a1a Add flag cxx experimental to the clang frontend
9 years ago
jrm 793911c847 Add the possibility to analyze procedure descriptions on-demand without serialization
9 years ago
Sam Blackshear 7fb8f8b651 adding type-specific taint error messages
9 years ago
Sam Blackshear 15f0c7e384 adding "kind" for taint attribute
9 years ago
Jules Villard 527d26dd91 colorise issue messages
9 years ago
Jules Villard b03304e0d8 move color code to colorize.py
9 years ago
Cristiano Calcagno 7c464c5bac Cleanup toplevel InferAnalyze and include procedures in the progress bar.
9 years ago
Jules Villard 73d5a355f6 add mock gradle for e2e test
9 years ago
Jules Villard 1aa5b1e947 do not print source excerpts in bugs.txt
9 years ago
Jules Villard 09f5605a6e move build integration tests to infer/tests/
9 years ago
Cristiano Calcagno 71f81f102c Restore printing of html for procedures
9 years ago
Sam Blackshear 730a2afaaf more consistency with abbreviated functions names in abstract domain signature
9 years ago
Dulma Rodriguez edbd7854b2 Translate SizeOfPackExpr
9 years ago
Sam Blackshear ddfd35107c unit tests for abstract interpreter
9 years ago
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
Andrzej Kotulski 36fb1f202c Deal with empty parameter names
9 years ago
Jeremy Dubreil 70dbe8db74 Simplify the type comparison of Java classes
9 years ago
jrm 5da7823df5 The env variables used by the Infer backend were only passed in multicore mode
9 years ago
Sam Blackshear 7938fbb344 Fixing 'file name too long' errors
9 years ago
Sam Blackshear f3c7125dc1 build ocaml with debug tag to enable stack traces
9 years ago
Andrzej Kotulski da3a106541 Always translate CXXRecordDecl as Sil.Class
9 years ago
Cristiano Calcagno 58611b15d0 Cleanup of CMethod_signature.
9 years ago
Dino Distefano 5b91ec9f7f A fix for empty retain cycle
9 years ago
Sam Blackshear ef3912cbde Adding on-the-fly translation of types during pre-analysis
9 years ago
Cristiano Calcagno 5683fd8413 Fix collision of spec file names on case insensitive file systems.
9 years ago
Tony Cosentini ac5f092653 Target JDK 1.7 for annotations and processor jar for Android.
9 years ago
Cristiano Calcagno 1b4efcfc7a Enable the analysis of models in on-demand mode.
9 years ago
Jeremy Dubreil 8fcd094c64 Fix NPE in the annotation processor for SuppressWarnings
9 years ago
Andrzej Kotulski 75f4947cb1 Ignore type change in DerivedToBase cast
9 years ago
Andrzej Kotulski b08acedf29 Use clang for default argument resolution
9 years ago
Cristiano Calcagno 10286931ee Cleanup handling of global state, and add footprint mode to the values.
9 years ago
Cristiano Calcagno 7a7260635f Refactor the worklist data structures of the intraprocedural algorithm as non-global state.
9 years ago
Dulma Rodriguez f4bbd44212 Translate dynamic cast for C++
9 years ago
Tony Cosentini 75cca6b3d3 Add android.app.Service to whitelisted Android initializer classes.
9 years ago
Dulma Rodriguez 10fe998c12 Extending subtyping to C++
9 years ago
Sam Blackshear 82b1dd0572 adding support for source roots in maven integration
9 years ago
Andrzej Kotulski 262796d3bf Distinguish between C++ and objc class types
9 years ago
Andrzej Kotulski 9d7ab4b9c2 Translate conversion operators
9 years ago
Sam Blackshear be86e5d15d Exposing java_typ_to_string
9 years ago
Sam Blackshear 14e934205f implementing dynamic dispatch support for Java interfaces
9 years ago
Andrzej Kotulski 3dcd6490c2 Translate reinterpret_cast and const_cast
9 years ago
Cristiano Calcagno 7673d94600 Distinguish between class kinds: CPP, Java, Objc
9 years ago
Andrzej Kotulski bdab22a093 Support temporary objects (CXXTemporaryObjectExpr)
9 years ago
Andrzej Kotulski 44a6ec4f10 Fix return parameter handling
9 years ago
Cristiano Calcagno 74dbfd72b5 Fix issues with html output for debug in on-demand mode.
9 years ago
Andrzej Kotulski e329916e5b Add basic translation of CXXBindTemporaryExpr
9 years ago