[PATCH] D59307: Patch llvm bug 41033 concerning atomicity of statement expressions

Melanie Blower via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Mar 14 09:07:14 PDT 2019

mibintc added a comment.

In D59307#1427853 <https://reviews.llvm.org/D59307#1427853>, @erichkeane wrote:

> This is my concern here: 
>  https://godbolt.org/z/icS4fa
>  The patch will change template instantiation.
> GCC doesn't seem to allow using _Atomic in C++ mode, which is perhaps a necessary part of this solution?  I see we already consider overload sets with int and _Atomic(int) to be ambiguous (in addition to not considering conversion operators of _Atomic(int) at all??), so it is limited to type deduction. I could see this causing problems, since specializations of templates are allowed on int and _Atomic(int) despite not being used in overload sets; https://godbolt.org/z/oMAvpz

Recognizing _Atomic in c++ mode is an extension right?  Probably it needs more thought, for example the test case you provided.  Thank you

  rC Clang



More information about the cfe-commits mailing list