445 Commits (7d5e129ac0ab97e0cb3382ad7cab85225cb62545)

Author SHA1 Message Date
Sam Blackshear 09242fc711 [Infer][backend] Refactoring attribute categories so as not to conflate resource and undefined attrs
9 years ago
Cristiano Calcagno 8c80856e97 [Eradicate] Fix regression introduced when adding support for @TrueOnNull and @FalseOnNull.
9 years ago
Sam Blackshear a50ecde01c [Infer][backend] Fixing inconsistency between exe_env file and proc_attributes file in harness generation
9 years ago
Sam Blackshear 62b57827c8 [Infer][java] Fixing bug where passing -deprecation flag to javac broke compilation
9 years ago
Cristiano Calcagno 0f8c3e7974 [eradicate][ondemand] Skeleton of on-demand analysis for Eradicate.
9 years ago
Cristiano Calcagno 28f5025862 [backend] fix verbose logging "The project root ... is not a prefix of ..."
9 years ago
Sam Blackshear 5104d852ee [Infer][backend] No longer crashing when -project_root is not a prefix of source file path
9 years ago
Cristiano Calcagno f1c5cb337e [Eradicate] Add support for modeling boolean functions that check if the argument is null.
9 years ago
Dulma Rodriguez a4cbf94de5 [clang] Replacing type void by type void star . Fixing bug in commit 41e0128cf71a399ddc183a7d12fd43dfdc493985
9 years ago
Andrzej Kotulski 4dac490e8d Update fcp to have newer clang
9 years ago
Dulma Rodriguez bd48a7d0dd [clang] Fixing eradicate tests
9 years ago
Andrzej Kotulski bc050c4188 [C++] Add inheritance information for C++ classes
9 years ago
Dulma Rodriguez 0b4fc3a979 [backend] make adding overriden methods during cluster generation only available in Java
9 years ago
Dulma Rodriguez a3e4d7a0fa Revert "Make clang_ast_t.ml* non recursive"
9 years ago
Andrzej Kotulski 5c671677b4 Make clang_ast_t.ml* non recursive
9 years ago
Dulma Rodriguez 65f4280d6e [clang] [3 of 3] Changes to the translation of record, classes and enums
9 years ago
Dulma Rodriguez 51e0e40bc7 [clang] [2 of 3] Dealing with custom ast expressions and flow of types in the frontend.
9 years ago
Dulma Rodriguez 8e547d197d [clang] [1 of 3] Replacing parser of types
9 years ago
Andrzej Kotulski 99e9d11902 [Test] Fix handling of symbolic links in tests
9 years ago
Sam Blackshear 2e2673df66 [Infer][ios] Reporting error when NSNumber * is coerced to boolean in a comparison
9 years ago
Sam Blackshear 7646777f7f [Infer][backend] Refactoring: adding attr_is_undef method
9 years ago
Cristiano Calcagno 629b09307f [Models] Add model for System.getProperty for Infer and Eradicate
9 years ago
Dulma Rodriguez 8a48ca9360 Revert "Revert "[clang] Removing the case of flagging npes in initialisers. This causes many FPs.""
9 years ago
Dulma Rodriguez eafa285e1d [clang] Moving log to debug mode
9 years ago
Cristiano Calcagno 401109b4eb [Eradicate] Allow assigning null to fields marked @InjectView to support ButterKnife.
9 years ago
Cristiano Calcagno 2eb0f47646 [eradicate] generalize domain from two fields (nullable, present) to a map
9 years ago
Cristiano Calcagno 708ec725f9 [backend] remove support for internal parallelism and simplify the interprocedural algorithm
9 years ago
martinoluca d7877bbda4 [Fixed] Specify to clang to use x86_64 to build models and tests for ObjectiveCxx
9 years ago
Cristiano Calcagno 1e6247c872 [frontend] generate fresh ids separately for different procedures in the cfg
9 years ago
Cristiano Calcagno 76c8b6e58b [backend] Reorganize the resolution of procedure attributes, fixing a bug where annotations of overridden procedures via spec files were not found.
9 years ago
Sam Blackshear b8579fe531 [Infer][Gradle plugin] Fixing issue where files are captured twice
9 years ago
Sam Blackshear 7911e7e54d [Infer][filtering] Implementing SuppressWarnings filtering and adding tests
9 years ago
Sam Blackshear e46b6d3c9d [Infer][filtering] Always using local_config to build procedure filter
9 years ago
Cristiano Calcagno ea7c13ff6c [backend][cleanup] Move proc_attributes to a separate module.
9 years ago
Sam Blackshear a9b6f33940 [Infer][filtering] Adding support for filtering by procname using .inferconfig
9 years ago
Sam Blackshear 09eb65f4e2 [Infer][backend] Fixing Not_found when source for proc can't be found during Makefile generation in InferAnalyze
9 years ago
Jules Villard 6e29be8559 output sensible version number without git or .git
9 years ago
Cristiano Calcagno 6f65486942 [backend][cleanup] move fields in common to Cfg.Procdes and Specs.summary to proc_attributes.
9 years ago
Cristiano Calcagno 78f65b6dd7 [eradicate] handle methods overridden in other files
9 years ago
Dulma Rodriguez c6b550d5f0 [clang] Generating procedures only if there isn't a spec for them already.
9 years ago
Rohan Jacob-Rao 9643bdb1c6 Clean up command line argument filtering.
9 years ago
Rohan Jacob-Rao 9b3f291b99 Refactor main file to handle command line arguments and relative source paths.
9 years ago
jrm a62c71290b [infer] Change the error message when the project root is not a prefix of the absolute path of the source files
9 years ago
jrm 6de12aa5ba [infer][eradicate] Allow developers to locally redefine @Initializer
9 years ago
Sam Blackshear cc2fda8165 [Infer][incremental] Preventing --changed-only incremental mode from corrupting the future
9 years ago
Sam Blackshear bdbc524f53 [Infer][tests] Adding tests for --changed-only incremental mode
9 years ago
Rohan Jacob-Rao 7f8282e046 Simplify generation of source file locations and attach to more SIL objects.
9 years ago
Jules Villard e63269fa14 [toplevel] add --fail-on-bug option
9 years ago
Sam Blackshear 2e27c5127b [Infer][frontend] Making -incremental-changed-only option available from command line
9 years ago
Sam Blackshear f5f005a720 [Infer][scripts] Fix crash when stats.json does not exist
9 years ago
Sam Blackshear 0b42f9cf06 [Infer][incremental] Only analyze (transitive) callers of changed procedures
9 years ago
Sam Blackshear 7987d1a2a6 [Infer][tests] Adding tests for incremental functionality
9 years ago
Rohan Jacob-Rao f192b02f01 Integrate LLVM analysis with infer script.
9 years ago
Rohan Jacob-Rao 6f51b8c54b Handle source location metadata generated by clang wrapper.
9 years ago
Jules Villard d6379fb7be [clang] replace yojson frontend with biniou frontend
9 years ago
Sam Blackshear 49e09e5cda [Infer][incremental] Always assigning to "changed" field of procdescs
9 years ago
Jules Villard f7095d794c fix make -C infer/annotations clean clean
9 years ago
Jules Villard aef13134bf [clang][tests] remove darwin target from c tests
9 years ago
Sam Blackshear bc1c77a8a1 [Infer][nullable] Fixing bad error message
9 years ago
Sam Blackshear f8cc0c2ba8 [Infer][stats] Adding procedure stats to stats.json
9 years ago
jrm 1a615a467b [infer][java] add support for @SuppressWarnings, step 1
9 years ago
jrm cb52bff366 [infer][java] Extract the information about classpath from the javac commands so that the classpath can be modified when running the analysis
9 years ago
Sam Blackshear e43acf7130 [Infer][incremental] structural comparison of instructions, nodes, expressions
9 years ago
Sam Blackshear 1a51254b8c [Infer][stats] Getting reliable file count/LOC count by moving computation inside inferanalyze
9 years ago
Jeremy Dubreil d5fc25f28a [infer][CPP] fix C++ tests when running on Linux
9 years ago
Sam Blackshear daac9c7af7 [Infer][tests] Adding parser for stats.json, matcher for checking number of files analyzed by stats.json
9 years ago
Dulma Rodriguez e5f6df74b0 [clang] Add procdescs to cxx method. Forgotten from last commit
9 years ago
Dulma Rodriguez 3cddd0489c [clang] Use the map of pointers to find method declarations and build method signatures
9 years ago
Irene Papakonstantinou 001e6a7c8f Bump version
9 years ago
Sam Blackshear 2f25d6344c [Infer][annotations] Adding basic annotation processor for SuppressWarnings
9 years ago
Rohan Jacob-Rao 37a4709a0f Translate call instruction and construct call graph.
9 years ago
Sam Blackshear 2d31a8c4aa [Infer][incremental] Procedure-level incrementality
9 years ago
Sam Blackshear d99ddd1ede [Infer][incremental] Refactoring: use a map of files changed -> procs in file that have changed in computing clusters
9 years ago
Sam Blackshear b2398ae990 [Infer][frontend] Pass -incremental flag to the backend
9 years ago
Rohan Jacob-Rao 5e5fac5dbc Fix some indentation and a stray comment.
9 years ago
jrm 0a2571c10a [infer][java] Infer now reports errors with relative paths on Ant and Gradle projects
9 years ago
martinoluca 721cc1957c Specify to clang to use x86_64 to build models and tests for ObjectiveCxx
9 years ago
Sam Blackshear c92bfc1093 [Infer][models] Modeling Handler.postDelayed and similar to detect more Activity leaks
9 years ago
martinoluca 279f3d15e7 Make inferTest resolve all the symlinks before running tests
9 years ago
Sam Blackshear 485d5c030e [Infer][activity leaks] Turning on Activity leak reporting
9 years ago
Rohan Jacob-Rao e127255f60 Renamed some types and variables for consistency.
9 years ago
jrm 204c585abf [infer][java] revive the small example of Ant project
9 years ago
Sam Blackshear 7821266c8f [Infer][Nullables] Eliminating some false positives from Nullable checker
9 years ago
Sam Blackshear 9a062192f8 [Infer][nullables] Turning nullable field warnings back on
9 years ago
Rohan Jacob-Rao f3afc6848b Open Utils module to avoid prefixing common list functions.
9 years ago
Rohan Jacob-Rao 96d5931744 Report source file name in error log.
9 years ago
Rohan Jacob-Rao f8ed9b91f5 Fill in source line numbers in SIL instructions.
9 years ago
jrm fcc0c72ecb [infer][eradicate] add support for butterknife @Bind annotation
9 years ago
jrm c0446276a1 [eradicate] add support for the Android support v4 @NonNull annotation
9 years ago
Rohan Jacob-Rao a7da6066e5 Build maps of metadata variables.
9 years ago
Jules Villard 7e169b0471 [copyrightor] add llvm comments
9 years ago
Irene Papakonstantinou 204b2ccc53 Make facebook-clang-plugins a submodule @update-submodule: facebook-clang-plugins
9 years ago
Jules Villard a5fa6a52ee [copyrightor] change output
9 years ago
jrm 9e5cee2444 [infer][eradicate] Fix eradicate tests for field not initialized
9 years ago
jrm 2468139fb7 [infer][java] move the Gradle filelist directory definition in one place
9 years ago
Andrzej Kotulski bb59bb04b7 [CFrontend][Cleanup] Pass whole decl to CTypesDecl.do_record_declaration
9 years ago
Rohan Jacob-Rao b4f554b5f5 Parse call to debugging llvm.dbg.declare function.
9 years ago
Rohan Jacob-Rao c264f95ab3 Setting up metadata variable mappings.
9 years ago
Rohan Jacob-Rao b3b67cdf69 Add metadata types to AST.
9 years ago
Andrzej Kotulski 394a3b4c29 [CFrontend] Sizeof should have ulong type
9 years ago
jrm 7ebd48121f [infer][backend] do not catch exceptions thrown by failwith
9 years ago
Jules Villard cc70507552 [clang] unopen some modules
9 years ago
Rohan Jacob-Rao 4a55382345 Refactored grammar for metadata definitions.
9 years ago
Rohan Jacob-Rao 4bb331ad4f Parse and ignore function declarations.
9 years ago
Sam Blackshear 41c14b249a [Infer][incremental] Refactoring exe_env_from_cluster
9 years ago
Sam Blackshear b80f74c34a [Infer][incremental] Add changed field to procdesc's and code to compute if a procdesc has changed since the last run
9 years ago
Sam Blackshear 089abea3d7 [Infer][nullables] Temporarily disabling warnings on nullable fields
9 years ago
Rohan Jacob-Rao f9939786fb Add function types.
9 years ago
Rohan Jacob-Rao ded6b1d654 Fix parsing of boolean constants
9 years ago
Andrzej Kotulski a570bf5b85 [CFrontend] Replace names containing Method with ObjCMethod
9 years ago
Andrzej Kotulski 198c3c82e1 [C++ frontend] Handle calling c++ methods
9 years ago
Andrzej Kotulski 7a839984da [C++] Add cpp methods signatures and implementations
9 years ago
Jules Villard 352b8edff9 [copyrightor] turn checkCopyright into a standalone script
9 years ago
Jules Villard 85b0ef7266 [clang] Refactor of creating method signatures. First step to use the map of pointers to find method declarations.
9 years ago
Sam Blackshear ca2699842d [Infer][nullable] Fixing bad error messages when dereferencing null literal
9 years ago
Rohan Jacob-Rao f20236fcac Parse metadata nodes.
9 years ago
Rohan Jacob-Rao ef01c485da Made parser syntax consistent: list(X) -> X* and option(X) -> X?.
9 years ago
Rohan Jacob-Rao 353f442efb Parse debug annotations and add them to AST.
9 years ago
Rohan Jacob-Rao 026ca7176e Parse data layout and target triple.
9 years ago
Rohan Jacob-Rao 06f6e349c7 Replace null_deref.ll with annotated version generated using -g flag.
9 years ago
Andrzej Kotulski be0e3c417a Update fcp version
9 years ago
martinoluca 31e7a14344 Don't pass -lib args to InferPrint
9 years ago
Rohan Jacob-Rao 950b6f4aa4 Added dumb parsing of metadata.
9 years ago
Sam Blackshear 44dfcf4a4d [Infer][nullables] Fix bad "indirectly marked" error messages
9 years ago
Rohan Jacob-Rao 3c0e698671 Moved LLVM examples and added licence headers.
9 years ago
Rohan Jacob-Rao b8b62cbcb0 Add optional alignment argument to alloca, load and store rules.
9 years ago
Rohan Jacob-Rao 07d1f8b821 Properly add local variable declarations to procedure.
9 years ago
Andrzej Kotulski 1d6873f471 [C++] Handle simple new cases
9 years ago
Andrzej Kotulski 3b22adfc15 [C Frontend][Refactor] Remove code duplication on debug messages
9 years ago
Rohan Jacob-Rao e1d071fb1f Fix error in parsing int constants.
9 years ago
Rohan Jacob-Rao 66aecca31f Allow for attribute groups in function definitions.
9 years ago
Rohan Jacob-Rao 8fbe358b34 Add tiny C example of null pointer error.
9 years ago
Rohan Jacob-Rao e9f1f03aa0 Added empty AST node for binops, to prevent build warnings.
9 years ago
Rohan Jacob-Rao 264a46f80c Initial attempt to translate alloca instruction.
9 years ago
Jules Villard 8f03d67932 [clang] uglify json when not in frontend debug mode
9 years ago
Rohan Jacob-Rao 6dc20cd4e6 Add "unnamed" (i.e. numbered) variables to syntax.
9 years ago
jrm 2dc796542a [infer][java] the detection of a resource leak should not prevent the symbolic execution to proceed
9 years ago
Rohan Jacob-Rao 9ac4b11056 Translation of load instruction.
9 years ago
Rohan Jacob-Rao a20d178e7c Translation of basic store instruction.
9 years ago
Rohan Jacob-Rao 51ebf2493e Fixed bug in parsing of variables.
9 years ago
Andrzej Kotulski 5169419216 [C frontend] Improve ObjCIvarRef/Member Exprs
9 years ago
Andrzej Kotulski 98cb3c84ac Remove code that does nothing
9 years ago
Rohan Jacob-Rao 9b8cd7d582 Generate chain of CFG nodes for instructions in a function.
9 years ago
jrm 7e00a845d8 [infer][java] stop swallowing errors coming from compilation failures
9 years ago
jrm 4b241266df [infer][java] add model for java.io.StringWriter which does not need to be closed
9 years ago
Sam Blackshear 257bdd18f1 [Infer][tests] Adding missing copyright to ActivityLeaks
9 years ago
Sam Blackshear 9cf74e0ce5 [infer][backend] basic Activity leak checking
9 years ago
Andrzej Kotulski 642e6fd33a update fcp
9 years ago
Dulma Rodriguez 732d23ce4d [clang] Add is_instance as part of the type of objc methods
9 years ago
Rohan Jacob-Rao 53125b171a Added LLVM target to top level makefile.
9 years ago
Jonathan Keljo 17fc7c93f2 Add models for many methods in javax.lang.model and com.sun.source
9 years ago
Jonathan Keljo a1c735dd84 Factor out modelTables module
9 years ago
martinoluca cfd8a55f3b Add `-lib` flag to InferPrint to read specs files from multiple places
9 years ago
Jeremy Dubreil 743c73012d [infer][java] avoid converting javac command lines from bash to python as some buck options are incorectly parsed otherwise
9 years ago
Dino Distefano 7002d0d24c Adding a test in symbolic execution when a dangling uninitialized pointer is dereferenced
9 years ago
Rohan Jacob-Rao 795742a3a2 Clean up some comments.
9 years ago
Sam Blackshear 4ad73acf9d [infer] adding is_activity method
9 years ago
Sam Blackshear 66ef0ec0b9 [infer][reporting] Adding boilerplate for reporting Activity leaks
9 years ago
Sam Blackshear 2f7c957008 [Infer] resolving TODO's by using java_is_static
9 years ago
Andrzej Kotulski 7409d48305 Update fcp to include recent changes
9 years ago
Rohan Jacob-Rao be640f9c4e Remove build warnings by commenting out unused tokens.
9 years ago
Sam Blackshear e107058bf6 [Infer] Adding warning to eliminate needless rec keywords, fixing all warnings.
9 years ago
Sam Blackshear f0c30fc166 [infer][build] Treating OCaml compiler warnings as build-blocking errors
9 years ago
Sam Blackshear 4e389cc601 [infer][frontend] catch exception from directory already existing
9 years ago
Rohan Jacob-Rao d8a2ce2417 Generate CFG and call graph files.
9 years ago
jrm d7db177b84 [infer][backend] minor refactoring of the code to report leaks
9 years ago
Sam Blackshear 60000be43b [infer][backend] refactoring code for getting reachable hpred's/pure atoms from a prop
9 years ago
Jules Villard bae8a4dced [whitespace] indent .ml files as well
9 years ago
Jules Villard 6911a1516c [whitespace] ocp-indent the code
9 years ago
Jules Villard 0368f73ce9 add ocp-indent configuration and eclipse launcher
9 years ago
Sam Blackshear d7bb75ad5d [infer][backend] eliminating duplicate declaration of ExpSet module
9 years ago
Jules Villard ca613a77ff [copyrightor] format start and end of copyright comments
9 years ago
Dulma Rodriguez d7655a087e [clang] Adding getters and setters for all the methods
9 years ago
Dulma Rodriguez c9f07e31e3 [clang] Reimplement removing nodes from procdesc in a more efficient way
9 years ago
Andrzej Kotulski 35400dd4f6 Rename Procname.from_string
9 years ago
Sam Blackshear f1daf147b3 [infer][backend] Pruning pure predicates with unreachable vals in order to eliminate PRECONDITION_NOT_FOUND errors.
9 years ago
Andrzej Kotulski 687f4958c8 Change procname types for objc/c functions
9 years ago
Dino Distefano 35b7011f81 Treating blocks iterators for NSArray
9 years ago
Sam Blackshear 14c41278e6 [Infer] Better error message for warnings based on @Nullable
9 years ago
Rohan Jacob-Rao 0946c9e460 Start of SIL generation from AST.
9 years ago
Jules Villard f07c7f9093 [infer] handle sentinel arguments in symb exec
9 years ago
Jules Villard 768a850c58 [infer][clang] fix model of sockets
9 years ago
Andrzej Kotulski b328ee1509 [C Frontend] Always add class prefix to a field name
9 years ago
Cristiano Calcagno 1eb151a733 [back-end] make infer-out the default results directory
9 years ago
=?UTF-8?q?Deniz=20T=C3=BCrkoglu?= 2b8e8dec7f Indent json files
9 years ago
Jeremy Dubreil 902e5afa61 [infer][clang] fix name collision in the C tests
9 years ago
jrm 9b63476805 [infer][java] modeling that the resource created by ZipFile.getInputStream(ZipEntry entry) is closed by ZipFile.close()
9 years ago
Cristiano Calcagno 3e199467f4 Complete copyright messages.
9 years ago
Jules Villard 9ad32bbbf0 gitignore wibble
9 years ago
Deniz Türkoglu f6cb99fc55 [java] Add TextUtils.isEmpty model
9 years ago
Cristiano Calcagno df04749cd0 Add module to fix copyright messages.
10 years ago
jrm d6fc0d4cac [infer][java] update the installation process to use javalib 2.3.1 and sawja 1.5.1
10 years ago
jrm 392cd0dee0 [infer][java] fix model of InputStreamReader to take into account charset given in lowercase
10 years ago
jrm ef27abcc8f [infer][tracing] disabling non working tests for ArrayIndexOutOfBoundsException
10 years ago
Andrzej Kotulski 2d087b7142 [C Frontend] Get support for map pointer -> decl from fcp
10 years ago
Jules Villard 72c4354395 [clang] propagate parameters of sentinel attr to the backend
10 years ago
Dulma Rodriguez b79028af32 [clang] Remove call to create_local_procdesc and create it only when it's called.
10 years ago
=?UTF-8?q?Deniz=20T=C3=BCrkoglu?= 092e447ce3 Handle java sources from a file
10 years ago
Rohan Jacob-Rao fc0ca6b6db Initial LLVM parser.
10 years ago
Cristiano Calcagno 6bde9bda88 [Bucketing] Improve error bucketing by using constant propagation when detecting direct null assignments.
10 years ago