mgehre added inline comments.
================ Comment at: clang/include/clang/Sema/Sema.h:6097 + + /// Add [[gsl::Owner]] and [[gsl::Pointer]] attributes for std:: types. + void addDefaultGslPointerAttribute(TypedefNameDecl *TD); ---------------- gribozavr wrote: > It seems like this function does not add gsl::Owner. Fixed comment ================ Comment at: clang/lib/Sema/SemaTemplate.cpp:1689 AddPushedVisibilityAttribute(NewClass); + addDefaultGslOwnerPointerAttribute(NewClass); ---------------- gribozavr wrote: > It shouldn't be necessary to perform inference here, instead, the attributes > should be instantiated, see `instantiateDependentAlignedAttr` in > SemaTemplateInstantiateDecl.cpp for an example. From what I understand, here the attribute is put on the `ClassTemplateDecl`. Without this, there would be no attribute to instantiate from? The instantiation of OwnerAttr/PointerAttr is auto-generated into instantiateTemplateAttribute() in `build/tools/clang/include/clang/Sema/AttrTemplateInstantiate.inc`. ================ Comment at: clang/lib/Sema/SemaTemplateInstantiateDecl.cpp:702 SemaRef.InstantiateAttrs(TemplateArgs, D, Typedef); + SemaRef.addDefaultGslPointerAttribute(Typedef); ---------------- gribozavr wrote: > Ditto, should not be necessary to perform inference here. I'll move this to already act on the typedef in the ClassTemplateDecl (instead of the instantiation here). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D64448/new/ https://reviews.llvm.org/D64448 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits