[PATCH] D146089: [Sema] Fix null pointer dereference handleAlwaysInlineAttr.

Erich Keane via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 15 11:01:28 PDT 2023


erichkeane added inline comments.


================
Comment at: clang/test/Sema/attr-alwaysinline.cpp:36
+        return x;
+}
+
----------------
craig.topper wrote:
> erichkeane wrote:
> > Can you add a test that shows that we warn on instantiation?  This shouldn't be a dependent declrefexpr when instantiated.
> > 
> > Additionally, this would make sure that we're properly propoagating `always_inline`.
> Should this warn
> 
> ```
> template<int D> [[gnu::noinline]]                                                
> int bar(int x) {                                                                 
>     if constexpr (D > 1)                                                         
>         [[clang::always_inline]] return bar<D-1>(x + 1);                         
>     else                                                                         
>         return x;                                                                
> }                                                                                
>                                                                                  
> int baz(int x) {                                                                 
>   return bar<5>(x);                                                              
> }  
> ```
Yes, I would expect that to warn.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D146089/new/

https://reviews.llvm.org/D146089



More information about the cfe-commits mailing list