PATCH: PR binutils/3186: symbol `.debug_abbrev' required but not present

Pedro Alves pedro_alves@portugalmail.pt
Mon Sep 11 15:02:00 GMT 2006


Hi Nick,

Nick Clifton wrote:
> 
>> Why not have a standard macro for this?
>>
>> #define STR_STRLEN_PAIR(STR) \
>>     STR, (sizeof (STR) - 1)
>>
>> Just a thought, I am not suggesting to go all over
>> the code base to adapt to something like this, but we
>> could make new code use something like this.

> 
> Code improvements that remove the potential for bugs are always welcome. 
>  In this particular case you could always make the macro slightly more 
> intelligent, so that it could handle the NULL pointer, eg:
> 
>   #define STR_STRLEN_PAIR(STR) \
>    (STR), (STR) ? sizeof (STR) - 1 : 0
> 

Dough! I had tried:

#define STR_STRLEN_PAIR(STR) \
     (STR), (STR)==0 ? sizeof (STR) - 1 : 0

But that errors out on gcc 3.4 with:
main.c:15: error: initializer element is not constant
so I discarded that form :)

I'll put this on my lengthy todo for a rainy day. ;)

Cheers,
Pedro Alves



More information about the Binutils mailing list