Return-Path: Delivered-To: apmail-stdcxx-dev-archive@www.apache.org Received: (qmail 64278 invoked from network); 10 Jul 2008 23:49:00 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 10 Jul 2008 23:49:00 -0000 Received: (qmail 96161 invoked by uid 500); 10 Jul 2008 23:49:01 -0000 Delivered-To: apmail-stdcxx-dev-archive@stdcxx.apache.org Received: (qmail 96142 invoked by uid 500); 10 Jul 2008 23:49:01 -0000 Mailing-List: contact dev-help@stdcxx.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@stdcxx.apache.org Delivered-To: mailing list dev@stdcxx.apache.org Received: (qmail 96131 invoked by uid 99); 10 Jul 2008 23:49:01 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 10 Jul 2008 16:49:01 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of msebor@gmail.com designates 64.233.166.182 as permitted sender) Received: from [64.233.166.182] (HELO py-out-1112.google.com) (64.233.166.182) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 10 Jul 2008 23:48:08 +0000 Received: by py-out-1112.google.com with SMTP id u52so1997449pyb.11 for ; Thu, 10 Jul 2008 16:48:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :organization:user-agent:mime-version:to:subject:content-type :content-transfer-encoding:sender; bh=s6HF3ELmfKFoBYSt+KUmwoPeVYxUXRj2TeGEcv6ihpI=; b=bfB1ydu2qn/699AWd8puGpcW0PAijRcStRhBXH2DUU2we2DbV0HR5JUaaxoR2CPdcf 6IHqMop4fuq8T1wG+MBPL8OzmFSndRvXx0S4mB+L5w1+EJaWMx4Dg5Zc7IXhtXK2dYdx QTaYlC0ElX7QxE/cbgzfI+WCOJ/+T+ufQtnCk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:organization:user-agent:mime-version:to :subject:content-type:content-transfer-encoding:sender; b=v0fALNXTBjpsSFn1+bTMZX2JOvPlznfhf2pQCwpbzS4MuCqq+qQaQ2n8Ol8YKvncXe o08l0LxqexIgyI4nyJFLJTBFw4YCp+C0TrcQTU9IAC7/SaEpxPDtsM4aREQU36lxbhTn jdooJ1nKgefUWtQouOHbalD81T7f8LznF8Auo= Received: by 10.114.57.15 with SMTP id f15mr5381285waa.114.1215733710118; Thu, 10 Jul 2008 16:48:30 -0700 (PDT) Received: from localhost.localdomain ( [71.229.200.170]) by mx.google.com with ESMTPS id 30sm980949wfd.1.2008.07.10.16.47.59 (version=TLSv1/SSLv3 cipher=RC4-MD5); Thu, 10 Jul 2008 16:48:29 -0700 (PDT) Message-ID: <48769FAE.9070801@roguewave.com> Date: Thu, 10 Jul 2008 17:47:58 -0600 From: Martin Sebor Organization: Rogue Wave Software, Inc. User-Agent: Thunderbird 2.0.0.14 (X11/20080501) MIME-Version: 1.0 To: dev@stdcxx.apache.org Subject: using gcc -std=c++0x to enable C++ 0x ([Fwd: svn commit: r675809 - /stdcxx/branches/4.3.x/include/rw/_config-gcc.h]) Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Sender: Martin Sebor X-Virus-Checked: Checked by ClamAV on apache.org This change makes it possible to enable stdcxx C++ 0x extensions by using the -std=c++0x (or -std=gnu++0x) gcc command line option. Specifically, it's possible to use these extensions with a library configured w/o the option simply by setting CXXOPTS=-std=c++0x on the make command line. -------- Original Message -------- Subject: svn commit: r675809 - /stdcxx/branches/4.3.x/include/rw/_config-gcc.h Date: Thu, 10 Jul 2008 23:35:45 -0000 From: sebor@apache.org Reply-To: dev@stdcxx.apache.org To: commits@stdcxx.apache.org Author: sebor Date: Thu Jul 10 16:35:45 2008 New Revision: 675809 URL: http://svn.apache.org/viewvc?rev=675809&view=rev Log: 2008-07-10 Martin Sebor * include/rw/_config-gcc.h [gcc >= 4.3 && __GXX_EXPERIMENTAL_CXX0X__] (_RWSTD_NO_VARIADIC_TEMPLATES, _RWSTD_NO_RVALUE_REFERENCES): Undefined to make it possible to use C++ 0x library extensions even in builds configured w/o C++ 0x extensions enabled in the compiler. (_RWSTD_EXT_CXX_0X): #defined in response to either of the -std=c++0x or -std=gnu++0x options. Modified: stdcxx/branches/4.3.x/include/rw/_config-gcc.h Modified: stdcxx/branches/4.3.x/include/rw/_config-gcc.h URL: http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_config-gcc.h?rev=675809&r1=675808&r2=675809&view=diff ============================================================================== --- stdcxx/branches/4.3.x/include/rw/_config-gcc.h (original) +++ stdcxx/branches/4.3.x/include/rw/_config-gcc.h Thu Jul 10 16:35:45 2008 @@ -200,5 +200,20 @@ # define _RWSTD_TT_MAX_ALIGNMENT 16 # define _RWSTD_TT_ALIGNED_POD(N) \ struct { unsigned char _C_align __attribute__ ((aligned ((N)))); } + +# ifdef __GXX_EXPERIMENTAL_CXX0X__ + // enable C++ 0x features disabled in builds + // configured without -std=c++0x or -std=gnu++0x + + // C++ 0x features supported since 4.3.0 +# undef _RWSTD_NO_VARIADIC_TEMPLATES +# undef _RWSTD_NO_RVALUE_REFERENCES + +# ifndef _RWSTD_EXT_CXX_0X + // enable our C++ 0x extensions in GNU gcc C++ 0x mode +# define _RWSTD_EXT_CXX_0X +# endif +# endif + #endif // __GNUC__ >= 4.3