Re: Inline definition problem in current

From: Scot Hetzel <swhetzel_at_gmail.com>
Date: Tue, 24 Mar 2009 10:42:52 -0500
On Mon, Mar 23, 2009 at 10:05 PM, Ben Kelly <ben_at_wanderview.com> wrote:
> On Mar 23, 2009, at 6:31 PM, Gustau Perez wrote:
>>
>> a few time ago I switched to current, right now I've it updated to
>> yesterday.  While compiling some ports (in fact, building x11/gnome2) I
>> found that some of them (written in C) are using  some inline functions (I
>> guess it is because the compiler will replace the call to the function with
>> the function itself). The problem is that gcc fails with the following
>> message :
>>             error: nested function 'XXX' declared but never defined
>>
>>  checking the code, the function is declared and then implemented in a
>> header file which is included in the offending .c file. The function is
>> declared as 'inline'. The only solution I found is to change the definition
>> to static.
>>
>>  Checking pontyhat shows me that many ports are failing because of this
>> problem. What I can understand is why is this happening, because the same
>> ports compiles fine in STABLE and the compilers's version in base seems to
>> be the same (gcc (GCC) 4.2.1 20070719  [FreeBSD], the same in current)
>>  Can anyone help with this problem ?
>
> Check out the arch_at_ discussion about "C99 Inlines" and this commit:
>
>  http://svn.freebsd.org/viewvc/base?view=revision&revision=189824
>
> It seems like they might be related.
>
> Hope that helps.
>
I can confirm that reverting this change allows the audio/faad port to build.

Scot
Received on Tue Mar 24 2009 - 14:43:03 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:44 UTC