168 Commits (97bf3324c82e7add30cb459b2a1ed7f466a96e8c)

Author SHA1 Message Date
Sam Blackshear 4627bb6f48 [absint] simplify `AbstractInterpreter.Make` functor by hiding `Scheduler` parameter
9 years ago
Sam Blackshear 9ed282b28b [thread-safety] handle constructors by understanding that a constructor owns `this`
9 years ago
Sam Blackshear 0e77e36235 [thread-safety] propagate @Functional attribute across boxing of primitive types
9 years ago
Sam Blackshear d41b500659 [thread-safety] treat constants as owned
9 years ago
Cristiano Calcagno 5c12d98d37 Deprecate IList module in favour of Core List
9 years ago
Sam Blackshear f6e8bf0f3f [thread-safety] don't warn on external accesses to fields of ThreadConfined classes
9 years ago
Sam Blackshear f9280b682f [thread-safety] don't warn on accesses to fields assigned to @Functional calls
9 years ago
Sam Blackshear 70df06a596 [thread-safety] don't consider VisibleForTesting methods as public
9 years ago
Sam Blackshear d0f4e8771b [cleanup] generalize PatternMatch.iter_overrides to override_exists
9 years ago
Sam Blackshear 50c73e517b [cleanup] adding Annotations.pname_has_return_annot function
9 years ago
Sam Blackshear 3ee349ee23 [thread-safety] warn on unsafe accesses to lists
9 years ago
Sam Blackshear bcfcb5d405 [cleanup] restrict uses of annotated_signature to eradicate
9 years ago
Sam Blackshear 2351f767dc [cleanup] use pdesc_has_return_annot and friends instead of more cumbersome ways of looking up return annots
9 years ago
Sam Blackshear b227ee58a6 [thread-safety] handle some annotations as aliases of ThreadConfined
9 years ago
Sam Blackshear 369feb4149 [thread-safety] allow ownership to be transferred via return
9 years ago
Cristiano Calcagno b1421bc27f [BetterEngineering] Remove remaining uses of polymorphic equality
9 years ago
Sam Blackshear d25a3edbd7 [thread-safety][cleanup] open ThreadSafetyDomain locally to avoid excess typing
9 years ago
Sam Blackshear e132188361 [thread-safety] warn on unsafe accesses in overrides of methods annotated with @ThreadSafeMethod
9 years ago
Sam Blackshear b9694ef086 [thread-safety] warn on unsafe writes in constructors
9 years ago
Sam Blackshear c4c495fbe5 [thread-safety] propagate conditional writes to callers
9 years ago
Sam Blackshear 4373945e74 [thread-safety] don't warn on writes rooted in a parameter owned by the callee
9 years ago
Sam Blackshear e565010cf3 [thread-safety] don't warn on writes to volatile fields
9 years ago
Sam Blackshear 618e9c9338 [thread-safety] add @AssumeThreadSafe annotation to assume thread-safety of a method without checking it
9 years ago
Sam Blackshear f4b1af6f91 [thread-safety] allow @ThreadConfined annotation on methods
9 years ago
Sam Blackshear f065f7653a [thread-safety] add map for conditional accesses
9 years ago
Sam Blackshear 72e17403fa [thread-safety] add and support @ThreadSafeMethod annotation
9 years ago
Sam Blackshear 1891a16f8f [thread-safety] suppress warnings on methods annotated with @OnEvent
9 years ago
Sam Blackshear 8b57278c70 [thread-safety] support fields annotated with @ThreadConfined
9 years ago
Sam Blackshear 73f219560d [thread-safety] warn on unsafe accesses to maps
9 years ago
Peter O'Hearn 7bcc7e421d [threadsafety] don't warn on methods from classes annotated ThreadConfined
9 years ago
Sam Blackshear 68c0705f26 [thread-safety] don't warn on methods annotated with UiThread
9 years ago
Sam Blackshear 8d0f6e822c [absint] don't require domains to define their initial state
9 years ago
Sam Blackshear e8835b308e [thread-safety] add liveness analysis for thread-safety
9 years ago
Sam Blackshear 3ca924f546 [thread-safety] blacklist logging methods
9 years ago
Peter O'Hearn 4057ffadcf [threadsafety] Change THREAD_SAFETY_ERROR to THREAD_SAFETY_VIOLATION
9 years ago
Peter O'Hearn 23a0a611dc [threadsafety] Fix situation where @NotThreadSafe is reported on, when super is @ThreadSafe
9 years ago
Sam Blackshear ee90e10491 [thread-safety] don't report on fields of immutable collections
9 years ago
Sam Blackshear 79154adf9e [thread-safety] use ownership info to avoid false alarms
9 years ago
Sam Blackshear 8e212f0468 [thread-safety] use id map to decompile tmp vars into access paths
9 years ago
Sam Blackshear 5bd4daa900 [absint] make Interprocedural functor easier to customize
9 years ago
Sam Blackshear 2386bc8f67 [thread-safety] use record type in domain
9 years ago
Josh Berdine 2e66dcfac4 Open Core.Std by default, still use Caml Hashtbl, Map, Set
9 years ago
Josh Berdine e438314776 Divide Utils into Utils, Pp, and IStd
9 years ago
Josh Berdine e415b73786 Core.Std.String
9 years ago
Sam Blackshear e212183e7e [thread-safety] don't count accesses in methods of builder classes
9 years ago
Sam Blackshear c1205c1453 [thread-safety] model ReadLock/WriteLock
9 years ago
Sam Blackshear 5743351906 [thread-safety] don't report thread safety violations due to calls to constructors
9 years ago
Sam Blackshear 3b161a3737 [thread-safety] interprocedural traces for thread safety checker
9 years ago
Sam Blackshear 579b982359 [thread-safety] Lay the groundwork for interprocedural trace-based reporting
9 years ago
Sam Blackshear 226791b631 [ondemand] simplify API by removing need to pass type environment
9 years ago
Sam Blackshear 01136cc326 [thread-safety] interprocedural analysis
9 years ago
Sam Blackshear 937ae12f29 [thread-safety] adding models for lock methods
9 years ago
Sam Blackshear 9e9ca333f9 [thread-safety] use boolean domain to track locks
9 years ago
Peter O'Hearn 47588027eb [threadsafety] analyze all the files and methods
9 years ago
Peter O'Hearn 7a04ed32f5 [threadsafety] interprocedural
9 years ago
Peter O'Hearn 171d1d6d43 [threadsafety] run thread safety checker on its own
9 years ago
Cristiano Calcagno c5159bae1c [IR] Move Procdesc module to a separate file.
9 years ago
Andrzej Kotulski 46592ffdd9 [backend] Split construction of builtin pnames and builtin registration
9 years ago
Peter O'Hearn ec45b44dfd [threadsafety] Better error message when warning on subclasses of @ThreadSafe classes
9 years ago
Sam Blackshear 2c0bf042b4 [checkers] extract access paths from non-lhs expressions
9 years ago
Peter O'Hearn 25a688bdbe [threadsafety] Consider certain init() methods as constructors
9 years ago
Peter O'Hearn b1e9267e08 [threadsafety] Don't warn autogenerated methods (containing '$' in proc name)
9 years ago
Peter O'Hearn 2601af5ade [threadsafety] don't report on class initializers
9 years ago
Peter O'Hearn 69f7ed5f6d [threadsafe] fix the code for recognizing constructors
9 years ago
Peter O'Hearn 6423ec74ad Writing errors for Threadsafe checker
9 years ago
Peter O'Hearn 6b2a9de863 [refactor] moving check_attributes to patternMatch.ml
9 years ago
Peter O'Hearn 81344f016e [refactor] moving StringPPSet from ThreadSafety to Utils
9 years ago
Peter O'Hearn 3d1eba890a thread safety checker alpha0
9 years ago