rjmccall added a comment.

In D125919#3569928 <https://reviews.llvm.org/D125919#3569928>, @aaron.ballman 
wrote:

> In D125919#3560523 <https://reviews.llvm.org/D125919#3560523>, @aaron.ballman 
> wrote:
>
>> All that said, I think you can see why I'm hoping to get an answer from WG14 
>> as to what to do. Reasonable folks are disagreeing on what the standard 
>> requires here.
>
> The discussion on the WG14 reflector seems to be settling down to a consensus 
> position that the `_Atomic` qualifier is only syntactically a qualifier and 
> its use designates an entirely new type. When the standard says "unqualified 
> type", the `_Atomic` is not considered a qualification. So we should *not* be 
> stripping the `_Atomic` as I was doing in this patch. (SC22WG14.22200 has 
> most of the details spelled out nicely, if you have access to the reflectors.)

What a strange position.  *All* qualifiers produce an "entirely new type".  But 
okay, if the committee wants to pretend that `_Atomic` is meaningful in return 
values, I guess we all have to live with that.

> I had asked other questions in related areas that also got answers.
>
> `const void func(volatile void);` -- the return type is adjusted to `void`; 
> the parameter type is UB (by lack of specification) and we can do what we 
> want here. We currently diagnose the parameter as being invalid: 
> https://godbolt.org/z/9c8bTrerY. Our behavior with the parameter is 
> consistent with GCC and EDG.
>
> `const int main(void)` -- this is valid and equivalent to `int main(void)`, 
> so it should be accepted; we currently reject: https://godbolt.org/z/v43h596ev
>
> `const int func(void); int func(void) { }` -- this is DR423. It is valid, the 
> composite type is `int(void)`; we give a conflicting types error: 
> https://godbolt.org/z/Yb841r7Ex

Is that only because of the type compositing rules, or are they saying that the 
type of the first is `const int (void)`, which is different from `int (void)`?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D125919

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

Reply via email to