[PATCH] D45476: [C++2a] Implement operator<=> CodeGen and ExprConstant
Eric Fiselier via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sat May 5 01:34:03 PDT 2018
EricWF added inline comments.
================
Comment at: lib/CodeGen/CGExprAgg.cpp:964
+ RHS = CGF.EmitAnyExpr(E->getRHS()).getAggregatePointer();
+ break;
+ case TEK_Complex:
----------------
EricWF wrote:
> rjmccall wrote:
> > It looks like we don't actually support any aggregate types here, which I think is fine because comparing those types is only sensible for things like calls. If you do want to pave the way for that, or (probably more usefully) for supporting complex types, you should make EmitCompare take the operands as RValues and just use EmitAnyExpr here without paying any attention to the evaluation kind.
> Initially I thought the same thing, but apparently member pointers are Aggregates under the Microsoft ABI.
>
> I'll give trafficking in `RValue`s, but all the functions `EmitCompare` calls use `Value*`, so it'll take some work.
*I'll give trafficking in `RValue`s a shot, but ...*
https://reviews.llvm.org/D45476
More information about the cfe-commits
mailing list