Re: [RFC][PATCH] rcu: Use typeof(p) instead of typeof(*p) *

From: Rasmus Villemoes
Date: Tue Oct 05 2021 - 14:49:07 EST


On 05/10/2021 20.06, Mathieu Desnoyers wrote:
> ----- On Oct 5, 2021, at 2:01 PM, Rasmus Villemoes linux@xxxxxxxxxxxxxxxxxx wrote:
>
>> I would think that one could avoid that churn by saying
>>
>> typeof((p) + 0)
>>
>> instead of just "typeof(p)", to force the decay to a pointer.
>
> Also, AFAIU, the compiler wants to know the sizeof(p) in order to evaluate
> (p + 0). Steven's goal is to hide the structure declaration, so that would
> not work either.

Gah, you're right. I was hoping the frontend would see that +0 could be
optimized away and only affect the type of the expression, but it does
give 'error: invalid use of undefined type ‘struct abc’'. Sorry for the
noise.

Rasmus