shafik added inline comments.

================
Comment at: clang/lib/AST/Interp/ByteCodeExprGen.h:282
+  bool isGlobalDecl(const VarDecl *VD) const {
+    return !VD->hasLocalStorage() || VD->isConstexpr();
+  }
----------------
tbaeder wrote:
> shafik wrote:
> > Why not `hasGlobalStorage()`?
> > 
> > Also what is the logic behind `isConstexpr()` check?
> Didn't know `isGlobalStorage()` existed ;)
> 
> Constexpr local variables can be handled like global ones, can't they? That 
> was the logic behind it, nothing else. We can save ourselves the hassle of 
> local variables in that case.
I think I am missing a level of logic here. I don't think of constant 
expressions as needing storage nor do I think of them as global variables.

So can you take a step back and explain how this fits in the bigger picture?


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

https://reviews.llvm.org/D136815

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to