nickdesaulniers added inline comments.

================
Comment at: clang/lib/CodeGen/CGExprConstant.cpp:1324
     // This is a string literal initializing an array in an initializer.
-    return CGM.GetConstantArrayFromStringLiteral(E);
+    return E->isLValue() ?
+      CGM.GetAddrOfConstantStringFromLiteral(E).getPointer() :
----------------
efriedma wrote:
> Maybe we should have a separate ConstExprEmitterLValue... trying to handle 
> both LValues and RValues on the same codepath has been problematic in the 
> past.  It's very easy for code to get confused what it's actually trying to 
> emit.
So we'd have a `ConstExprEmitterLValue` class with some visitor methods, and a 
`ConstExprEmitterRValue` with other methods implemented?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D151587

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

Reply via email to