From owner-freebsd-toolchain@FreeBSD.ORG Sun Nov 25 17:31:27 2012 Return-Path: Delivered-To: toolchain@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 2DB7BF2A for ; Sun, 25 Nov 2012 17:31:27 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from tensor.andric.com (cl-327.ede-01.nl.sixxs.net [IPv6:2001:7b8:2ff:146::2]) by mx1.freebsd.org (Postfix) with ESMTP id D7EB98FC08 for ; Sun, 25 Nov 2012 17:31:26 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7:0:506f:2496:5d7d:d4f3] (unknown [IPv6:2001:7b8:3a7:0:506f:2496:5d7d:d4f3]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 5142B5C59; Sun, 25 Nov 2012 18:31:25 +0100 (CET) Message-ID: <50B255EC.9040602@FreeBSD.org> Date: Sun, 25 Nov 2012 18:31:24 +0100 From: Dimitry Andric Organization: The FreeBSD Project User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/17.0 Thunderbird/17.0 MIME-Version: 1.0 To: David Chisnall Subject: Re: [patch][libc++]using some undeclared functions with -std=c++98, -std=c++03 or -ansi References: <50AEB0A1.3090803@kbh.biglobe.ne.jp> <50AFEA5D.2020607@FreeBSD.org> <76D35059-88C3-49F3-A871-3402A49875CD@theravensnest.org> In-Reply-To: <76D35059-88C3-49F3-A871-3402A49875CD@theravensnest.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: toolchain@freebsd.org X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 25 Nov 2012 17:31:27 -0000 On 2012-11-24 11:45, David Chisnall wrote: > On 23 Nov 2012, at 21:27, Dimitry Andric wrote: >> Note there are also other problems when compiling libc++ with -std=c++98 >> and -std=c++03, such as complaints about namespacing and such. I am not >> entirely sure libc++ is fully supported yet under those restrictions. :) > > In theory, the libc++ headers that are part of the C++03 spec (i.e. not things like ) should work in C++98 / C++03 mode, however the implementation in libc++ must be compiled in C++11 mode. > > To upstream this patch, the __LONG_LONG_SUPPORTED flag should be unconditionally set for non-FreeBSD flags in the __config file in libc++. This will have no functionality change on other platforms. I have posted a proposed patch to the upstream mailing list here: http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20121119/068587.html If it is accepted as-is, I will merge it immediately.