rnk added a comment.

Are we sure using both Itanium and MS C++ ABIs at the same time is really the 
best way forward here? What are the constraints on CUDA that require the 
Itanium ABI? I'm sure there are real reasons you can't just use the MS ABI as 
is, but I'm curious what they are. Was there some RFC or design showing that 
this is the right way forward?

I wonder if it would be more productive to add new, more expansive attributes, 
similar to `__attribute__((ms_struct))`, that tag class or function decls as MS 
or Itanium C++ ABI. CUDA could then leverage this as needed, and it would be 
much easier to construct test cases for MS/Itanium interop. This is an 
expansion in scope, but it seems like it could be generally useful, and if 
we're already going to enter the crazy world of multiple C++ ABIs in a single 
TU, we might as well bite the bullet and do it in a way that isn't specific to 
CUDA.


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

https://reviews.llvm.org/D70172



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

Reply via email to