621 Commits (749a649138b51aa3f46adadb26a2283e84364c0b)

Author SHA1 Message Date
Andrzej Kotulski 1d6aea0fb9 Add typ to trans_state.var_exp
10 years ago
Andrzej Kotulski 7cabc86f77 Pass return parameter type in context
10 years ago
Peter O'Hearn 028ac24d46 Simple model for locks
10 years ago
Jules Villard cbb8810e2c make dotty field optional in json
10 years ago
Jules Villard e11395d199 print location of errors in infer source code in debug mode
10 years ago
Andrzej Kotulski 8545a0310e Treat xvalues as they were lvalues
10 years ago
Andrzej Kotulski 36fb1f202c Deal with empty parameter names
10 years ago
Jeremy Dubreil 70dbe8db74 Simplify the type comparison of Java classes
10 years ago
Sam Blackshear 7938fbb344 Fixing 'file name too long' errors
10 years ago
Sam Blackshear f3c7125dc1 build ocaml with debug tag to enable stack traces
10 years ago
Andrzej Kotulski da3a106541 Always translate CXXRecordDecl as Sil.Class
10 years ago
Cristiano Calcagno 58611b15d0 Cleanup of CMethod_signature.
10 years ago
Dino Distefano 5b91ec9f7f A fix for empty retain cycle
10 years ago
Sam Blackshear ef3912cbde Adding on-the-fly translation of types during pre-analysis
10 years ago
Cristiano Calcagno 5683fd8413 Fix collision of spec file names on case insensitive file systems.
10 years ago
Cristiano Calcagno 1b4efcfc7a Enable the analysis of models in on-demand mode.
10 years ago
Andrzej Kotulski 75f4947cb1 Ignore type change in DerivedToBase cast
10 years ago
Andrzej Kotulski b08acedf29 Use clang for default argument resolution
10 years ago
Cristiano Calcagno 10286931ee Cleanup handling of global state, and add footprint mode to the values.
10 years ago
Cristiano Calcagno 7a7260635f Refactor the worklist data structures of the intraprocedural algorithm as non-global state.
10 years ago
Dulma Rodriguez f4bbd44212 Translate dynamic cast for C++
10 years ago
Tony Cosentini 75cca6b3d3 Add android.app.Service to whitelisted Android initializer classes.
10 years ago
Dulma Rodriguez 10fe998c12 Extending subtyping to C++
10 years ago
Andrzej Kotulski 262796d3bf Distinguish between C++ and objc class types
10 years ago
Andrzej Kotulski 9d7ab4b9c2 Translate conversion operators
10 years ago
Sam Blackshear be86e5d15d Exposing java_typ_to_string
10 years ago
Sam Blackshear 14e934205f implementing dynamic dispatch support for Java interfaces
10 years ago
Andrzej Kotulski 3dcd6490c2 Translate reinterpret_cast and const_cast
10 years ago
Cristiano Calcagno 7673d94600 Distinguish between class kinds: CPP, Java, Objc
10 years ago
Andrzej Kotulski bdab22a093 Support temporary objects (CXXTemporaryObjectExpr)
10 years ago
Andrzej Kotulski 44a6ec4f10 Fix return parameter handling
10 years ago
Cristiano Calcagno 74dbfd72b5 Fix issues with html output for debug in on-demand mode.
10 years ago
Andrzej Kotulski e329916e5b Add basic translation of CXXBindTemporaryExpr
10 years ago
Andrzej Kotulski 0a32c95f39 Fix build of llvm frontend
10 years ago
Andrzej Kotulski 1fe920c0c5 Cleanup code triggering code translation
10 years ago
Andrzej Kotulski ec80d40bdd Populate return parameter when returning + turn on new feature for C/C++
10 years ago
Andrzej Kotulski 61de633647 Add information whether translated method has return parameter
10 years ago
Andrzej Kotulski 2c8238849d Add return parameter to function/method call
10 years ago
Andrzej Kotulski 58be5d0eb0 Add return parameter to functions returning structs
10 years ago
jrm 18668a41ce simplify the API to create procedure descriptions
10 years ago
Sam Blackshear dc0b91662a Save space/simplify by deleting Exe.file_map
10 years ago
Cristiano Calcagno 162dc42b5b Use a record for struct types instead of a 7-tuple.
10 years ago
Andrzej Kotulski a317ac38f2 Use init_exp in InitListExpr and CompoundLiteralExpr
10 years ago
Andrzej Kotulski 5eb7d9e994 Add init_pvar to trans_state and use it in c++ constructor
10 years ago
Dulma Rodriguez f379383b04 Adding support for annotations for cpp classes to separate them in the backend from objc classes
10 years ago
jrm ad2a9064c3 No longer overwrite the attributes in the summary if already existing
10 years ago
Andrzej Kotulski fcb561a1ee Use Sil.exp instead of var_res_trans to get initialized variable
10 years ago
Cristiano Calcagno bcba8a7011 Fix transition between re-execution and footprint in on demand, and support tests for incremental.
10 years ago
Cristiano Calcagno 453709c3c8 Only propagate nullable to return value when environment variable is set.
10 years ago
Cristiano Calcagno 97a3aa3d0b Fix treatment of recursion and double file descriptor close in on-demand.
10 years ago
Dulma Rodriguez f34f2dcd98 Don't crash when a cg cannot be loaded.
10 years ago
Sam Blackshear d1cf7b7177 removing unused tenv in conditional pruning
10 years ago
Sam Blackshear 6fa9b995e5 no longer catching Class_structure_exception
10 years ago
Jules Villard 59a3b9c22a add temp var from compoundLiteralExpr to the function locals
10 years ago
Jules Villard 7b9b6841d2 translate CompoundLiteralExpr
10 years ago
Dulma Rodriguez 7855d6ecfa Fix the order of the translated stmts inside compound stmt
10 years ago
jrm a7371d5678 Perf critical checker: save the chains of calls to expensive methods in the error traces
10 years ago
Dino Distefano 377893637a Direct property access should not fire on dealloc methods
10 years ago
Dulma Rodriguez c88ac54613 Improving the line number information in the string delegate warning check
10 years ago
Dino Distefano d4d5c3bb2f Implemented new check CXX_REFERENCE_CAPTURED_IN_OBJC_BLOCK
10 years ago
Dulma Rodriguez 432dd28731 Improving the line number information in the string delegate warning check
10 years ago
Sam Blackshear 43daa760ee adding InferJava flags for classpath and class-source map, along with associated Python boilerplate
10 years ago
Andrzej Kotulski 0ae9b0e7a1 Change the way nested structs are translated
10 years ago
Andrzej Kotulski df192d06c3 Use ints as clang pointers
10 years ago
Josh Berdine 2ff26d37fb Simplify CLocation implementation
10 years ago
Josh Berdine d9667d07e4 Remove unused CLocation.init_curr_source_file
10 years ago
Josh Berdine c930ef90eb Remove redundant CLocation.current_source_file
10 years ago
Josh Berdine 7999dc3c4e Check CLocation.current_source_file is redundant
10 years ago
jrm cf5040cbee call the on-demand analysis using the procedre name after name resolution
10 years ago
Andrzej Kotulski bd935c2347 Add destructor calls on delete expression
10 years ago
jrm 30e2cf7114 Revive the "call by procedure name" mechanism for Java
10 years ago
Andrzej Kotulski 32745b67aa Add dotty information about retain cycle
10 years ago
Andrzej Kotulski 0ea850b7a2 Add dotty file contents to json report
10 years ago
Andrzej Kotulski 3adbb56e9c Add extra field to error_desc.
10 years ago
Josh Berdine 2c0fc4025b Remove out-of-date comments
10 years ago
Jules Villard 9ecf2d9f5e force git repo root when computing version info
10 years ago
jrm b3bf8b1ecc No longer overwrite the list of non-static fields during the translation
10 years ago
jrm 51cd3ded47 make sure that the Infer out directory is empty before generating the models
10 years ago
Jules Villard f2240395dd restore join of integer values
10 years ago
jrm 9f5159241f Use Typename.t for the type of the supertypes in the defintion of classes.
10 years ago
jrm 6d91199be7 Generalize the detection of assertion failures to any kind of custom errors defined programatically in the orginal source code
10 years ago
Sam Blackshear 43ee904a1f fix possible infinite loop in get_fld_typ_path
10 years ago
Cristiano Calcagno 51f494f542 Add missing reference to eradicate directory.
10 years ago
Cristiano Calcagno a8ee0e6361 Move Eradicate files to a separate directory.
10 years ago
Josh Berdine e607ceb5ba Re-enable printing of specs in InferPrint
10 years ago
jrm 807922ca7f simplify the PatternMatch module
10 years ago
jrm 8325630da1 remove the function Sil.get_typ and use Sil.tenv_lookup instead
10 years ago
jrm 467fe385be Use the Mangled module to name the parameters in the procudure description instead of simple string
10 years ago
Sam Blackshear 45e8db6892 turn off intentional crashing on assertion failures in developer mode
10 years ago
jrm 2e7f5735d3 Extract the naming of types to its own module named Typename
10 years ago
jrm 4143d4eb2d Extract the kind of data structure, Class Struct or Union, into it own module
10 years ago
Jules Villard a6fb4d82bb do not use --delete when rsyncing annotations
10 years ago
Andrzej Kotulski cc4d3f3cd0 make get_decl_from_typ_ptr return optional type instead of crashing
10 years ago
Andrzej Kotulski 7960798ca8 Deal with default parameter earlier
10 years ago
Andrzej Kotulski 70b003696f Translate bodies of destructors
10 years ago
Dino Distefano 4feb93e91c Fixed FP for blocks used in loops generated by join operator
10 years ago
Sam Blackshear 15480f34d5 distinguishing between failures and timeouts
10 years ago
Jules Villard 09f9765473 use several build directories
10 years ago
Sam Blackshear 6b9e1fc9d7 Stop reporting false alarms due to __nullable on Obj-C property getters and setters
10 years ago
jrm d579b2be51 avoid name collision when two or more files have the same basename
10 years ago
Josh Berdine 24aceba441 Remove unnecessary code from Arg module
10 years ago
Andrzej Kotulski f83927f0d7 Don't set is_objc_instance_method=true for any C++ methods
10 years ago
Dulma Rodriguez 96a5cf58e5 Nullify variables with objc flags if they appear in conditions
10 years ago
Jules Villard ec98c32b18 generate .{annot,cmt} files on demand
10 years ago
Sam Blackshear a82588ba8a Factoring out the implementations for letderef and set
10 years ago
Sam Blackshear 812ac265a8 more logging cleanup: only print Errdesc.warning_err in developer mode
10 years ago
Jules Villard ea4be060f6 add --disable-java-analyzers option
10 years ago
Sam Blackshear 44de91f84b logging to stderr/stdout all the time
10 years ago
Jules Villard edcc984158 compute version number inside configure script
10 years ago
Samuel Blackshear 546eaa0eaa only log to analyzer_err and analyzer_out files in developer mode
10 years ago
Dulma Rodriguez 742cb4146e Remove property of maps
10 years ago
Andrzej Kotulski 0bf6333708 Remove parent_line_number information from cfg translation
10 years ago
jrm 0def5c4111 No longer enforce the subtyping rule for the @PerformanceCritical annotation
10 years ago
Sam Blackshear df97489aa1 closing the classpath when we're done with it
10 years ago
Josh Berdine 63b57790f9 Fix indentation of multiline copyright comment
10 years ago
jrm d390568aed to avoid redundancy, no longer print the name of the class when printing the name of a constructor
10 years ago
Josh Berdine b729c93dd5 Add model of java.lang.Class.getResource
10 years ago
Andrzej Kotulski 6d9c5c684e Fix naming problems with template methods
10 years ago
Jules Villard 4d23334abd add version.mli
10 years ago
Jules Villard a31d45b4f7 do not use ocamlbuild -clean, do not print rm commands
10 years ago
Dulma Rodriguez fcd040ff8a Don't use the property of maps for finding properties in the frontend checkers
10 years ago
Dulma Rodriguez 339cf56eb9 Replace query for getter and setter with info from the procdesc rather than the property map
10 years ago
Jules Villard 2565bb1438 fix open-source taint models
10 years ago
Jules Villard b8c16ddb27 fix typo
10 years ago
jrm 24d28c6858 no longer fail when the type of an execption is not found in the type environement
10 years ago
Dino Distefano c8b80f2435 Extended framework for taint analysis
10 years ago
Sam Blackshear c6b8682dd6 compute taint errors in single pass over the set of atoms
10 years ago
Cristiano Calcagno 1666d7f353 Model Map.put() alongside Map.containsKey().
10 years ago
jrm 3ba477faff add more special characters that can appear in the list of filenames generated by Buck
10 years ago
jrm 15eb16723b non-functional refactoring of the Procname module
10 years ago
Sam Blackshear e0cf26e5c3 adding cf_interface flag--prereq for experimenting with dynamic dispatch for interfaces only
10 years ago
Josh Berdine d66261a1f4 Do not reuse Undef function values
10 years ago
Andrzej Kotulski 5b4df5566c Make all internal pointers convertible to ints
10 years ago
Dulma Rodriguez a54b2d03f6 Remove unused code from ast_expressions
10 years ago
Dulma Rodriguez 515ce95a98 Remove unused code in ObjCProperty_decl
10 years ago
Dulma Rodriguez b51da4f050 Remove the concept of generated method from the frontend and proc attributes
10 years ago
Dulma Rodriguez 1e5b8aeee7 Adding builtin setters and using them by skip
10 years ago
Andrzej Kotulski 173ee91844 Support template methods
10 years ago
Andrzej Kotulski b544be7bef Use PriorityNode.compute_results_to_parent in init_expr_trans
10 years ago
Andrzej Kotulski cd77e41fbb Simplify PriorityNode.compute_results_to_parent
10 years ago
Andrzej Kotulski 84549f691d Support decl_stmt in switch stmt
10 years ago
Andrzej Kotulski a8d5f4241d Put condition node to res_trans_cond
10 years ago
Jules Villard a57ec90405 add empty _tags file to pacify ocaml
10 years ago
jrm 61e457b1f6 Run the @PerformanceCritical checker by default with the other checkers
10 years ago
martinoluca 0dfe0b8f75 Let InferPrint count timeouts
10 years ago
Dulma Rodriguez c02b3ca034 Add correct ivar name to the getters and save the ivar to the tenv if not available
10 years ago
Andrzej Kotulski 6d7521809b Update fcp to get automatic location visitor
10 years ago
Andrzej Kotulski 92690551a6 Handle lvalues inside conditional operator right + fix init_expr_trans to fix materializeTempExpr not connecting nodes
10 years ago
Dulma Rodriguez 9c9504ba51 Using the link from method decl to property to determine whether the method is accessor
10 years ago
jrm 3b919179bc Add the type of the resource being leaked to the error message
10 years ago