From owner-freebsd-current@FreeBSD.ORG Tue Mar 24 03:05:55 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3B9EC106566B for ; Tue, 24 Mar 2009 03:05:55 +0000 (UTC) (envelope-from ben@wanderview.com) Received: from mail.wanderview.com (mail.wanderview.com [66.92.166.102]) by mx1.freebsd.org (Postfix) with ESMTP id D8AF38FC19 for ; Tue, 24 Mar 2009 03:05:54 +0000 (UTC) (envelope-from ben@wanderview.com) Received: from [192.168.1.116] (static-70-108-250-162.res.east.verizon.net [70.108.250.162]) (authenticated bits=0) by mail.wanderview.com (8.14.3/8.14.3) with ESMTP id n2O35fOH033396 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Tue, 24 Mar 2009 03:05:47 GMT (envelope-from ben@wanderview.com) Message-Id: From: Ben Kelly To: Gustau Perez In-Reply-To: <49C80DBA.80407@entel.upc.edu> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v930.3) Date: Mon, 23 Mar 2009 23:05:35 -0400 References: <49C80DBA.80407@entel.upc.edu> X-Mailer: Apple Mail (2.930.3) X-Spam-Score: 0 () X-Scanned-By: MIMEDefang 2.64 on 10.76.20.1 Cc: freebsd-current@freebsd.org Subject: Re: Inline definition problem in current X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Mar 2009 03:05:55 -0000 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@ 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. - Ben