tbaeder added inline comments.

================
Comment at: clang/lib/AST/Interp/Interp.h:918
     return false;
+  if (!Ptr.isRoot())
+    Ptr.initialize();
----------------
shafik wrote:
> tbaeder wrote:
> > shafik wrote:
> > > Can you explain what is going on here? Why do we need to initialize if it 
> > > is not root?
> > Root means that `Base == 0`, so it cannot have a `InlineDescriptor` before 
> > the `Base` offset. That is mainly the case for global variables.
> Can we add a comment that explains this a little better? I still don't get 
> the significance, so I definitely missing something.
> 
> Also, why do we initialized before the store? 


I don't think there's a significance to the order of operations here, some do 
the init after the store, some the other way around.


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

https://reviews.llvm.org/D135750

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

Reply via email to