4503 Commits (5aa26dc32ee2dd88b96e303e3d859be6df1f35d2)

Author SHA1 Message Date
jrm a49b0965ef Model `android.view.View.findViewById` as an expensive method
9 years ago
Jules Villard f7ecf30739 refactor pruning code in symExec.ml
9 years ago
Andrzej Kotulski 5a4f5fa444 Refactor BinaryOperator_trans to use compute_results_to_parent
9 years ago
Andrzej Kotulski 60b4f6e766 Refactor PriorityNode.compute_results_to_parent to call collect_res_trans directly
9 years ago
Andrzej Kotulski 35bb8a9a26 Change order in which ids get generated for objcMessageExpr_trans
9 years ago
Jules Villard 1abebf9046 minor cleanups in prop.ml
9 years ago
Andrzej Kotulski 3f9a08f99c Defer cfg node creation for returnStmt and init_expr_trans
9 years ago
Andrzej Kotulski 0d1af3cc46 Don't set succ_nodes for substatements in returnStmt and init_expr_trans
9 years ago
Andrzej Kotulski 9353c7bbfd Use qualified names for global variables
9 years ago
Andrzej Kotulski a06ce9ca0e Don't report null dereference on 'this' in C++ methods
9 years ago
Andrzej Kotulski 22b84162d6 Don't use trans_state.parent_line_number to determine location
9 years ago
Andrzej Kotulski 1eecdacea6 Ignore type change in UncheckedDerivedToBase cast
9 years ago
jrm b598c747b5 Always consider Java types as subtypes of themselves
9 years ago
jrm d712635feb Automatically infer the @PerformanceCritical annotations from the overriden methods
9 years ago
Sam Blackshear dcdebbd811 creating a framework for adding src/sink models based on method names/signatures alone
9 years ago
Sam Blackshear a6543cd665 simplifying use of process_splitting by moving normalization inside
9 years ago
Cristiano Calcagno 8cd68cd890 Separate payloads from different analyses in specs.
9 years ago
Andrzej Kotulski ddbf4d9c47 Support template classes
9 years ago
Andrzej Kotulski 7389dfe976 Don't crash when method decl is not found
9 years ago
Dulma Rodriguez 0441919a42 Using clang's method resolution if possible
9 years ago
Sam Blackshear 29ea879930 eliminating precondition not met in taint analysis
9 years ago
Sam Blackshear 353f23695a eliminate need to use attr_check_changed when adding or replacing attributes
9 years ago
Andrzej Kotulski 81337ce2cb Support MaterializeTemporaryExpr
9 years ago
Andrzej Kotulski 04e4546a91 Major update of facebook-clang-plugins
9 years ago
jrm 646c9dbb61 Report error message with call stacks for @PerformanceCritical checker
9 years ago
Sam Blackshear 848bf24f66 Print warnings when running InferPrint on a .specs file
9 years ago
Sam Blackshear 14c616e34f clean up some duplicate code in Errdesc
9 years ago
martinoluca 64189548b0 Add paths to specs through file list
9 years ago
Dulma Rodriguez 369de5880e Add variable to locals in dispatch functions as usual
9 years ago
Sam Blackshear c7c8d58334 fixing taint analysis so it doesn't prevent postcondition inference
9 years ago
Andrzej Kotulski 16cb8e3f30 Translate CXXOperatorCallExpr
9 years ago
Andrzej Kotulski c45f7793ea Assign proper location information to children of OpaqueValueExpr
9 years ago
Andrzej Kotulski dbe4c0c307 Assign proper location information to block
9 years ago
Andrzej Kotulski cb42fdcc31 Use fully qualified names for functions
9 years ago
Andrzej Kotulski 9748502a1a Handle C++ static methods
9 years ago
jrm 8fb90ccf54 get the @PerformanceCritical and @Expensive annotatations of overridden methods from the summaries
9 years ago
Andrzej Kotulski c2aaf867cd Cleanup handling of namespaces from ocaml code
9 years ago
Andrzej Kotulski 71e424d6ba Use qual_name to extract class name from method decl
9 years ago
Dulma Rodriguez 87a3d693e1 Adding static variables to blocks class to get retain cycles
9 years ago
Sam Blackshear 631f2a9882 fixing spacing issue in context leak error message
9 years ago
Dino Distefano 316ad95659 Fixing Bad pointer comparison checker in fast iteration
9 years ago
Dino Distefano 03b4c11c06 Improved error message for taint analysis
9 years ago
Andrzej Kotulski 55f9fb9d5e Add base class fields to C++ classes
9 years ago
Andrzej Kotulski c4b237e9f6 Fix type of CXXThisExpr_trans
9 years ago
Dulma Rodriguez f20af0e9aa Add memory bucket for internal memory leak errors
9 years ago
Andrzej Kotulski 3262640214 Move translation of init_expr to general function
9 years ago
Dulma Rodriguez 7d5e129ac0 Translate categories on demand
9 years ago
jrm 5691f24090 Use the summaries to store the @CallsExpensive attributes
9 years ago
Sam Blackshear db7dd5aebe fixing angelic in case where unknown function is called indirectly
9 years ago
Andrzej Kotulski 1180aabe39 Fix result of returnStmt_trans
9 years ago
Dulma Rodriguez de1a627335 Translate enums as ints and not add them to the tenv
9 years ago
jrm b1b9cbe771 distinguish between the user added annotation @Expensive and the inferred annotation @CallsExpensive
9 years ago
jrm 0cd533f892 Enforcing subtyping rules for @Expensive and @PerformanceCritical
9 years ago
jrm 6b6b4d1949 Detecting if methods annotated with @PerformanceCritical transitively call methods annotated with @Expensive
9 years ago
jrm 8636aa1f70 open the jar file of the model only once
9 years ago
Jules Villard 469d1e4902 fix printing number of analysed procs/files
9 years ago
Jules Villard 02b9bec78e remove extra newlines in infer output
9 years ago
Andrzej Kotulski db35afef1e Handle variable declaration inside condition expression correctly
9 years ago
jrm f5ddb983fe Initial version of the @Expensive checker
9 years ago
Andrzej Kotulski 3b4dda102b Change return type of CTrans.loop_instruction
9 years ago
Dino Distefano 0f5aa343e7 Fixed line number in the reporting of strong delegate warning
9 years ago
Dulma Rodriguez c602ce7a83 Adding progress bar to the analysis
9 years ago
jrm a8388644b8 Add a flag to create the procedure descriptions of callees
9 years ago
Cristiano Calcagno 4300d1bf62 Add support for specifying the list of files to be analyzed in on-demand mode.
9 years ago
Dino Distefano 00e97afdf8 First version of taint analysis.
9 years ago
Andrzej Kotulski a9bdf2b291 Translate c++ constructor calls in var initialization
9 years ago
Dino Distefano ae49cacee8 Framework to emit warning from frontend
9 years ago
Andrzej Kotulski 088293b6c2 Add pointer type to argument of method call
9 years ago
jrm 859b816e95 No longer report context leak on private methods
9 years ago
Jules Villard d151977b39 print stats in debug mode only
9 years ago
Cristiano Calcagno 078d3f1c1e Remove special treatment of harness code
9 years ago
Dulma Rodriguez 80057ea523 Translate classes on demand
9 years ago
jrm d8e74e456c report leaks on all context, not only activities
9 years ago
Jules Villard 197b13434a use absolute path for BUILDDIR
9 years ago
jrm 4260c720c0 Disable the creation of the harness by default
9 years ago
jrm 6f3873aa99 Adding inferconfig support to skip the translation of generated source code
9 years ago
Sam Blackshear abc0e8315e better error messages for Activity leaks
9 years ago
Cristiano Calcagno 56ccb6b198 Fix assert false in Paths.
9 years ago
Cristiano Calcagno 6a922ff597 Print origin information for procedured modelled internally.
9 years ago
Andrzej Kotulski a7a332ea51 add different handling for C++ increment/decrement operators
9 years ago
Dulma Rodriguez 56f3fb4f4b Translating structs and C++ classes only on demand
9 years ago
Andrzej Kotulski 9c578406a1 update clang plugin version
9 years ago
Andrzej Kotulski be07cdda2a Factor out some parts of CXXMemberCallExpr
9 years ago
Andrzej Kotulski 9e39f3bf72 Refactor of declRefExpr_trans & MemberExpr_trans
9 years ago
jrm 43958b461a Use the type environment as a cache of translated types
9 years ago
jrm 3076b434c1 Collect all the class fields in a single loop instead of collecting the static and non-static fields separately
9 years ago
Jules Villard 52f983253a remove -rec flag from atdgen
9 years ago
Andrzej Kotulski 1c80ba8bb7 simplify code handling default paramters
9 years ago
Dulma Rodriguez bee713e557 Fixing mangling of captured variables
9 years ago
Cristiano Calcagno 03bca6734c fix a number of issues related to the treatment of global state in ondemand analysis
9 years ago
Andrzej Kotulski 453924f303 Add basic translation of constructors
9 years ago
Andrzej Kotulski 87dfcdeb99 Replace '/' in anonymous type names
9 years ago
Jules Villard 1f973cfc12 refactor makefile to allow more ocaml and c libs to be added more easily
9 years ago
Sam Blackshear 04f92614e8 Moving printf args checker into Infer
9 years ago
Dulma Rodriguez 286d27be10 Remove the file information form the mangling of variable names
9 years ago
Jules Villard 7d0a7568f3 put Util.list_* functions into an IList module
9 years ago
Cristiano Calcagno f17f54939b checkers can now analyze a restricted subset of the procedures defined in a file
9 years ago
Andrzej Kotulski 5a07f767bb Handle assignment operations correctly
9 years ago
Andrzej Kotulski b86af1e5d1 Fix type information about reference types in CFGs
9 years ago
Cristiano Calcagno 596401856d report activity leaks without stopping the analysis
9 years ago
Jules Villard 2af1687cd4 add builtin for dictionary literals
9 years ago
Andrzej Kotulski bfe10e3829 Fix handling of C++ references
9 years ago
Dulma Rodriguez ba00f08f00 Remove variable resolution and use pointers to declarations instead
9 years ago
jrm c01df1fe90 no longer collect all possible subtypes in the type environment
9 years ago
Cristiano Calcagno 6ec888ec23 add option to create one cluster per procedure in on-demand mode
9 years ago
Dulma Rodriguez 6278b779df Adding memory leak bucket for cpp
9 years ago
Andrzej Kotulski d360ba7776 update fcp
9 years ago
Dulma Rodriguez e49d9d6f4d Adding an outer context to the context in case of blocks
9 years ago
Jules Villard 5a7399f8cb fix always regenerating jsonbug with atdgen
9 years ago
Cristiano Calcagno 22aad3e33a Add basic support for on-demand for the core Infer analysis.
9 years ago
Andrzej Kotulski aa1951cad4 Create generic way of generating extra instructions
9 years ago
Andrzej Kotulski cb0380eb4e Update version of fcp
9 years ago
Andrzej Kotulski f01a639605 Slight improvement of block function handling
9 years ago
Andrzej Kotulski 4d10c8d9f4 Add support for C++ this expression
9 years ago
Andrzej Kotulski f8b8078538 Fix build process of clang_ast_t files
9 years ago
Andrzej Kotulski b277d8164c Update fcp version
9 years ago
Andrzej Kotulski 59a7ca5424 small cleanup of ast_expressions.ml
9 years ago
Cristiano Calcagno 1e9ce38056 Fix cast of null value.
9 years ago
Andrzej Kotulski 2a425b8218 Add structured type_ptr
9 years ago
Cristiano Calcagno 7d95e284d2 Let on-demand control whether to start at all the analysis of a procedure.
9 years ago
Dulma Rodriguez e6600cf03b Making the procname hash depend on relative paths
9 years ago
Andrzej Kotulski a045886eba Get better language information about functions/methods
9 years ago
jrm 5e41fc7a54 fix a bug preventing to run the capture only with Buck
9 years ago
Andrzej Kotulski d6b1d422fd Update fcp and remove qual_type type
9 years ago
Sam Blackshear 30a7a2fd8e Fixing Symexec_memory error that occurs when dereferencing the return value of an undefined function
9 years ago
Cristiano Calcagno ebfe1d69cc simplify cluster and makefile creation when on-demand is active.
9 years ago
martinoluca 30d869b9b1 Disable SKIP_FUNCTIONs when Infer is not running in debug mode
9 years ago
Cristiano Calcagno e2fb879321 make summaries deterministic by default by removing timing information
9 years ago
Andrzej Kotulski 16604a9e75 Update fcp which exports less redundant information
9 years ago
Irene Papakonstantinou 168980e9cd Bump infer release
9 years ago
Dulma Rodriguez 0b0cd0d38d [clang] Using qual names for fields
9 years ago
Cristiano Calcagno 1e96e56145 [backend][ondemand][perf] improve perf of on demand by only loading the minimum number of cfgs needed
9 years ago
Dulma Rodriguez e26f9b4dd4 [clang] Removing the use of raw types
9 years ago
Andrzej Kotulski a380cd3e6c [CFrontend] Use type attributes in more structured way
9 years ago
Cristiano Calcagno 75950384c9 [backend] Extend results directory with attributes for each procedure.
9 years ago
Andrzej Kotulski e8949d16e4 [Frontend][C++] Use Sil.class for C++ class/struct/union types
9 years ago
Cristiano Calcagno 1fcea9258a [backend] Fix Failure "handle input_value: truncated object" observer with Eradicate/Checkers, probably due to races when writing specs files.
9 years ago
Dulma Rodriguez fd853f97ca [clang] C function names depend only on their name (and their file is they are static, and their type if we are in C++)
9 years ago
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
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
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
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 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
Rohan Jacob-Rao 7f8282e046 Simplify generation of source file locations and attach to more SIL objects.
9 years ago
Sam Blackshear 2e27c5127b [Infer][frontend] Making -incremental-changed-only option available from command line
9 years ago
Sam Blackshear 0b42f9cf06 [Infer][incremental] Only analyze (transitive) callers of changed procedures
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
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
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
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
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
Rohan Jacob-Rao 5e5fac5dbc Fix some indentation and a stray comment.
9 years ago
Sam Blackshear c92bfc1093 [Infer][models] Modeling Handler.postDelayed and similar to detect more Activity leaks
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
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
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
Andrzej Kotulski be0e3c417a Update fcp version
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
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
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
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
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
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
10 years ago
Sam Blackshear 60000be43b [infer][backend] refactoring code for getting reachable hpred's/pure atoms from a prop
10 years ago
Jules Villard bae8a4dced [whitespace] indent .ml files as well
10 years ago
Jules Villard 6911a1516c [whitespace] ocp-indent the code
10 years ago
Jules Villard 0368f73ce9 add ocp-indent configuration and eclipse launcher
10 years ago
Sam Blackshear d7bb75ad5d [infer][backend] eliminating duplicate declaration of ExpSet module
10 years ago
Jules Villard ca613a77ff [copyrightor] format start and end of copyright comments
10 years ago
Dulma Rodriguez d7655a087e [clang] Adding getters and setters for all the methods
10 years ago
Dulma Rodriguez c9f07e31e3 [clang] Reimplement removing nodes from procdesc in a more efficient way
10 years ago
Andrzej Kotulski 35400dd4f6 Rename Procname.from_string
10 years ago
Sam Blackshear f1daf147b3 [infer][backend] Pruning pure predicates with unreachable vals in order to eliminate PRECONDITION_NOT_FOUND errors.
10 years ago
Andrzej Kotulski 687f4958c8 Change procname types for objc/c functions
10 years ago
Dino Distefano 35b7011f81 Treating blocks iterators for NSArray
10 years ago
Sam Blackshear 14c41278e6 [Infer] Better error message for warnings based on @Nullable
10 years ago
Rohan Jacob-Rao 0946c9e460 Start of SIL generation from AST.
10 years ago
Jules Villard f07c7f9093 [infer] handle sentinel arguments in symb exec
10 years ago
Andrzej Kotulski b328ee1509 [C Frontend] Always add class prefix to a field name
10 years ago
Cristiano Calcagno 1eb151a733 [back-end] make infer-out the default results directory
10 years ago
Cristiano Calcagno 3e199467f4 Complete copyright messages.
10 years ago
Jules Villard 9ad32bbbf0 gitignore wibble
10 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
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
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
jrm 1356fd331f [infer][clang] test reporting of assertion failures
10 years ago
Cristiano Calcagno a94fab55e8 [Eradicate] Fix issue where direct throw instructions were not handled like method calls that trow exceptions.
10 years ago
Andrzej Kotulski 2365e6244d Update fcp, add support for pointers to declarations
10 years ago
Andrzej Kotulski 927653e8d8 Update facebook-clang-plugin
10 years ago
Cristiano Calcagno 9c4a4a16f3 [inferconfig] don't fail during filtering if a file does not exist
10 years ago
Jules Villard c26401021c [infer] remove Sil.Avariadic_function_argument
10 years ago
Jules Villard 9354b1562c [infer] more generic and correct handling of arrayWithObjects:
10 years ago
jrm 4013e13cbe [infer] Moving the getter for the return variable from Cfg.Procdesc to Sil
10 years ago
jrm d808a3ee26 [infer] implements call by procedure name
10 years ago
Dulma Rodriguez 41fe321582 [clang] Adding option analyzer to InferPrint in inferiOS to avoid analysing generated files
10 years ago
jrm 393f5aad1e [infer] refactoring to isolate in a single place the need for the procedure description of the callees
10 years ago
Dulma Rodriguez 63b1d1ac1c Revert "[clang] Removing the case of flagging npes in initialisers. This causes many FPs."
10 years ago
Dulma Rodriguez 18173a7b7f [clang] Removing the case of flagging npes in initialisers. This causes many FPs.
10 years ago
Sam Blackshear ca65b2b906 [Infer][Java] Adding is_static metadata to Java procname's
10 years ago
jrm 2125bfdad9 [infer][java] prevent the closeable as resource approach to report resource leak when close() throws an exception
10 years ago
Dulma Rodriguez ea3e614cce [clang] Adding support for NSMakeCollectable and CFMakeCollectable
10 years ago
Andrzej Kotulski 9f9bc53361 [Frontend][C++] Add support for default params
10 years ago
Dulma Rodriguez d15e60ffbf [clang] Translating nonnull attributes as assertions
10 years ago
Cristiano Calcagno a87bedb5dd [Bucketing] Promote NPEs originating from a call with a null parameter to bucket b1.
10 years ago
jrm cc89c6f8ac [infer] non-functional refactoring when obtaining the procedure description of function calls
10 years ago
Sam Blackshear 1baaa96fcc [Infer][C frontend] Fixing double translation of builtin args
10 years ago
jrm e7d0038af3 [infer] fix OCaml formatting
10 years ago
Andrzej Kotulski 76203aa847 [Frontend][C++] Add translation for static cast
10 years ago
Jules Villard 7f72397999 bumping Infer version to 0.2.0
10 years ago
Andrzej Kotulski f99f650b07 Don't add buckets to error message by default
10 years ago
Jules Villard 34aa9c2949 [infer][java] handle int boxing in HashMap model
10 years ago
Andrzej Kotulski 819227d97d [C++][Frontend] Add translation for nullptr
10 years ago
Sam Blackshear f6784e3796 [infer][models] Fixing InferAssume
10 years ago
Sam Blackshear 4feb925dd7 [Infer][Java] Prevent assertion failure in jTransStaticField
10 years ago
Dulma Rodriguez d3f20dcaca [clang] Fix translation of fast loops
10 years ago
Cristiano Calcagno dd066c828c [Checkers] checker for printf format strings.
10 years ago
Dulma Rodriguez 510fc4ed25 [clang] Sorting the fields in structs and classes. Was needed in the backend and forgotten.
10 years ago
Cristiano Calcagno d2e2bbf6a5 [Eradicate @Nullable checker] Don't apply sub-typing checks for method definitions in the case of constructors.
10 years ago
jrm 2b7060e917 [infer][Java] Treat classes implementing Closeable as a resource unless modeled otherwise
10 years ago
jrm fda373c706 [infer][Java] Deal with empty strings '' in the classpath
10 years ago
Cristiano Calcagno fb300b9948 [Eradicate @Nullable checker] Fix missing reports of PARAMETER_NOT_NULLABLE across modules.
10 years ago
Sam Blackshear d7a4474d90 [Infer][angelic] Adding angelic abduction on actuals passed by reference
10 years ago
Jules Villard ddec46d4aa [infer] add infrastructure for function attributes in sil and clang
10 years ago
martinoluca 98ab517da0 Fix minor makefile issues
10 years ago
Cristiano Calcagno 5de68e795c Remove unused -analyzer_mode
10 years ago
Dino Distefano 9a93c2ed46 Dealing with __weak/__unsafe_unretained modifier for ivars
10 years ago
Cristiano Calcagno 92ceae3cf6 [clang frontend] Fix translation of large integer constants.
10 years ago
jrm 5e9f88eaeb [infer][Java] more consistent names for env variables
10 years ago
Andrzej Kotulski d0ea01e354 Bump infer version to 0.1.1
10 years ago
Sam Blackshear 066b132da2 [Infer][Java] Handling assert keyword by adding a special case for the $assertionsDisabled field during translation
10 years ago
Cristiano Calcagno 3a51764d4c [clang frontend] Simplify logging functions.
10 years ago
Cristiano Calcagno 10970c4f51 [clang frontend] Pre-process AST locations to make them explicit and easier to deal with. Don't dive into include files.
10 years ago
Dulma Rodriguez b57ac1fe49 [clang] Make the script create the absolute path rather than Ocaml. Fixes issues with symbolic links
10 years ago
jrm a8a8501243 [infer][Java] fail early when no Java source can be loaded
10 years ago
jrm 4526ada822 [infer][Java] temporarily catching the Invalid_argument exception raised by classname with $$ in the name
10 years ago
Sam Blackshear 231043f5bc [Infer][bucketing] Moving warnings on dereferences of @Nullable params from B5 -> B1,
10 years ago
Sam Blackshear 8f9cef0320 [Infer][backend] Fixing bug in removal of abducted program variables
10 years ago
Jules Villard 4820a0b9fc add version information to InferAnalyze output
10 years ago
Open Source Synchronization b8982270f2 initial synchronization
10 years ago