1364 Commits (ed85a129f55aeaaa29e42df5b1c7ccb1c968d0b1)

Author SHA1 Message Date
Josh Berdine f3d7d4d0d6 Deabbreviate CLOpt.exe constructors
9 years ago
Josh Berdine e1d49821fd Fix minor heap size calculation
9 years ago
Daiva Naudziuniene 6054b4c6d4 Improved ndk-build integration.
9 years ago
Josh Berdine 4e67ff6771 Fix bug in AttributesTable stats
9 years ago
Jules Villard 5ba5fcd4bb add -l option to limit parallelism, and pass -j and -l to the buck frontend
9 years ago
Peter O'Hearn da0933fd79 first try at dereferencing lock on monitor enter
9 years ago
Jules Villard a7fdb09600 add quick-test target
9 years ago
Josh Berdine 3a47b4064b Fix --help and friends that 2 phase parsing broke
9 years ago
Andrzej Kotulski 8d3e7e774e Move location of clang installation
9 years ago
Sam Blackshear c1b5a4b03e don't treat `x = &y` as a copy
9 years ago
Sam Blackshear b940c4dfac warning on guarded-by writes
9 years ago
Dulma Churchill b1e3d994bd Report more cases of null dereference as empty vector access
9 years ago
Dulma Churchill 52e8d8a560 Expand links under buck-out
9 years ago
Josh Berdine ec7af097eb Generalize extra options for make module
9 years ago
Josh Berdine bbec166174 Refactor Sil.typ into separate Typ module
9 years ago
Josh Berdine ce19de4a42 Show timeouts in progress bar in stats mode
9 years ago
Andrzej Kotulski a825831625 Model vector::resize(n) as nonempty vector
9 years ago
Josh Berdine a6a766b5f5 Refactor Sil.Int into separate IntLit module
9 years ago
Josh Berdine 3828bdd544 Make int_compare avoid overflow
9 years ago
Sam Blackshear 35f86fbe7b separate lazy dynamic dispatch from dynamic dispatch handling in preanalysis
9 years ago
Andrzej Kotulski 76f7912420 Make sizeof(std::shared_ptr) = 16
9 years ago
Peter O'Hearn 508d6a3ae7 optional model
9 years ago
Daiva Naudziuniene d707c717f0 ndk-build integration test
9 years ago
Josh Berdine 229ca26c8b Optimize normalization, substitution, renaming of array types
9 years ago
Daiva Naudziuniene b594d74d34 Adding LANG global to fix ndk-build integration.
9 years ago
Dulma Churchill 5adab3cb61 Fix StmtExpr
9 years ago
Daiva Naudziuniene 51f7d3ebb2 Integrating ndk-build with infer
9 years ago
Cristiano Calcagno de0f98389a Add sample checker to detect reads and writes to globals
9 years ago
Jules Villard d2f7cb44fa disable dead code checker on clang
9 years ago
Peter O'Hearn 8613f16c19 drop GuardedBy ui_thread warnings
9 years ago
Dulma Churchill a68c45c2a9 Fix dyspatch_async calls
9 years ago
Jules Villard 596823bd32 support `clang -c file1.c file2.c`
9 years ago
Sam Blackshear 1e60923e63 improve errdesc to account for copy-propagation
9 years ago
Sam Blackshear 49136a187b fixing bug in exceptional preds/succs in per-instr procCfg
9 years ago
Andrzej Kotulski b81b3f4791 Always run C compiler with -fsyntax-only
9 years ago
Jeremy Dubreil 0a2c47cdd5 Unify the way objects of a given type are created in the models
9 years ago
Jeremy Dubreil a756b7bff2 models for Preconditions.checkArgument
9 years ago
Jeremy Dubreil 17da853fa8 Do not angelically remove the file attribute on the reciever for virtual calls
9 years ago
Jeremy Dubreil 707a9ae51b Fix resource leaks in the testing framework
9 years ago
Josh Berdine a85a88d145 Extend Sizeof with final extensible array length
9 years ago
Dulma Churchill 5ed970efa9 Fix the return stmt that would not be the last instruction in the path in some cases
9 years ago
Jeremy Dubreil 3a2a6c7c44 Do not run the unsafe guarded access in prod
9 years ago
Jules Villard 1dc636a971 more concise API for creating build integration tests
9 years ago
Martino Luca c39f3b0768 Aggregate stats info emitted during analysis
9 years ago
Jeremy Dubreil 6d37b5ee6d Always collect the statistics and create a report file for Buck projects, even when the target contains no Java source code
9 years ago
Dulma Churchill 08c1c5bbf0 Change desc of npe message regarding pointer inside smart pointers
9 years ago
Sam Blackshear fd8a864c15 doing preanalysis on-demand
9 years ago
Dulma Churchill 60d9a19ae0 Fix bucketing for variables passed by reference
9 years ago
Josh Berdine c959af34cb Remove specs before rebuilding models
9 years ago
Sam Blackshear fa077c75d0 kill uses of Config.curr_language in subtyping part of prover.ml
9 years ago
Peter O'Hearn e7d36ed58a model of holdsLock
9 years ago
Jules Villard 533831a206 move all config variables to Makefile.config.in
9 years ago
Andrzej Kotulski 0f895b0684 Improve empty vector tests
9 years ago
Dulma Churchill bf9d194e43 Translate builtin_expect as its first argument. Avoids weird symb. exec. problems
9 years ago
Jules Villard e873a2c502 build the bdump dict again
9 years ago
Andrzej Kotulski 617ffab0ac Add @generated comment to icfg.dot files
9 years ago
Jules Villard 6bb3b30c36 do not crash when pygments crashes
9 years ago
Sam Blackshear 7ec8f59998 adding find_in_node_or_preds to clean up errdesc
9 years ago
Martino Luca f89e66dc60 Stats aggregator for frontend/backend/reporting
9 years ago
Sam Blackshear 83a14a3541 changing API to take pdesc instead of cfg
9 years ago
Jules Villard d1eff7436b build more things
9 years ago
Dino Distefano daf043bff1 Fixing shortcircuit in binary operator.
9 years ago
Andrzej Kotulski 1a98bc6492 update facebook-clang-plugins
9 years ago
Andrzej Kotulski 3699b9c0dc Fix translation of passing struct parameters by value
9 years ago
Cristiano Calcagno 8639042bc0 Remove dead renaming code
9 years ago
Jeremy Dubreil 91c25fe636 revert the use of the jar cache
9 years ago
Daiva Naudziuniene 10f1036937 Normalizing source path.
9 years ago
Sam Blackshear 04f88d60ea kill dead code created by D3288789
9 years ago
Sam Blackshear f45a7ec1eb using taint kind in taint sink specifications
9 years ago
Dulma Churchill de615594df Skip whitelisted functions form trace
9 years ago
Sam Blackshear 25578de26d redesigning abstract interpreter to allow easy composition of analyses
9 years ago
Andrzej Kotulski 99a58e691d Report empty vector access in tabulation.ml
9 years ago
Cristiano Calcagno 56cfac14da Fix issue in join where the origin of a variable would be lost in a loop.
9 years ago
Sam Blackshear e3e80dd2f0 don't report on private unguarded accesses
9 years ago
Sam Blackshear 36ee3730aa reporting error on unprotected access to field annotated with @GuardedBy
9 years ago
Dino Distefano f259863090 Fixing DIRECT_ATOMIC warning on models.
9 years ago
Andrzej Kotulski 8ccdff649f Report empty vector access instead of null dereference
9 years ago
Josh Berdine 1177f21aa4 Optimize deserialization retrying
9 years ago
Jules Villard 24cbba4355 Revert "[CSL] add model of locks inside the Object class"
9 years ago
Andrzej Kotulski 058f4455dc Modify model of std::vector
9 years ago
Josh Berdine 3fe1cbb6ec Fix bug in sym_eval
9 years ago
Josh Berdine 0947a67a7e Remove dead Sil.*_iter_types functions
9 years ago
Josh Berdine 66faedbf15 Optimize attribute loading
9 years ago
Jules Villard dbb6d08254 cleanup inferconfig stuff now that everything has been ported to the CLI
9 years ago
Jules Villard 21367b0e98 add matchers from inferconfig to the CLI
9 years ago
Jules Villard 9748a8f1a3 add {enable,disable}_checks from inferconfig to the CLI
9 years ago
Jules Villard 8f154144c0 add skip_clang_analysis_in_path from inferconfig to the CLI
9 years ago
Jules Villard aec3d0ccdf add skip_translation_headers from inferconfig to the CLI
9 years ago
Jules Villard 13cb7d8ed9 test OSS build as part of `make test`
9 years ago
Jules Villard c31db8436c remove infer/Makefile.in
9 years ago
Jules Villard 92aef2a411 fix make -j8 clean test
9 years ago
Cristiano Calcagno 08546ce7bb Move vim comments up.
9 years ago
Cristiano Calcagno 52e9ebc252 Enable syntax highlighting for Reason files on GitHub.
9 years ago
Josh Berdine d8f50c748b Revise the units of measure for perf stats
9 years ago
Jules Villard e695e14ee1 add various filter options from inferconfig to the CLI
9 years ago
Jules Villard 3fe032ccf0 accept any option through .inferconfig
9 years ago
Jules Villard 1c56310f39 build in one directory only
9 years ago
Andrzej Kotulski 87e5df5e44 Use pwd to resolve project_root when possible
9 years ago
Sam Blackshear 9fdd094a89 refactoring annotation reachability checker to allow custom src/sink annotations
9 years ago
Sam Blackshear 5b041d46ad remember when a method is synchronized
9 years ago
Peter O'Hearn 6f951e70d3 Non-resource model for locks
9 years ago
Sam Blackshear 3cea4279b6 adding locked proof obligation when lock is not held
9 years ago
Dulma Churchill 83e6ab1a20 Blacklist translation of files in inferconfig
9 years ago
Dulma Churchill 93fcf7be9f Skip cpp models from traces
9 years ago
Josh Berdine e211e489c7 Add target to convert files to reason
9 years ago
Jules Villard c03015768d create annotation files with valid json
9 years ago
Sam Blackshear a45844f409 identify reads of fields protected by @GuardedBy
9 years ago
Sam Blackshear 8cff90ed21 adding find_map_opt utility function
9 years ago
Sam Blackshear 3a7767213c adding some functionality to JSONOutputUtils
9 years ago
Sam Blackshear cfa7739963 hiding implementation of var
9 years ago
Cristiano Calcagno fd04004b43 Update README with Reason dependencies
9 years ago
Cristiano Calcagno 885beed0b1 Convert the Intermediate Representation to Reason.
9 years ago
Jules Villard bf7287e98b add model of locks inside the Object class
9 years ago
Dino Distefano aae1dbac3d Skipping reporting global variable warning on known non-expensive cases.
9 years ago
Jules Villard 438a4b430b fix github build
9 years ago
Sam Blackshear 1bb73ee3b6 adding map domain
9 years ago
Dino Distefano f37ed66888 Added new taint source/sink for iOS
9 years ago
Cristiano Calcagno b7b31982ee Fix the position of some comments.
9 years ago
Josh Berdine acb227ec30 Pre-parse inferconfig_home and project_root
9 years ago
Josh Berdine 88a2da91fc Add `make -C infer/src test_build` to `make test`
9 years ago
Sam Blackshear 83f511107b stop reporting handler leaks
9 years ago
Sam Blackshear 44edd9ba7f fix frontend crash when running on Java 8
9 years ago
Dulma Churchill 6d8d9f56c2 Reducing the scope of all frontend checks on declarations
9 years ago
Andrzej Kotulski bfce6bac47 Model empty vector access
9 years ago
Dulma Churchill 6c7c18e920 Model other functions from glog library
9 years ago
Jules Villard 944176bf67 load json config files lazily and at most once
9 years ago
Dulma Churchill 9b1bd712b5 Marking getters/setters as builtins only inside the definition of the class
9 years ago
Sam Blackshear 6e75c1e33f delete old preanalysis code
9 years ago
Sam Blackshear 3b6fa0939b adding taint kind to taint source specifications
9 years ago
Sam Blackshear 258e765d4e adding integrity source/sink annotations
9 years ago
Josh Berdine f1dabb747c Ease down InferPrint debug printing
9 years ago
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