Return-Path: Delivered-To: apmail-incubator-stdcxx-dev-archive@www.apache.org Received: (qmail 75788 invoked from network); 20 Mar 2007 15:35:40 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 20 Mar 2007 15:35:40 -0000 Received: (qmail 33634 invoked by uid 500); 20 Mar 2007 15:35:47 -0000 Delivered-To: apmail-incubator-stdcxx-dev-archive@incubator.apache.org Received: (qmail 33618 invoked by uid 500); 20 Mar 2007 15:35:47 -0000 Mailing-List: contact stdcxx-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: stdcxx-dev@incubator.apache.org Delivered-To: mailing list stdcxx-dev@incubator.apache.org Received: (qmail 33606 invoked by uid 99); 20 Mar 2007 15:35:47 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Mar 2007 08:35:47 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: domain of Farid_Zaripov@epam.com designates 217.21.63.3 as permitted sender) Received: from [217.21.63.3] (HELO EPMSA009.epam.com) (217.21.63.3) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Mar 2007 08:35:37 -0700 X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Subject: RE: Boost + stdcxx (status) Date: Tue, 20 Mar 2007 17:35:14 +0200 Message-ID: <7BDB2168BEAEF14C98F1901FD2DE64385941E3@epmsa009.minsk.epam.com> In-Reply-To: <46000A76.503@roguewave.com> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Boost + stdcxx (status) Thread-Index: AcdrBGABkXL7w0vzS227duUpHXc+9wAAJtfg From: "Farid Zaripov" To: X-Virus-Checked: Checked by ClamAV on apache.org > -----Original Message----- > From: Martin Sebor [mailto:sebor@roguewave.com]=20 > Sent: Tuesday, March 20, 2007 6:23 PM > To: stdcxx-dev@incubator.apache.org > Subject: Re: Boost + stdcxx (status) >=20 > Farid Zaripov wrote: > > Hi All. > >=20 > > I have been working on adding support of the stdcxx=20 > library to the=20 > > boost build system. > > I have created the .jam files to build boost library with=20 > stdcxx using=20 > > MSVC 7.1 and 8.0. > > There are some errors during build process. > >=20 > > The mostly error is: error C2039: 'mbstate_t' : is not a=20 > member of=20 > > 'std'. And the same error, but with ptrdiff_t instead of mbstate_t. > >=20 > > I will check where the problem is. >=20 > I suspect the problem is with Boost code making the common=20 > but incorrect assumption about which headers the C types are=20 > defined in. They are only required to be defined in the=20 > following headers: >=20 > mbstate_t: > ptrdiff_t: > size_t: , , , , >=20 > (in addition to their traditional .c counterparts). While=20 > most other implementations #include many of these headers in=20 > most others, stdcxx conforms strictly to these requirements=20 > in order not to pollute the user namespace with additional symbols. You're right. For example the file utf8_codecvt_facet.hpp: #include // for mbstate_t #include // for std::size_t #include #include #include namespace std { #if defined(__LIBCOMO__) using ::mbstate_t; #elif defined(BOOST_DINKUMWARE_STDLIB) using ::mbstate_t; #elif defined(__SGI_STL_PORT) #elif defined(BOOST_NO_STDC_NAMESPACE) using ::mbstate_t; using ::codecvt; #endif } // namespace std [...] struct BOOST_UTF8_DECL utf8_codecvt_facet : public std::codecvt =20 { [...] Here #included wchar.h header file and then mbstate_t introduced into namespace std for some implementations. Farid.