steakhal wrote:

@aeft I have a couple more patches downstream but I don't think we will overlap 
much.
My patches are about:
- Adding support for propagating 
[ownership_takes](https://clang.llvm.org/docs/AttributeReference.html#ownership-holds-ownership-returns-ownership-takes-clang-static-analyzer)
 attributes - aka. functions that potentially release some of its parameters 
and treating it as a call that invalidates.
- Flow pointee loan for lifetimebound reference-to-pointer params. (This one is 
probably the most controversial. It makes `std::exchange` work for assigning 
`nullptr` to pointer member fields - note that std::exchange takes its operand 
as `T&`, and if `T=int*` then the propagation currently breaks down)
- Fix the `struct_pointer_field` case in 
`clang/test/Sema/LifetimeSafety/safety-c.c`. In plain words, Track origins 
stored in struct pointer fields.
- Fix assertion failure inferring lifetimebound 'this' for deduced return types.

I think these are the patches I want to upstream in the close future.

https://github.com/llvm/llvm-project/pull/194797
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to