967 Commits (523c2f539b8fc93525a76c4f374dbb64dcdde79b)

Author SHA1 Message Date
Dulma Churchill b99b653ffa [linters] Fix the computing of the successors of method declarations
7 years ago
Dulma Churchill 5f176f40e3 [linters] Add linters_doc_url flag for custom doc_urls for linters
7 years ago
Daiva Naudziuniene e78dc91f34 [destructors] Destroy fields after continue.
7 years ago
Dino Distefano 8cad1b5e69 Remove ETX operator from AL
7 years ago
Jules Villard c07cd81392 [log] better exception reraising
7 years ago
Daiva Naudziuniene c6c7411e05 [destructors] Destroy fields after break.
7 years ago
Daiva Naudziuniene 822ffc6f62 [frontend] Fix continue inside do while.
7 years ago
Dulma Churchill 7e3298711c [AL] Compute a witness child node when computing formulas to be used for more precise bug hashing
7 years ago
Jules Villard 5b3c2c0901 [clang] fix evaluation order bug discovered by building with OCaml 4.05.0
7 years ago
Martino Luca 740e9973d6 Replace existing calls to `exit` with InferExit exceptions to better control flow of executions
7 years ago
Martino Luca e247492901 [AL] Validate AST node names in AL source files
7 years ago
Sam Blackshear 14fa4aa7d9 [clang][dead stores] translate init-capture expressions
7 years ago
Daiva Naudziuniene 879891a3af [destructors] Injecting destructor calls of base classes
7 years ago
Daiva Naudziuniene 5ee61a4019 [destructors] Refactoring destructor translation.
7 years ago
Sam Blackshear 9772b2299d [clang] translate user-defined literals
7 years ago
Sam Blackshear de9d8f45ff [clang] partial translation of vector instructions
7 years ago
Sam Blackshear b4c0ddcff3 [cleanup] kill `Config.frontend_debug`
7 years ago
Dulma Churchill 47221ab273 [linters] Add support for Cxx structs when querying types
7 years ago
Dulma Churchill ecd79a56d3 [linters] Support transition Parameters also by ObjC method calls
7 years ago
Dulma Churchill 47088e078e [linters] Use the sdk version by path in the error message of unavailable api check
7 years ago
Jules Villard 1c375a17ac [log] die more appropriately
7 years ago
Daiva Naudziuniene 3e660b05ee [destructors] Injecting destructors of fields to destructor bodies.
7 years ago
Dulma Churchill 5ead13a225 Fixing crash that happened when reporting a lint issue in a templated method.
7 years ago
Daiva Naudziuniene 02c2e2b5bf Added a function to test if procdesc is a destructor.
7 years ago
Dulma Churchill 9f19f12a1b [linters] Fix incorrect assert false in Component linters
7 years ago
Roy Li 76bc7d686c Add predicate for enum constants of a particular enum
7 years ago
Martino Luca e8a0599850 [AL] add `--linters-validate-syntax-only` to check whether there are any syntax errors in AL files
7 years ago
Martino Luca 3576f2f7cc [AL] New exception ALFileException with source-location info
7 years ago
Martino Luca 98b1f74071 Refactor AL parser's exception into a separate module
7 years ago
Dulma Churchill 30d2822846 [linters] Restrict the remove observer check to when target ios sdk version is greater or equal than 9.0
7 years ago
Dulma Churchill a3309926b3 [linters] Add transition parameter with label for ObjC method declarations or method calls
7 years ago
Dulma Churchill 673f2b6917 [linters] Add option to specify iphone sdk version by path
7 years ago
Dulma Churchill a6f8850617 [linters] Provide predicate for checking the current method in the context
7 years ago
Dulma Churchill 3da5908728 [linters] Remove unavailable api class false positives and turn it on
7 years ago
Dulma Churchill 336f6f8dff [linters] Support reference types in the linters type parser
7 years ago
Jules Villard 69299ba675 [filtering] improve issue type filtering CLI
7 years ago
Martino Luca 17cc5ec7be Remove unsupported `index-store-path` argument from clang commands
7 years ago
Meng Zhang cdc54563d4 [Infer] Write a has_visibility_attribute predicate for AL
7 years ago
Andrzej Kotulski de6c396800 [docs] Extend src/clang/README.md with info about AST
7 years ago
Jules Villard f5ee50e7b5 [graphql] kill unused files
7 years ago
Andrzej Kotulski 6ca447fa6a [C] Fix issue with enum initialization lists
7 years ago
Andrzej Kotulski 88b74d524d [C++] Rewrite initListExpr_trans
7 years ago
Sam Blackshear 73dba57e45 [cleanup] remove useless append_instrs on empty instruction list
7 years ago
Jia Chen a718ebe8ec [frontend] Additional information for the backend to distinguish between pass-by-val args and pass-by-ref args
7 years ago
Daiva Naudziuniene f12616cea5 [destructors] Add scope management to clang frontend
7 years ago
Dulma Churchill 00c1b354e1 [linters] Improve to_string method for boxed values
7 years ago
Dulma Churchill d0858c7770 [linters] Improve the to_string method for string constants
7 years ago
Josh Berdine b36eaa2618 [clang] Disable -fembed-bitcode
7 years ago
Andrzej Kotulski c2207f5b06 small fixes to infer/src/*/README.md files
7 years ago
Jeremy Dubreil bf11a27158 [infer] merge --failures-allowed and --keep-going
7 years ago
Sam Blackshear cb9c768c61 [clang] translate vars captured by lambda
7 years ago
Dino Distefano a386ef5e83 Adding predicate for identify a selector with a particular name
7 years ago
Martino Luca a15d868fb0 Upgrading Infer to Clang 5.0
7 years ago
Jules Villard 845114f570 [al] precompute regexps
7 years ago
Jia Chen 3bacba762a Whitelist the constructors+conversion operators+destructors for classes listed on whitelisted_cpp_classes
7 years ago
Andrzej Kotulski d4c728913a [clang] Ignore all -mllvm args passed to clang -cc1
7 years ago
Dulma Churchill 416478d453 [linters] Predicate for checking enum constants
7 years ago
Josh Berdine 6bbb186ce2 [format] Attach docstrings to be warning 50 clean, other doc fixes
8 years ago
Andrzej Kotulski e366b0d9b5 [clang] Fix expression statement with conditional inside
8 years ago
Jia Chen 0b641edaac Do not assign the hidden field when processing init list initialization for objective c
8 years ago
Dulma Churchill 4a6652faef [linters] Do not report mutable local variable in components advice on static locals
8 years ago
Dulma Churchill 7c384669eb [linters] Add a new linter UNAVAILABLE_CLASS_IN_SUPPORTED_IOS_SDK for checking unavailable classes in supported ios sdk
8 years ago
Josh Berdine bab3d81cb0 Convert Reason to OCaml, and auto-format OCaml
8 years ago
Josh Berdine f07de2d9c9 Replace long structured string literals with 'quoted strings'
8 years ago
Dulma Churchill 8e078c33d7 [linters] Print active linters to the stdout when --print-active-checkers is passed
8 years ago
Andrzej Kotulski b8e679dfeb [generic models] Implement sample generic models, add code to handle them
8 years ago
Dulma Churchill 144e062684 [linters] Take instancesRespondToSelector into account to avoid FPs
8 years ago
Dulma Churchill 3aa68e23d9 [linters] Be able to specify human readable bug type in the rules
8 years ago
Dulma Churchill 431b5c6ede [linters] Disable filtering by path in debug or no-filtering mode
8 years ago
Daiva Naudziuniene 77e3110adc Propagating access of Decl from clang plugin to ProcAttributes.
8 years ago
Josh Berdine e04dd37df3 update opam deps
8 years ago
Andrzej Kotulski a864b4068f [clang IR] Change Fieldname.t to store typename
8 years ago
Andrzej Kotulski 61aa7aaae5 Move Fieldname module inside Typ
8 years ago
Dino Distefano 4a5d0e0b55 Adding ability to express properties on the hierachy of protocols
8 years ago
Dulma Churchill 7d680b3b0c [linters] Add an optional doc_url field to linters to specify the url to some documentation online.
8 years ago
Sungkeun Cho f8b8dd1abb [infer] Parse unsigned short (uint16_t) as IUShort
8 years ago
Dulma Churchill 2d1a8f4940 [linters] Remove leftover code related to paths
8 years ago
Dulma Churchill 72802024b3 [linters] Fix unavailable api check to take the avaiability attribute into account when it's not the first one in the list.
8 years ago
Jia Chen a6757be036 Force emitting prune node for C++ comparison expressions
8 years ago
Andrzej Kotulski 4ce997c8f0 [clang] blacklist -profile-guided-section-prefix
8 years ago
Dulma Churchill 855b87e5d9 [linters] Remove internal error warning that is not really an error
8 years ago
Dulma Churchill 45a8e48e00 [linters] Adapt the debugger and linters-developer-mode to the new logs
8 years ago
Dulma Churchill 47f1c6ffac [linters] Global paths
8 years ago
Dulma Churchill 99a0f894b6 [linters] Add option to blacklist the unavailable api check for some files
8 years ago
Dulma Churchill dfca0cdcf7 [linters] Introduce whitelist and blacklist path, also multiple paths
8 years ago
Andrzej Kotulski cf8d5483db [C++] Add option to exclude header models from compilation
8 years ago
Dulma Churchill 57dd45dd82 [linters] Improve the error message in implicit cast error
8 years ago
Dino Distefano 55da0055c9 Predicate for `using namespace`
8 years ago
Jules Villard b449b8c735 [wibble] refactor error output
8 years ago
Jules Villard 93cc3266e8 [log] log to a single file with different categories and debug levels
8 years ago
Jules Villard 03bd3f1df1 [log] append ERROR in front of `failwith` toplevel messages
8 years ago
Jules Villard b50f9f2695 [police] open IStd everywhere
8 years ago
Jules Villard 644066f4be [driver] make clear when the results dir becomes available
8 years ago
Jules Villard 1727bd4125 [clang] clang pointer map becomes a clang pointer hashtbl
8 years ago
Jia Chen c0e20e0880 Propagate C++ noexcept annotation from frontend to backend
8 years ago
Dulma Churchill 03bdf0fe2c [linters] Cast from pointer to integer
8 years ago
Martino Luca 2e8e5733f6 [AL] Load AL files from a directory
8 years ago
Dino Distefano 0809279b3b Extending type parser to deal with typedefs
8 years ago
Andrzej Kotulski 5522365479 [IR] Add Typ.TVar variant to Typ.desc
8 years ago
Dulma Churchill 46a539df82 [linters] Specify path in linters
8 years ago
Dulma Churchill f5d3870485 [linters] Adding a new error type like
8 years ago
Martino Luca d5fbb298eb Skip compilation of certain source files, if desired
8 years ago
Jules Villard 71f20908a1 [logging] revert to using `assert false` since we catch `Assert_failure` in some places
8 years ago
Dulma Churchill a7cff528fa [linters] Disable components factory function rule
8 years ago
Dino Distefano 4e7c7f30c1 Extended transitions to universal quantified operators
8 years ago
Jules Villard 741e527826 [console] print progress-like messages on stderr
8 years ago
Dino Distefano bdd2395be6 Adding ability to get type of paramters.
8 years ago
Dino Distefano cfd0a9b038 Extending type parser to parse ObjC classes.
8 years ago
Jules Villard 4266360606 [build] taking the .mli into account actually broke the build
8 years ago
Jules Villard 8dacc2df94 [build] move ctl_parse_types.mli to the right place
8 years ago
Jules Villard 252c78bb0e [clang] initialize dynamically-size stack-allocated arrays
8 years ago
Jules Villard 93ec47a5f4 [IR] add stride to array type
8 years ago
Jules Villard 801c605c26 [CLI] switch to infer-<command> (symlinks) executables
8 years ago
Jules Villard 709376945f [config] migrate help to use man pages
8 years ago
Dino Distefano 99552edd7b Extending type parser to parse pointer types.
8 years ago
Dulma Churchill 68f957ac97 [linters] Print name and type of the node in the debugging
8 years ago
Dulma Churchill d04a03b8e3 [linters] Remove redundant predicate
8 years ago
Dulma Churchill c9670d215d [linters] Add new predicate has_type and check for implicit cast
8 years ago
Dino Distefano c6a29e5e8a Adding more builtin type to parser
8 years ago
Jules Villard 29f7967f26 [build] remove unused values
8 years ago
Mehdi Bouaziz 5a57be9003 [infer][checkers] remove the bufferoverrun analyzer option and rely on the --bufferoverrun flag only
8 years ago
Mehdi Bouaziz 174c0091ae [inferbo] std::vector model for inferbo
8 years ago
Ryan Rhee 62e4364085 [componentkit] Whitelist CKComponentKey
8 years ago
Ryan Rhee 9f65b0d3fa [componentkit] Whitelist CKComponentContext
8 years ago
Sam Blackshear 6680126af9 [cleanup] replace Location.dummy with Location.none where acceptable
8 years ago
Dulma Churchill 1a141eddca [ObjC capture] Model functions related to dispatch sources
8 years ago
Dulma Churchill 6097c05d88 [clang] Add a preanalysis to compute nullability annotations
8 years ago
Dino Distefano 5bb41cc18c Removing predicates _strict
8 years ago
Dino Distefano 3c6f53c896 Adding predicate to get return type of a method and start a new parser for types
8 years ago
Andrzej Kotulski c1147710ba [C++] Store class template name without its template arguments
8 years ago
Jeremy Dubreil 250d9cb8b3 [infer] the function to pretty-print the call graph does not need to access the analysis summaries
8 years ago
Andrzej Kotulski 7a0c4d9031 add more quals to SIL
8 years ago
Andrzej Kotulski aefbbe8680 [clang] Translate type qualifiers into Sil
8 years ago
Jules Villard 1b0ee6fbc3 [clang] add sizeof static value to translation
8 years ago
Andrzej Kotulski db3c07a631 [clang frontend] Pass type qualifiers through frontend
8 years ago
Andrzej Kotulski 029499cd9d [IR] add type qualifiers to Typ.t
8 years ago
Dulma Churchill 69afe434a9 [clang] Add a flag to get around missing files in the buck integration
8 years ago
Andrzej Kotulski e742d5bb7b [clang] Replace Prebuilt type_ptr with Typ.t
8 years ago
Martino Luca 05a9270b13 [CTL] Attach CTL debugger to breakpoints in source code
8 years ago
Andrzej Kotulski a81f4e7bf9 Remove custom Clang_ast_types module, extend types instead
8 years ago
Andrzej Kotulski 6d360fb84a [C++] Replace clang_include_to_override with regex
8 years ago
Martino Luca 2e3b9a30ab [CTL][Debug] Fix colouring issue
8 years ago
Jules Villard 857eae7c6b [build] address warnings 52 and 57
8 years ago
Jules Villard dd2c56da06 be more careful about handling invalid source files
8 years ago
Dulma Churchill 07c9e71399 [linters] Improve linter developer mode
8 years ago
Jules Villard b349fb147c [build] upgrade Reason to 1.13.3
8 years ago
Dino Distefano 7cef8ae3b5 Making AL distinguish class methods from instance methods
8 years ago
Andrzej Kotulski 3cdb0e04f5 [SourceFile] Move append_crc_cutoff to DB module
8 years ago
Dulma Churchill da0e0305f0 [linters] Make fail with syntax error appear at the end of the stderr in linters developer mode
8 years ago
Martino Luca b956d2ddef [CTL] Initial version of a step-by-step debugger for CTL formulas
8 years ago
Andrzej Kotulski 5503487704 [C++] Introduce mechanism to write generic models
8 years ago
Dulma Churchill 6c3cc6fca4 [linters] Do not return a dummy ctl formula from the hardcoded linters
8 years ago
Dulma Churchill 9a9dec4d96 [linters] Disable hard_coded linters in linters developer mode
8 years ago
Andrzej Kotulski 21af28619f [C++] Use annotate attribute instead of deprecated
8 years ago
Jules Villard cccefd6434 [driver] better user error messages
8 years ago
Dulma Churchill f4bc0db2b4 [clang] Make capture with simple clang command be a method call
8 years ago
Dino Distefano 3ebf8c3277 Added the capability to import macros files in AL
8 years ago
Andrzej Kotulski f598360786 [C++] Make QualifiedCppName.t reversed list
8 years ago
Dino Distefano d32faf4f46 Replacing strings by a new data type for AL variables
8 years ago
Andrzej Kotulski fbddeba8a7 [clang] Don't inline global var initializers
8 years ago
Dino Distefano 40e63aa42c Added the capability to define macros in AL
8 years ago
Andrzej Kotulski 2cc972705a [clang] Make backend use QualifiedCppName.t instead of string
8 years ago
Andrzej Kotulski 4da4949049 [clang][AST] Fix wrong type in translation of NoOp cast and MaterializeExpr
8 years ago
Andrzej Kotulski 2b655c223f [clang] Use QualifiedCppName.Match for infer_traits::TranslateAsType
8 years ago
Andrzej Kotulski ade5a06cd4 [IR][clang] Use qualified cpp name in fields, improve errdesc.ml
8 years ago
Andrzej Kotulski 71702a13dc [IR] More detailed type for Fieldname.t
8 years ago
Andrzej Kotulski e6ebad394e [IR] Make qualified names type safe
8 years ago
Andrzej Kotulski 7c64d217f2 [IR] Refactor Ident.fieldname _*into Fieldname module
8 years ago
Andrzej Kotulski 9a07318ab7 [IR] Simplify Typ.Name.t type by inlining Csu.t type
8 years ago
Martino Luca a7b947f971 Add support to format reports natively
8 years ago
Dulma Churchill 565ce2166d [ios] Translate nonnull annotations and take them into account in parameter not null checked issues.
8 years ago
Andrzej Kotulski 42947ea9d9 [IR] Make template info part of Typename.t, rename Typename to Typ.Name
8 years ago
Dino Distefano df543b900b Making easier to specify subclassing
8 years ago
Dulma Churchill fca8322c1f [linters] Save the linters definition file in the report.json
8 years ago
Andrzej Kotulski 24b56de0e9 Populate mangled file only if it's not empty
8 years ago
Andrzej Kotulski f4c424b4cc [clang frontend] Cleanup CAst_utils
8 years ago
Andrzej Kotulski 6c67c850d5 [clang capture] Don't attach plugin when clang is invoked in preprocessor mode
8 years ago
Andrzej Kotulski 41c9b05b47 [clang frontend] assert false on param mismatch
8 years ago
Dino Distefano 43f3a33c0c [infer][AL-DSL] Added predicates to query method calls of a certain class (Real Version).
8 years ago
Dulma Churchill cdd58da8b1 [linters] Save the linters file in the linter definition
8 years ago
Andrzej Kotulski 06ac72c311 [clang] Pass template instantiation info to procnames in clang
8 years ago
Andrzej Kotulski 925d73efce [clang] Add template instantiation info into Procname.t
8 years ago
Andrzej Kotulski e363958d34 [codemod] Move `Procname` into `Typ.Procname`
8 years ago
Dulma Churchill 6f25eefc1d [linters] Make the syntax error message more prominent
8 years ago
Andrzej Kotulski e08d9341c8 [clang] Run direct tests with --no-failures-allowed flag
8 years ago
Andrzej Kotulski 55b18df306 [clang] Make translation failures crash InferClang when --no-failures-allowed is set
8 years ago
Andrzej Kotulski 104acee99d [Sil] Create Typename.Obj/Cpp modules with constructors
8 years ago
Andrzej Kotulski 1a9b81c0f4 [clang] Store Typename.t in Procname.ObjC_Cpp.class
8 years ago
Andrzej Kotulski b52a17eb75 [objc] Remove class information from CContext
8 years ago
Andrzej Kotulski bc852ec0d1 [Typ] Add instantiation types to StructTyp.t
8 years ago
Dulma Churchill 15a0662149 [clang] Adding annotations for ObjC instance variables
8 years ago
Dulma Churchill f549d58625 [ios] Capture the signature of getters and setters from headers.
8 years ago
Dulma Churchill 60f732bf7e [clang] Refactor annotation generation to a separate place
8 years ago
Dulma Churchill 01c1d9f112 [linters] Remove new lines from linters messages
8 years ago
Andrzej Kotulski 171083fbba [clang] Move mk_procname_ functions to separate module
8 years ago
Dulma Churchill 04d96cb84b [ios] Remove methods from the tenv as they are not used in the backend
8 years ago
Josh Berdine 95725e4dd0 Refactor StructTyp to Typ.Struct
8 years ago
Andrzej Kotulski f5bb35e245 [C++] Don't put c++ methods into type environment
8 years ago
Cristiano Calcagno 9a06a859e2 Deprecate IList part 3.
8 years ago
Cristiano Calcagno b1b5460529 Deprecate further IList functions
8 years ago