1433 Commits (8fe2d793b9fcf644fbd796c61c40cffb9056bba2)

Author SHA1 Message Date
Andrzej Kotulski a06ce9ca0e Don't report null dereference on 'this' in C++ methods
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
Andrzej Kotulski ddbf4d9c47 Support template classes
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
Andrzej Kotulski 47f973660e Turn off compiler all warnings to avoid compilation failures
9 years ago
Andrzej Kotulski 81337ce2cb Support MaterializeTemporaryExpr
9 years ago
Jules Villard 529d103977 refactor reading json
9 years ago
Andrzej Kotulski 04e4546a91 Major update of facebook-clang-plugins
9 years ago
Sam Blackshear 8eb668f668 deleting string models/tests
9 years ago
jrm 646c9dbb61 Report error message with call stacks for @PerformanceCritical checker
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
Sam Blackshear 8e9ed5eb6b adding model for verifying sockets before reading from them
9 years ago
Dino Distefano 761e4acc08 Adding models of CADisplayLink for catching retain cycles.
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 2e01d3402f adding some tests to outline the behaviour of the @Expensive checker with inheritance
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
jrm 930eaba2d5 model Inflater and Deflater as resources
9 years ago
jrm 12e37c97fc sort the list of bugs in order to preserve the position of the entries in the JSON file
9 years ago
Dino Distefano 316ad95659 Fixing Bad pointer comparison checker in fast iteration
9 years ago
Josh Berdine 53a32848d5 Model and test FileChannel.tryLock throws
9 years ago
Andrzej Kotulski 55f9fb9d5e Add base class fields to C++ classes
9 years ago
Josh Berdine bf408a1d03 Add models of FileChannel.tryLock methods.
9 years ago
Jules Villard 2367b1c9ff cleanup two c tests that were causing clang warnings
9 years ago
Andrzej Kotulski c4b237e9f6 Fix type of CXXThisExpr_trans
9 years ago
Andrzej Kotulski 3262640214 Move translation of init_expr to general function
9 years ago
Sam Blackshear db7dd5aebe fixing angelic in case where unknown function is called indirectly
9 years ago
Josh Berdine f2ba1b1c76 Add model for java.io.File.listFiles
9 years ago
Dulma Rodriguez de1a627335 Translate enums as ints and not add them to the tenv
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
Jules Villard d03dcb6961 generate json natively
9 years ago
Andrzej Kotulski db35afef1e Handle variable declaration inside condition expression correctly
9 years ago
Dulma Rodriguez 0db83eb5dd Adding the no progress bar option to the tests
9 years ago
jrm f5ddb983fe Initial version of the @Expensive checker
9 years ago
Dino Distefano 0f5aa343e7 Fixed line number in the reporting of strong delegate warning
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
jrm 740f673451 build integration tests: temporarily removing the hash value for the base reports
9 years ago
Andrzej Kotulski 088293b6c2 Add pointer type to argument of method call
9 years ago
Jules Villard 47cc250bdd add way to save build integration test results
9 years ago
jrm 859b816e95 No longer report context leak on private methods
9 years ago
jrm d8e74e456c report leaks on all context, not only activities
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
Andrzej Kotulski a7a332ea51 add different handling for C++ increment/decrement operators
9 years ago
Dulma Rodriguez 982616148e Adding endtoend test that shows that dispatch once works well
9 years ago
Dulma Rodriguez 1371ca96e9 Added endtoend test that shows that we can release objects inside a block
9 years ago
Dulma Rodriguez f1716988ec Adding endtoend test that shows the correct use of self inside a block
9 years ago
Dulma Rodriguez 042bcaf3e6 Adding endtoend test for blocks that shows proper handling of global variables and captured variables.
9 years ago
Dulma Rodriguez bee713e557 Fixing mangling of captured variables
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
Andrzej Kotulski a5e1743382 Fix failing C++ frontend test
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
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
Dulma Rodriguez 6278b779df Adding memory leak bucket for cpp
9 years ago
jrm 3095b68127 Add a test case with @SuppressWarnings on a Buck project
9 years ago
jrm 2d074e82dc Add integration test for Buck
9 years ago
Andrzej Kotulski f63582893f Add basic e2e tests for C++
9 years ago
Andrzej Kotulski 7ac5a5c308 Refactor C frontend tests
9 years ago
Andrzej Kotulski d4c3d39fb9 Refactor C++ frontend tests
9 years ago
Andrzej Kotulski 4d10c8d9f4 Add support for C++ this expression
9 years ago
jrm 4263b9a7c6 Add integration tests for Ant-based Java projects
9 years ago
Andrzej Kotulski b78d6f623a Split methods.cpp test into multiple ones
9 years ago
jrm 0282060808 delete the deprecated script inferJ
9 years ago
Andrzej Kotulski a045886eba Get better language information about functions/methods
9 years ago
Sam Blackshear 30a7a2fd8e Fixing Symexec_memory error that occurs when dereferencing the return value of an undefined function
9 years ago
Dulma Rodriguez a4c910cc2c Adding makefile generation time to the infer toplevel script
9 years ago
Andrzej Kotulski e8949d16e4 [Frontend][C++] Use Sil.class for C++ class/struct/union types
9 years ago
Andrzej Kotulski b810ae68b4 Skip some frontend tests when xcode version doesn't match
9 years ago
Dulma Rodriguez 79df8d2b3c [clang] Fix tests so that they pass with xcode 7
9 years ago
Andrzej Kotulski 6606df245c [CFrontend] Upgrade frontend tests to xcode 7
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 bc050c4188 [C++] Add inheritance information for C++ classes
9 years ago
Dulma Rodriguez 65f4280d6e [clang] [3 of 3] Changes to the translation of record, classes and enums
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
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
Cristiano Calcagno 401109b4eb [Eradicate] Allow assigning null to fields marked @InjectView to support ButterKnife.
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
Sam Blackshear 7911e7e54d [Infer][filtering] Implementing SuppressWarnings filtering and adding tests
9 years ago
Cristiano Calcagno 78f65b6dd7 [eradicate] handle methods overridden in other files
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
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 6f51b8c54b Handle source location metadata generated by clang wrapper.
9 years ago
Jules Villard aef13134bf [clang][tests] remove darwin target from c tests
9 years ago
Sam Blackshear f8cc0c2ba8 [Infer][stats] Adding procedure stats to stats.json
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
Rohan Jacob-Rao 37a4709a0f Translate call instruction and construct call graph.
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
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
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
jrm 9e5cee2444 [infer][eradicate] Fix eradicate tests for field not initialized
9 years ago
Andrzej Kotulski 394a3b4c29 [CFrontend] Sizeof should have ulong type
9 years ago
Sam Blackshear 089abea3d7 [Infer][nullables] Temporarily disabling warnings on nullable fields
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
Rohan Jacob-Rao 06f6e349c7 Replace null_deref.ll with annotated version generated using -g flag.
9 years ago
Rohan Jacob-Rao 3c0e698671 Moved LLVM examples and added licence headers.
9 years ago
Andrzej Kotulski 1d6873f471 [C++] Handle simple new cases
9 years ago
jrm 2dc796542a [infer][java] the detection of a resource leak should not prevent the symbolic execution to proceed
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
Dulma Rodriguez 732d23ce4d [clang] Add is_instance as part of the type of objc methods
9 years ago
Dino Distefano 7002d0d24c Adding a test in symbolic execution when a dangling uninitialized pointer is dereferenced
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
Dino Distefano 35b7011f81 Treating blocks iterators for NSArray
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
Jeremy Dubreil 902e5afa61 [infer][clang] fix name collision in the C tests
10 years ago
jrm 9b63476805 [infer][java] modeling that the resource created by ZipFile.getInputStream(ZipEntry entry) is closed by ZipFile.close()
10 years ago
Cristiano Calcagno 3e199467f4 Complete copyright messages.
10 years ago
Deniz Türkoglu f6cb99fc55 [java] Add TextUtils.isEmpty model
10 years ago
Cristiano Calcagno df04749cd0 Add module to fix copyright messages.
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
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
Jules Villard 9354b1562c [infer] more generic and correct handling of arrayWithObjects:
10 years ago
jrm 8779b80f8a [infer][tracing] add an example of inter-procedural array out of bounds error
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
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
Sam Blackshear 1baaa96fcc [Infer][C frontend] Fixing double translation of builtin args
10 years ago
Andrzej Kotulski 76203aa847 [Frontend][C++] Add translation for static cast
10 years ago
Jules Villard 34aa9c2949 [infer][java] handle int boxing in HashMap model
10 years ago
Jules Villard 904ebb0154 [infer][java] model for Integer
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
Dulma Rodriguez d3f20dcaca [clang] Fix translation of fast loops
10 years ago
Cristiano Calcagno bec5bafc72 [java] Upstream support for class names with $dollar (requires "opam update")
10 years ago
jrm f0026006e7 [infer][java] add working example with closeQuietly in the tests
10 years ago
jrm 11712caea9 [infer][java] add models for some common classes implementing Closeable without being resources
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 224f3116ce [infer][java] remove no longer required fields in the models for Java
10 years ago
jrm 2b7060e917 [infer][Java] Treat classes implementing Closeable as a resource unless modeled otherwise
10 years ago
jrm 0c6db22ae4 [infer][java] Add an example of an ant project in the repository
10 years ago
jrm 762f572506 [infer][java] attach the file attribute of Cursor to the object itself, not a field.
10 years ago
Sam Blackshear d7a4474d90 [Infer][angelic] Adding angelic abduction on actuals passed by reference
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
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
Dino Distefano 404444d182 Fixed models for FILE C functions.
10 years ago
jrm 827d7cb3c3 [infer][Java] add an example of try-with-resource in the tests
10 years ago
jrm 7a767fe900 [infer][Java] use the containsExactly matcher for resource leak tests
10 years ago
jrm 4526ada822 [infer][Java] temporarily catching the Invalid_argument exception raised by classname with $$ in the name
10 years ago
jrm 2bce7c6c3d [infer][Java] rename the builtin `InferBuiltins.__infer_assume` into `InferBuiltins.assume`
10 years ago
Dulma Rodriguez 34b911c935 [clang] Fixing the tests for the models of getc.
10 years ago
Dino Distefano 3ce393f511 Fixed model for getc and fgetc
10 years ago
jrm aa7bf8e69b [infer] fix inconsistencies between the errors that are saved in the generated reports and what is saved in standard output
10 years ago
Open Source Synchronization b8982270f2 initial synchronization
10 years ago