On Tue, Aug 11, 2015 at 2:55 PM, Branko Čibej <[email protected]> wrote:
> On 11.08.2015 17:02, Philip Martin wrote: > > Stefan Fuhrmann <[email protected]> writes: > > > >> way we use sizeof. In my opinion, we should take the > >> size of the created or processed variable instead of its > >> type, i.e. > >> > >> abc_t *v = apr_pcalloc(pool, sizeof(*v)); > >> apr_hash_set(hash, key, sizeof(*key), y); > >> z = apr_hash_get(hash, key, sizeof(*key)); > >> > >> rather than > >> > >> abc_t *v = apr_pcalloc(pool, sizeof(abc_t)); > >> apr_hash_set(hash, key, sizeof(key_t), y); > >> z = apr_hash_get(hash, key, sizeof(key_t)); > > We have had problems with both styles in the past, so neither is immune > > to bugs. I prefer the explicit type as it is easier to grep. > > The explicit type form is more accident-prone than the variable form > because any change requires two modifications in the same statement > instead of one. > Agreed. I much prefer the variable-based form. It works well for locals, arguments, fields in a structure, dereferences, etc. Cheers, -g

