1042 Commits (b71521a90a04b103d397bcf16377a729e546b363)

Author SHA1 Message Date
Dulma Churchill 0322e17e72 [IR] print only the passed_as_noescape_block_to attribute if it's set
5 years ago
Sungkeun Cho 9dbc3981cc [infer] Add LRU hash table
5 years ago
Artem Pianykh 19093a2fa0 @update-submodule: facebook-clang-plugins Fix handling of non-literal `offsetof` expressions
5 years ago
Jules Villard 2047f4c535 [preanal] inlining synthetic methods as a pre-analysis
5 years ago
Mitya Lyubarskiy 73e78d9e20 [orchestration][refactoring] Introduce stronger contract for file-level callback
5 years ago
Nikos Gorogiannis e01311c431 [scheduler][callgraph] load graph directly from DB
5 years ago
Mitya Lyubarskiy d94b365b65 Add documentation and better naming around checker callbacks
5 years ago
Artem Pianykh 2572819a5b [nullsafe] Directly model nullability of values from third-party code
5 years ago
Artem Pianykh b50f13eb18 [nullsafe] Support Nullsafe(Local, trust=all/none) mode
5 years ago
Nikos Gorogiannis 43b3ef60f8 [db][procname] kill dead optional argument
5 years ago
Ezgi Çiçek ec950666a0 [infer] rely on driving for Procdesc.Node.equal_id
5 years ago
Nikos Gorogiannis 281385203f [biabduction] kill guarded by check
5 years ago
Nikos Gorogiannis c10c7a39a6 [java] use a package/classname record for java classes instead of string
5 years ago
David Pichardie 64289cde4d [Java frontend]Javalib's lambda rewritting is making his way through Infer
5 years ago
Nikos Gorogiannis ace23a1670 [java] use plain strings instead of mangled for JavaClassName
5 years ago
Dulma Churchill 00c52a52c2 [Infer] Dedup the reporting of Captured StrongSelf
5 years ago
Artem Pianykh 44f41d2929 [infer] Extend annotation framework to handle wider variety of param types
5 years ago
Jules Villard 2c5a297636 @allow-large-files [ocaml] upgrade core to v13
5 years ago
Jules Villard 66361961b6 [ocaml] more Not_found_s
5 years ago
Jules Villard a684a1edf0 [ocaml] preparations for core v13
5 years ago
Sungkeun Cho ca04002f6c [inferbo] Revise finding constructors on std::make_shared
5 years ago
Dulma Churchill a864823f38 [SelfInBlock] Fix a bug in exps_of_instr where some expressions were missed.
5 years ago
Dulma Churchill 682f8c5355 [SelfInBlock] Add the procname to the is_no_escape_block flag to improve the error message of the weakSelf In Noescape block check
5 years ago
Nikos Gorogiannis a6da208e9d [starvation] use access expressions instead of access paths
5 years ago
Sungkeun Cho 5510223850 [infer] Get rid of the is_cpp_nothrow field and is_cpp_noexcept_method
5 years ago
Jules Villard 81e3dc5069 [HIL] do not crash on confusing function call expressions
5 years ago
Sungkeun Cho f8ee0a14aa [inferbo] Give semantics of std::make_shared as simple constructor
5 years ago
Dulma Churchill 05ea5ec844 [clang frontend] Add support for the clang attribute NS_NOESCAPE for Objective-C blocks in Sil
5 years ago
Ezgi Çiçek 43a99745b6 [infer] Get rid of verbose Typ.mk Tvoid
5 years ago
Nikos Gorogiannis 07e91cabf7 [starvation] no inner class normalisation for java
5 years ago
Nikos Gorogiannis 72a7a0eaab [racerd] use typenames instead of strings in class map
5 years ago
Sungkeun Cho c93c3163d6 [inferbo] Get global constant array values from initializers
5 years ago
Nikos Gorogiannis 279f1c85ce [racerd] abbreviate procnames in report text
5 years ago
Ezgi Çiçek 5b86031798 [frontend] Move clang constants to Procname
5 years ago
Artem Pianykh 592c746e6b [java] Make override resolution consider parameter types
5 years ago
Nikos Gorogiannis a79a819679 [typ][javaclass] abstract typename
5 years ago
Nikos Gorogiannis b8d51b0493 [starvation] use root component in lock order
5 years ago
Sungkeun Cho 4ddf46268f [infer] Create missing result directories
5 years ago
Nikos Gorogiannis 91fa6a5404 [typ] extract Procname from Typ
5 years ago
Nikos Gorogiannis 33352623a5 [typ] extract Fieldname from Typ
5 years ago
Nikos Gorogiannis cef051dd1a [typ] extract Struct module
5 years ago
Jules Villard 65d0d18326 [SIL] splitting off biabd stuff from SIL
5 years ago
Jules Villard bc799fc6cd [IR] `PredSymb.dangling_kind option` can be replaced by `bool`
5 years ago
Jules Villard 6c988160c1 [IR] kill unused `Sil.hpred` payload
5 years ago
Jules Villard 0cab96b43e [SIL] move some stuff to Pvar
5 years ago
Jules Villard 30b74413a5 [SIL] move some printing stuff to Exp
5 years ago
Jules Villard a6c8e7c98e [pp] move utility function from Sil to Pp
5 years ago
Radu Grigore 7bfef217de [biabduction] Simplify postconditions after re-execution.
5 years ago
Mitya Lyubarskiy 9285c51dfa [nullsafe] Enum values can be used as non-null without strictification
5 years ago
Nikos Gorogiannis e42bd8cd6c [typ][fieldname] further reduce and improve interface
5 years ago
Nikos Gorogiannis 59a95b316c [typ][fieldname] simplify and streamline interface
5 years ago
Nikos Gorogiannis c45b55bff1 [typ][fieldname] unify clang and java fieldname types
5 years ago
Nikos Gorogiannis 2c44035297 [typ][fieldname] eliminate uses of Java.from_string
5 years ago
Sungkeun Cho bc5f740945 [infer] make deadcode is back
5 years ago
Sungkeun Cho 1f64acf3de [litho] Moved is_build_called and added is_return_called
5 years ago
Nikos Gorogiannis ce39017611 [typ][fieldname] make java representation more sharing friendly and typesafe
5 years ago
Jules Villard 1bde1ef0f0 [pulse] use inferbo's prune in `PRUNE` nodes
5 years ago
Sungkeun Cho 2835468df9 [litho] Add substitution at function calls
5 years ago
Jules Villard 17bef4bd31 [SIL][trivial] rename `text` -> `to_string` and delete useless comments
5 years ago
Josh Berdine 3c6e2469de [ocamlformat] Enable parsing and reformatting docstrings
5 years ago
Nikos Gorogiannis aef34d8384 [starvation][whole-program] analyze constructors for initial attribute state
5 years ago
Ezgi Çiçek fb56f42716 [infer] Rename value to arg_payload in ProcnameDispatcher.Call.FuncArg
5 years ago
Ezgi Çiçek eb8c8af117 [pulse] Move models to ProcnameDispatcher style
5 years ago
Sungkeun Cho b15395ad60 [infer] Remove marker from procname dispatcher
5 years ago
Ezgi Çiçek 3d181bd831 [infer] Polymorphic value type for `FuncArg`
5 years ago
Ezgi Çiçek 3792b9b17a [infer] Record the value of function arguments in ProcnameDispatcher calls
5 years ago
Nikos Gorogiannis 20a7e9d75b [starvation][whole-program] add a bit of typestate/dataflow
5 years ago
Sungkeun Cho 6885fb4256 [infer] Distinguish dummy struct types from normal ones when merging tenv
5 years ago
Jules Villard b3d0461317 [IR] kill PredSymb.func_attribute by moving sentinel attrs to its own ProcAttribute field
5 years ago
Jules Villard a9df6a917f [IR] kill never-true "no_return" flag of Tfun type desc
5 years ago
Jules Villard 997948914f [IR] remove dead no_return CallFlag
5 years ago
Jules Villard d79bd90b81 [pdesc] new pre-analysis to diverge after "noreturn" function calls
5 years ago
Jules Villard 78a33acb77 [cfg] run pre-analysis lazily in ondemand
5 years ago
Sungkeun Cho b1698ab0ea [inferbo] Get static value of EMPTY from class initializer in Java
5 years ago
Jules Villard 8289c7e7c7 [dot] move "dot" render of biabduction specs
5 years ago
Jules Villard b03ca78bf3 [pdesc][refactor] ability to set normal and exceptional succs independently
5 years ago
Jules Villard 6ecf4066e8 [pulse] model std::integral_constant
5 years ago
Dulma Churchill bf581e0b72 [self in block] Add a check for strongSelf not checked for null
5 years ago
Josh Berdine 8d20e4d64d [ocamlformat] Upgrade ocamlformat version
5 years ago
Sungkeun Cho 773766e3f7 [inferbo] Function call of Java enum values in class initializer
5 years ago
Mitya Lyubarskiy 027ff479d1 [nullsafe] 3rd party annotations from the repo are respected in nullsafe
5 years ago
Dulma Churchill 43823266ec [self in block] Add a new checker to detect correct uses of when ObjC blocks capture self.
5 years ago
Mitya Lyubarskiy 0c3e568fa4 [Pp] Rename Pp.to_string
5 years ago
Nikos Gorogiannis d154415cd0 [starvation] add path sensitivity restricted to thread status
5 years ago
Jules Villard 2e4fbb7fe5 [pulse] intervals!
5 years ago
Nikos Gorogiannis e9b0ca9ce4 [AI] rename Domain.( <= ) to Domain.leq
5 years ago
Sungkeun Cho 96668ed7d8 [cost] Fix function name matching
5 years ago
Jules Villard b818102bad [pvar] simplified names for generated variables
5 years ago
Nikos Gorogiannis 9dbe55c419 [java tracing] goodbye
5 years ago
Sungkeun Cho c509f1c178 [cost] Add FB-specific cost models
5 years ago
Sungkeun Cho dda1486a67 [inferbo] Introduce inequality for size alias target
5 years ago
Ezgi Çiçek 8c1fdab0a8 [java] Enhance annotation parsing with the ability to pick up parameter names
5 years ago
Jules Villard c19d9254b4 [typ] make use of pretty printers instead of strings
5 years ago
Jules Villard 088b083d87 [typ] prefer pretty printing to string building
5 years ago
Mitya Lyubarskiy fc651cb876 [nullsafe] Remove deadcode
5 years ago
Sungkeun Cho 962e56cb1b [infer] Use typ instead of root_typ if possible
5 years ago
Sungkeun Cho 3916d1b3bc [infer] Add type field in Sil.Store
5 years ago
Dulma Churchill 27ea5d041b [biabduction] Rename use_after_free to avoid name clash with Pulse
5 years ago
Sungkeun Cho 3250ff35d2 [infer] Add typ field in Sil.Load
5 years ago
Sungkeun Cho a50fcaf2dd [infer] Use inline record for Sil.Load and Sil.Store
5 years ago
Sungkeun Cho 78cfc867a5 [inferbo] Print non-verbose program variables
5 years ago
Nikos Gorogiannis b8954e714e [sqlite] write-server implementation
5 years ago
Nikos Gorogiannis 83aea33c68 [sqlite] move all writes to one module
5 years ago
Mitya Lyubarskiy 356ec9afe5 [easy] make method with side-effects looks like it has side-effects
5 years ago
Nikos Gorogiannis ccc7dcbc1e [racerd] use access expressions in place of paths
5 years ago
Jules Villard 41c003ace1 [biabd] rename models-related things to "biabduction-..."
5 years ago
Sungkeun Cho a3229fc43a [inferbo] Suppress intended integer underflow of unsigned integer
5 years ago
Jules Villard 128f37985d [ocaml] upgrade most dependencies
5 years ago
Martin Trojer 124036ea0b New faster version of Diff/Test-Determinator
5 years ago
Nikos Gorogiannis ae4f7561b3 [hil] class constant types
5 years ago
Jules Villard 7f12ced394 [pulse] move to SIL proper
6 years ago
Radu Grigore 10d87eec4e [topl] Simple error reporting.
6 years ago
Mehdi Bouaziz 0efd8960e1 [Tenv] Maximum sharing
6 years ago
Radu Grigore 384b3c5798 Assert that there is at most one flowgraph per procedure name.
6 years ago
Mehdi Bouaziz 5f8514a8c2 [sqlite] Normalize blobs used for comparison
6 years ago
Jules Villard 04233ee49b [clang] destroy C++ temporaries
6 years ago
Jules Villard 0592bac25e [pulse] explain SIL logical variables in terms of program access paths
6 years ago
Jules Villard c9f4768be7 [pulse] move to SIL
6 years ago
Ezgi Çiçek fedb8e5136 [infer] Cleanup preanalysis
6 years ago
Nikos Gorogiannis 013d153538 [buck/java2] hashcons the global tenv during merging
6 years ago
Jules Villard db800f138b [clang] rewrite scope computations
6 years ago
Jules Villard eaa5c32432 [clang] some more debug info
6 years ago
Jules Villard 696731523d [pname dispatcher] more permissive templated function match
6 years ago
Josh Berdine cfc1c8be36 [copyright] Remove years
6 years ago
Ezgi Çiçek d2eb3c8cc6 [inefficient-keyset-iterator] New checker for finding inefficient keySet iterator
6 years ago
Radu Grigore d86e2f0d1c [topl] Generate monitor.
6 years ago
Radu Grigore 047c64c528 [topl] Instrument SIL.
6 years ago
Ezgi Çiçek 99bc7363bf [cost] Suppress reports on Java access methods
6 years ago
Nikos Gorogiannis bc61543875 [buckjava2] refactor
6 years ago
Radu Grigore 3cf774a142 Fixed typos in comments.
6 years ago
Jules Villard d586630edf [pules] do not print templated part of function names
6 years ago
Jules Villard 5de9bc29d2 [pulse] better error messages
6 years ago
Jules Villard b700af9ffb [hil] do not put parens around trivial expressions
6 years ago
Martin Trojer e7ad99eed0 Using DB to store modified functions
6 years ago
Nikos Gorogiannis 7106de35a3 [issuelogs] less imperative
6 years ago
Nikos Gorogiannis d082f36448 [sqlite] calls in the db
6 years ago
Nikos Gorogiannis 8450ac36d8 [trivial] procname should implement Hashable
6 years ago
Jeremy Dubreil 95ddfd04ca Revert "[topl] Synthesize trivial procedures."
6 years ago
Mehdi Bouaziz 2a0ec8c0db Fix infer explore --source-files-procedure-names
6 years ago
Radu Grigore 86aae0b8ed [topl] Synthesize trivial procedures.
6 years ago
Jules Villard 1e3fafb558 [report] avoid embarrassing "object `null` could be null" message
6 years ago
Jules Villard 95132bc3f0 [report] restore missing "could be null and is dereferenced" message for nullable dereference
6 years ago
Jules Villard b5589661ce [pulse] improve error messages and traces
6 years ago
Jules Villard ada032ee2c [pulse] improve error messages and traces
6 years ago
Jules Villard 53b1577b4c [pulse][interproc 3/3] interproc call
6 years ago
Jules Villard 686231ec6e [SIL] change `variable_initialization()` builtin to a new auxiliary instruction
6 years ago
Jules Villard 2151be9c25 [issues] do not dedup issues when `Config.filtering` is unset
6 years ago
Jules Villard ebe5028ca1 [SIL] add `Skip` metadata instruction
6 years ago
Jules Villard b665e1c575 [SIL][HIL] distinguish auxiliary instructions as `Metadata`
6 years ago
David Lively 5d4a27ea54 RFC: stop using _ to separate ObjC/C++ class name from method in Typ.Procname.to_string
6 years ago