<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>dev@stdcxx.apache.org Archives</title>
<link rel="self" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/?format=atom"/>
<link href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/"/>
<id>http://mail-archives.apache.org/mod_mbox/stdcxx-dev/</id>
<updated>2009-12-06T15:29:12Z</updated>
<entry>
<title>(Roguewave) Nightly testing changes</title>
<author><name>Andrew Black &lt;Andrew.Black@roguewave.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200910.mbox/%3c4ADDDD2F.1070000@roguewave.com%3e"/>
<id>urn:uuid:%3c4ADDDD2F-1070000@roguewave-com%3e</id>
<updated>2009-10-20T15:54:23Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Greetings all.

I have performed another update to the nightly testing schedule for
STDCXX at RogueWave, resulting in the following changes:
* hpux-11.11-pa: Alter host pool used for testing.
* hpux-11.23-pa: Ditto.
* hpux-11.31-pa: Ditto.  OS version patched to HPUX 11i v3 Update 5.
Testing with acc-3.63 and acc-3.73 has been removed to save cycles,
testing with acc-3.85 has been added (in addition to acc-3.74).
* hpux-11.31-ia64: OS version patched to HPUX 11i v3 Update 5. Testing
with acc-6.23 has been added (in addition to acc-6.16).
* aix-6.1-ppc: OS version added at Technology Level 3, Service Pack 1,
using vacpp-10.1.

--Andrew Black


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: bite-size patch for driver.cpp (Solaris)</title>
<author><name>Stefan Teleman &lt;stefan.teleman@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200909.mbox/%3c1ccb59a20909040558nd3cd409p4f5f61829dffeb6b@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1ccb59a20909040558nd3cd409p4f5f61829dffeb6b@mail-gmail-com%3e</id>
<updated>2009-09-04T12:58:04Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
On Fri, Sep 4, 2009 at 05:48, Farid Zaripov&lt;faridz@apache.org&gt; wrote:

&gt;  Looks like the attachment got stripped. Could you insert the patch
&gt; into message as plain text? Another way is create JIRA issue and attach
&gt; patch to the created issue.

Hi Farid,

I created JIRA STDCXX-1042 with patch attachment.

--Stefan

-- 
Stefan Teleman
KDE e.V.
stefan.teleman@gmail.com


</pre>
</div>
</content>
</entry>
<entry>
<title>RE: bite-size patch for driver.cpp (Solaris)</title>
<author><name>&quot;Farid Zaripov&quot; &lt;faridz@apache.org&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200909.mbox/%3c941C1D3EF62044EB8160748466BE7B0C@kyiv.epam.com%3e"/>
<id>urn:uuid:%3c941C1D3EF62044EB8160748466BE7B0C@kyiv-epam-com%3e</id>
<updated>2009-09-04T09:48:29Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
  Hi Stefan.

&gt; This is a bite-size patch for driver.cpp for Solaris -- it 
&gt; adds support for the next Solaris version (SunOS 5.11).

  Looks like the attachment got stripped. Could you insert the patch
into message as plain text? Another way is create JIRA issue and attach
patch to the created issue.

Farid



</pre>
</div>
</content>
</entry>
<entry>
<title>bite-size patch for driver.cpp (Solaris)</title>
<author><name>Stefan Teleman &lt;stefan.teleman@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200909.mbox/%3c1ccb59a20909030930i3749b444o24d7fb7c3fb537e@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1ccb59a20909030930i3749b444o24d7fb7c3fb537e@mail-gmail-com%3e</id>
<updated>2009-09-03T16:30:09Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Hi.

This is a bite-size patch for driver.cpp for Solaris -- it adds
support for the next Solaris version (SunOS 5.11).

--Stefan

-- 
Stefan Teleman
KDE e.V.
stefan.teleman@gmail.com


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: std::length_error in language support library</title>
<author><name>&quot;Farid Zaripov&quot; &lt;faridz@apache.org&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200909.mbox/%3cE741234794D44FD486B179C3741A1A6A@kyiv.epam.com%3e"/>
<id>urn:uuid:%3cE741234794D44FD486B179C3741A1A6A@kyiv-epam-com%3e</id>
<updated>2009-09-01T10:54:39Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
&gt; It turns out that there already is an issue to revert this change:
&gt; http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#805
&gt; 
&gt; If Microsoft implemented the resolution of issue 624 they will
&gt; need to revert it. 

  I've reopened the issue with quoting text from CWG issue 805.

(https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?Feedb
ackID=457862)

&gt; If you can devise a test case that triggers an exception from any
&gt; shared_ptr operation in the Microsoft implementation it would be
&gt; enough to file a bug report with them and might help convince them
&gt; to take std::length_error out of the runtime library.

  Unfortunately, it is not possible. It is the same as make test that
triggers an exception from the following code:

void foo(args)
{
    if (false)
        throw std::length_error();
    else
        do_something(args);
}

Farid.



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: std::length_error in language support library</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200908.mbox/%3c4A9C23D7.70403@gmail.com%3e"/>
<id>urn:uuid:%3c4A9C23D7-70403@gmail-com%3e</id>
<updated>2009-08-31T19:26:15Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
On 08/21/2009 10:34 AM, Farid Zaripov wrote:
&gt;    Looking at the latest draft of the C++ standard (n2914.pdf) it appears,
&gt; that
&gt; the std::length_error can be defined in language support library.
&gt;
&gt;    This is the result of resolution of the CWG issue #624:
&gt; http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#624

That's a problem. Let me see if there's any willingness among
the committee to revert it to bad_alloc.

Martin

&gt;
&gt; 5.4.3 p7:
&gt; --------------
&gt; 7 When the value of the expression in a noptr-new-declarator is zero, the
&gt; allocation function is called to
&gt; allocate an array with no elements. If the value of that expression is such
&gt; that the size of the allocated object
&gt; would exceed the implementation-defined limit, no storage is obtained and
&gt; the new-expression terminates
&gt; by throwing an exception of a type that would match a handler (15.3) of type
&gt; std::length_error (19.2.4).
&gt; --------------
&gt;
&gt; Farid
&gt;



</pre>
</div>
</content>
</entry>
<entry>
<title>RE: svn commit: r777603 - in /stdcxx/branches/4.2.x: etc/config/src/ src/</title>
<author><name>&quot;Farid Zaripov&quot; &lt;faridz@apache.org&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200908.mbox/%3c67E1CFE3F94B438C96C14EFC01610EE6@kyiv.epam.com%3e"/>
<id>urn:uuid:%3c67E1CFE3F94B438C96C14EFC01610EE6@kyiv-epam-com%3e</id>
<updated>2009-08-27T13:56:29Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
&gt; -----Original Message-----l
&gt; From: Martin Sebor [mailto:msebor@gmail.com] 
&gt; Sent: Wednesday, August 26, 2009 1:02 AM
&gt; To: dev@stdcxx.apache.org
&gt; Subject: Re: svn commit: r777603 - in /stdcxx/branches/4.2.x: 
&gt; etc/config/src/ src/
&gt; 
&gt; I'm not sure I understand what they are proposing we do in 
&gt; the MSVC bug report. Do you?

  As I understand they are telling that if std::length_error dtor is defined
in
application, in this case the application will be linked without errors and
overridden std::length_error dtor will be used.

  In our case the std::length_error dtor is defined in library, that's why
linker issues the "multiple symbols defined" error.

  To avoid this error we can define std::length_error dtor as inline, to
define it in user's application and override the dtor from libc.

Farid.



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: svn commit: r777603 - in /stdcxx/branches/4.2.x: etc/config/src/ src/</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200908.mbox/%3c4A945F3B.1070803@gmail.com%3e"/>
<id>urn:uuid:%3c4A945F3B-1070803@gmail-com%3e</id>
<updated>2009-08-25T22:01:31Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
On 08/18/2009 02:53 AM, Farid Zaripov wrote:
&gt;&gt;&gt; Actually, the MSVC 10.0 beta libc contains dtor's for std::length_error
&gt;&gt;&gt; and std::logic_error only (at least in 15s configuration which I've
&gt; tested).
&gt;&gt;&gt; It is still beta for now, but I believe that these dtors will go to the
&gt;&gt;&gt; release.
&gt;&gt;&gt;
&gt;&gt;&gt; Or should I fill the bug report to Microsoft on that issue?
&gt;&gt;
&gt;&gt; That would be great, thanks! With dtors for arbitrary C++ Standard
&gt;&gt; Library in their libc there's no way to build/use a third party
&gt;&gt; implementation such as stdcxx. Imagine one of the dtors doing
&gt;&gt; something to the class, e.g.:
&gt;&gt;
&gt;&gt;     class length_error: runtime_error {   // MSVC 10 definition
&gt;&gt;         char* data;
&gt;&gt;     public:
&gt;&gt;         virtual ~length_error () { delete[] data; }
&gt;&gt;         // ...
&gt;&gt;     }
&gt;
&gt;    I've filled the issue to MS, but today they resolved this issue
&gt; with status "by design" :(

That's very bad. In stdcxx, length_error and all other exception
classes described outside of [lib.language.support] derive from
an intermediate base class, __rw::__rw_exception, which takes
care of memory management on their behalf. Failing to define
the destructors of these classes and invoking those defined in
MSVC's runtime library will, in addition to exposing programs
to the risk mentioned above, bypass the memory management
functions in stdcxx and lead to leaks.

I'm not sure I understand what they are proposing we do in the
MSVC bug report. Do you?

Martin

&gt;
&gt; http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?Feedbac
&gt; kID=457862
&gt;
&gt; Best Regards,
&gt; Farid Zaripov
&gt;



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Problem building Standard Library</title>
<author><name>9obama9xyz &lt;alo.blackberry@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200908.mbox/%3c25108978.post@talk.nabble.com%3e"/>
<id>urn:uuid:%3c25108978-post@talk-nabble-com%3e</id>
<updated>2009-08-24T00:46:35Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>



Jeremy Dean-3 wrote:
&gt; 
&gt;  
&gt;  
&gt; I have a customer on Suse Linux 10update2 that is trying to build apache
&gt; Standard Library stdcxx-4.2.1.1 (Sourcepro edition 10 update 1).  They
&gt; are getting the error described in
&gt; http://issues.apache.org/jira/browse/STDCXX-1029
&gt;  
&gt; I recommended that customer reinstall Suse Linux 10.0 as that what was
&gt; certified.  Here are the steps they took, but are still getting the
&gt; error described:
&gt; 
&gt; We reinstalled Suse Linux 10.2 without GCC 4.1.2. I then installed GCC
&gt; 4.1.0 from the given website. Afterwards, I reinstalled the latest
&gt; version of SourcePro and built it.
&gt; When we tried building our library again, we still get the
&gt; _RWSTD_SEEK_SET compile error. So we are using everything as
&gt; recommended, but the issue still exists. Can you help?
&gt; 
&gt; Thanks,
&gt; 
&gt;  
&gt; 
&gt; Jeremy
&gt; 
&gt; Jeremy Dean 
&gt; Rogue Wave Software, Inc.
&gt; Technical Support 
&gt; Phone: 303-545-3205 -- 1-800-404-4767 
&gt; E-mail: support@roguewave.com 
&gt; Web: http://www.roguewave.com/support 
&gt; Knowledge Base entries: 
&gt; http://www.roguewave.com/kbdocs/search.html 
&gt; View issues online at: 
&gt; http://www.roguewave.com/youraccount/login/
&gt; 
&gt; 
  Marked! I will come back to check this soon!thanks a lot.:-)
[url=http://creditimmobilierdefrance.org/][color=#FFFFFF][u]simulation taux
banque credit immobilier de France[/u][/color][/url][color=#FFFFFF] - Credit
immobilier de France, simulation credit immobilier. Résultat mitigé pour le
crédit immobilier de
France.[/color][url=http://creditimmobilierdefrance.org/][color=#FFFFFF][u]simulation
taux banque credit immobilier de France[/u][/color][/url]

-- 
View this message in context: http://www.nabble.com/Problem-building-Standard-Library-tp23331169p25108978.html
Sent from the stdcxx-dev mailing list archive at Nabble.com.



</pre>
</div>
</content>
</entry>
<entry>
<title>std::length_error in language support library</title>
<author><name>&quot;Farid Zaripov&quot; &lt;faridz@apache.org&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200908.mbox/%3c5D72EC308CCC40089CEB4114D72E97F6@kyiv.epam.com%3e"/>
<id>urn:uuid:%3c5D72EC308CCC40089CEB4114D72E97F6@kyiv-epam-com%3e</id>
<updated>2009-08-21T16:34:20Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
  Looking at the latest draft of the C++ standard (n2914.pdf) it appears,
that
the std::length_error can be defined in language support library.

  This is the result of resolution of the CWG issue #624:
http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#624

5.4.3 p7:
--------------
7 When the value of the expression in a noptr-new-declarator is zero, the
allocation function is called to
allocate an array with no elements. If the value of that expression is such
that the size of the allocated object
would exceed the implementation-defined limit, no storage is obtained and
the new-expression terminates
by throwing an exception of a type that would match a handler (15.3) of type
std::length_error (19.2.4).
--------------

Farid



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: svn commit: r777603 - in /stdcxx/branches/4.2.x: etc/config/src/ src/</title>
<author><name>&quot;Farid Zaripov&quot; &lt;faridz@apache.org&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200908.mbox/%3c5DCEC29B39C9485680EB5D853D05F264@kyiv.epam.com%3e"/>
<id>urn:uuid:%3c5DCEC29B39C9485680EB5D853D05F264@kyiv-epam-com%3e</id>
<updated>2009-08-18T08:53:24Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
&gt;&gt; Actually, the MSVC 10.0 beta libc contains dtor's for std::length_error
&gt;&gt; and std::logic_error only (at least in 15s configuration which I've
tested).
&gt;&gt; It is still beta for now, but I believe that these dtors will go to the
&gt;&gt; release.
&gt;&gt; 
&gt;&gt; Or should I fill the bug report to Microsoft on that issue?
&gt;
&gt; That would be great, thanks! With dtors for arbitrary C++ Standard
&gt; Library in their libc there's no way to build/use a third party
&gt; implementation such as stdcxx. Imagine one of the dtors doing
&gt; something to the class, e.g.:
&gt;
&gt;    class length_error: runtime_error {   // MSVC 10 definition
&gt;        char* data;
&gt;    public:
&gt;        virtual ~length_error () { delete[] data; }
&gt;        // ...
&gt;    }

  I've filled the issue to MS, but today they resolved this issue
with status "by design" :(

http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?Feedbac
kID=457862

Best Regards,
Farid Zaripov



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Soalris 10 10/2008 SPARC changes</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200908.mbox/%3c4A89E4F4.6010905@gmail.com%3e"/>
<id>urn:uuid:%3c4A89E4F4-6010905@gmail-com%3e</id>
<updated>2009-08-17T23:17:08Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Stefan Teleman wrote:
&gt; On Fri, Aug 14, 2009 at 16:24, Martin Sebor&lt;msebor@gmail.com&gt; wrote:
&gt;&gt; Thanks for the heads up and the patches! I'll review apply them
&gt;&gt; if possible/necessary before the release.
&gt;&gt;
&gt;&gt; I took a quick glance at a few of the diff files and I wonder if
&gt;&gt; you could help me better understand some of the changes in case
&gt;&gt; they could be applied unconditionally.
&gt;&gt;
&gt;&gt; For instance, in ctype.cpp.38.diff, it seems as though the second
&gt;&gt; hunk would be a good change to make regardless (when long long is
&gt;&gt; available). Ditto for the third hunk in locale_body.37.diff (minus
&gt;&gt; the pragmas, of course), and similarly in locale_classic.40.diff
&gt;&gt; and messages.cpp.41.diff.
&gt;&gt;
&gt;&gt; The approach I'm thinking of using is the one you applied in
&gt;&gt; use_facet.h, i.e., defining, say, _RWSTD_ALIGN_MAX_T to unsigned
&gt;&gt; long long, and using it in all the aligned buffers, along with
&gt;&gt; unsigned char for the data.
&gt;&gt;
&gt;&gt; Other than these, can you also help me understand the changes in
&gt;&gt; messages.cpp.41.diff (starting with the third hunk on line 92)?
&gt; 
&gt; That's my bad mistake -- i created a diff for src/messages.cpp from an
&gt; older version of messages.cpp (hacked while i was trying to figure out
&gt; why it was misbehaving so badly on 32-bit SPARCv8).
&gt; 
&gt; I updated the tarball and the messages.cpp.41.diff itself with a valid
&gt; patch now. Sorry for the noise.

No problem. I'll take a look.

&gt; 
&gt; About
&gt; 
&gt; int ret = catclose (pcat_data-&gt;catd);
&gt; 
&gt; // ...
&gt; 
&gt; cat_closed = ret == 0;
&gt; 
&gt; My understanding of 22.2.7.1.2, p5 (catalog must be valid) is that  --
&gt; if catclose(3C) fails, it means the catalog was not valid -- therefore
&gt; the C++ library must throw. So, cat_closed is now true if and only if
&gt; catclose(3C) succeeded.  Or is this too restrictive ?

You're right that we should check the value returned from catclose().
I think the facet guarantees that the catalog descriptor is valid so
I think we're safe in that regard. The case where I think there is
a problem is when catclose() fails because of a signal (with EINTR).
That would make __rw_catclose() and the facet dtor leak the catd.
Let me see about fixing that. Thanks for pointing it out!


&gt; 
&gt; About the other patches -- and whether or not they should be applied
&gt; for other platforms besides Solaris/SPARC: i tried not to disturb any
&gt; other ISA's/compiler combinations. If you'd like i can re-write the
&gt; patches for 4.2.2 using the more generic approach you described.

Understood.

Thanks again!
Martin

&gt; 
&gt; --Stefan
&gt; 



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Soalris 10 10/2008 SPARC changes (was: Re: 4.2.2 release)</title>
<author><name>Stefan Teleman &lt;stefan.teleman@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200908.mbox/%3c1ccb59a20908170727p7630e92vd9353f3684fca32b@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1ccb59a20908170727p7630e92vd9353f3684fca32b@mail-gmail-com%3e</id>
<updated>2009-08-17T14:27:37Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
On Fri, Aug 14, 2009 at 16:24, Martin Sebor&lt;msebor@gmail.com&gt; wrote:
&gt; Thanks for the heads up and the patches! I'll review apply them
&gt; if possible/necessary before the release.
&gt;
&gt; I took a quick glance at a few of the diff files and I wonder if
&gt; you could help me better understand some of the changes in case
&gt; they could be applied unconditionally.
&gt;
&gt; For instance, in ctype.cpp.38.diff, it seems as though the second
&gt; hunk would be a good change to make regardless (when long long is
&gt; available). Ditto for the third hunk in locale_body.37.diff (minus
&gt; the pragmas, of course), and similarly in locale_classic.40.diff
&gt; and messages.cpp.41.diff.
&gt;
&gt; The approach I'm thinking of using is the one you applied in
&gt; use_facet.h, i.e., defining, say, _RWSTD_ALIGN_MAX_T to unsigned
&gt; long long, and using it in all the aligned buffers, along with
&gt; unsigned char for the data.
&gt;
&gt; Other than these, can you also help me understand the changes in
&gt; messages.cpp.41.diff (starting with the third hunk on line 92)?

That's my bad mistake -- i created a diff for src/messages.cpp from an
older version of messages.cpp (hacked while i was trying to figure out
why it was misbehaving so badly on 32-bit SPARCv8).

I updated the tarball and the messages.cpp.41.diff itself with a valid
patch now. Sorry for the noise.

About

int ret = catclose (pcat_data-&gt;catd);

// ...

cat_closed = ret == 0;

My understanding of 22.2.7.1.2, p5 (catalog must be valid) is that  --
if catclose(3C) fails, it means the catalog was not valid -- therefore
the C++ library must throw. So, cat_closed is now true if and only if
catclose(3C) succeeded.  Or is this too restrictive ?

About the other patches -- and whether or not they should be applied
for other platforms besides Solaris/SPARC: i tried not to disturb any
other ISA's/compiler combinations. If you'd like i can re-write the
patches for 4.2.2 using the more generic approach you described.

--Stefan

-- 
Stefan Teleman
stefan.teleman@gmail.com


</pre>
</div>
</content>
</entry>
<entry>
<title>Soalris 10 10/2008 SPARC changes (was: Re: 4.2.2 release)</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200908.mbox/%3c4A85C808.7060809@gmail.com%3e"/>
<id>urn:uuid:%3c4A85C808-7060809@gmail-com%3e</id>
<updated>2009-08-14T20:24:40Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Thanks for the heads up and the patches! I'll review apply them
if possible/necessary before the release.

I took a quick glance at a few of the diff files and I wonder if
you could help me better understand some of the changes in case
they could be applied unconditionally.

For instance, in ctype.cpp.38.diff, it seems as though the second
hunk would be a good change to make regardless (when long long is
available). Ditto for the third hunk in locale_body.37.diff (minus
the pragmas, of course), and similarly in locale_classic.40.diff
and messages.cpp.41.diff.

The approach I'm thinking of using is the one you applied in
use_facet.h, i.e., defining, say, _RWSTD_ALIGN_MAX_T to unsigned
long long, and using it in all the aligned buffers, along with
unsigned char for the data.

Other than these, can you also help me understand the changes in
messages.cpp.41.diff (starting with the third hunk on line 92)?

Thanks again,
Martin

Stefan Teleman wrote:
&gt; On Fri, Aug 14, 2009 at 15:18, Martin Sebor&lt;msebor@gmail.com&gt; wrote:
&gt;&gt; I think we should think about cutting a 4.2.2 release sometime this
&gt;&gt; month. It's been embarrassingly long since 4.2.1. Farid (or anyone
&gt;&gt; else), do you have anything that you'd like included in it?
&gt;&gt;
&gt;&gt; Martin
&gt; 
&gt; Hi.
&gt; 
&gt; Solaris 10 10/2008 SPARC has introduced a binary incompatible change
&gt; in the POSIX and Solaris threads implementation:
&gt; 
&gt; http://docs.sun.com/app/docs/doc/820-5245/chapter2-1000?a=view
&gt; 
&gt; &lt;QUOTE&gt;
&gt; 
&gt; Objects of type mutex_t and pthread_mutex_t must start at 8-byte
&gt; aligned addresses. Applications that do not satisfy this requirement
&gt; fail. The following error message is displayed:
&gt; 
&gt; *** _THREAD_ERROR_DETECTION: lock usage error detected ***
&gt; ...
&gt; "mutex is misaligned"
&gt; OR:
&gt; "condvar is misaligned"
&gt; 
&gt; &lt;/QUOTE&gt;
&gt; 
&gt; In reality, the run-time performance is much worse than the errata
&gt; above claims: misaligned mutexes or conditional variables cause the
&gt; program to spuriously SEGV in sometimes hard to reproduce ways [
&gt; Heisenbug ].
&gt; 
&gt; You can view full details of this bug/change here:
&gt; 
&gt; http://bugs.opensolaris.org/view_bug.do?bug_id=6729759
&gt; 
&gt; To make a long story short, Solaris Kernel Update 137111-01 introduced
&gt; an ABI incompatible implementation restriction, requiring that mutexes
&gt; and conditional variables must be 8-byte aligned. This restriction has
&gt; never been documented, nor has it ever been enforced, until Solaris 10
&gt; 10/2008 [ Solaris Kernel Update 137111-01 ].
&gt; 
&gt; The consequence of this KU is that, the multi-threaded 32-bit SPARC
&gt; version of the Apache Standard C++ Library [ 4.2.1 ] will no longer
&gt; work, and will fail at run-time with seemingly unexplainable crashes [
&gt; the exact same build will work on Solaris versions prior to Kernel
&gt; Update 137111-01 ].
&gt; 
&gt; This problem is not specific to the Apache Standard C++ Library: it
&gt; will occur with any 32-bit SPARCV8 binaries which do not align mutexes
&gt; or conditional variables on an 8 byte boundary.
&gt; 
&gt; I have created a set of patches for the Apache Standard C++ Library,
&gt; Version 4.2.1, for this problem:
&gt; 
&gt; http://s247136804.onlinehome.us/stdcxx-upstream/4.2.1/
&gt; 
&gt; You can download the tarball with all the patches from the same URL:
&gt; 
&gt; http://s247136804.onlinehome.us/stdcxx-upstream/4.2.1/stdcxx-upstream-patches.tar.bz2
&gt; 
&gt; These patches force an 8-byte alignment for all objects which contain
&gt; a mutex or a conditional variable, and that only for SPARC. With these
&gt; patches, all the tests perform as expected.
&gt; 
&gt; The patch 22.locale.numpunct.cpp.43.diff is not related to the SPARCV8
&gt; ABI change -- it is simply an avoidance of a SEGV in case the variable
&gt; first_non_c == NULL [ Solaris sprintf(3C) SEGV's on NULL char*
&gt; arguments ].
&gt; 
&gt; --Stefan
&gt; 



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: 4.2.2 release</title>
<author><name>Stefan Teleman &lt;stefan.teleman@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200908.mbox/%3c1ccb59a20908141227p1754544fl5925148b26805ac9@mail.gmail.com%3e"/>
<id>urn:uuid:%3c1ccb59a20908141227p1754544fl5925148b26805ac9@mail-gmail-com%3e</id>
<updated>2009-08-14T19:27:56Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
On Fri, Aug 14, 2009 at 15:18, Martin Sebor&lt;msebor@gmail.com&gt; wrote:
&gt; I think we should think about cutting a 4.2.2 release sometime this
&gt; month. It's been embarrassingly long since 4.2.1. Farid (or anyone
&gt; else), do you have anything that you'd like included in it?
&gt;
&gt; Martin

Hi.

Solaris 10 10/2008 SPARC has introduced a binary incompatible change
in the POSIX and Solaris threads implementation:

http://docs.sun.com/app/docs/doc/820-5245/chapter2-1000?a=view

&lt;QUOTE&gt;

Objects of type mutex_t and pthread_mutex_t must start at 8-byte
aligned addresses. Applications that do not satisfy this requirement
fail. The following error message is displayed:

*** _THREAD_ERROR_DETECTION: lock usage error detected ***
...
"mutex is misaligned"
OR:
"condvar is misaligned"

&lt;/QUOTE&gt;

In reality, the run-time performance is much worse than the errata
above claims: misaligned mutexes or conditional variables cause the
program to spuriously SEGV in sometimes hard to reproduce ways [
Heisenbug ].

You can view full details of this bug/change here:

http://bugs.opensolaris.org/view_bug.do?bug_id=6729759

To make a long story short, Solaris Kernel Update 137111-01 introduced
an ABI incompatible implementation restriction, requiring that mutexes
and conditional variables must be 8-byte aligned. This restriction has
never been documented, nor has it ever been enforced, until Solaris 10
10/2008 [ Solaris Kernel Update 137111-01 ].

The consequence of this KU is that, the multi-threaded 32-bit SPARC
version of the Apache Standard C++ Library [ 4.2.1 ] will no longer
work, and will fail at run-time with seemingly unexplainable crashes [
the exact same build will work on Solaris versions prior to Kernel
Update 137111-01 ].

This problem is not specific to the Apache Standard C++ Library: it
will occur with any 32-bit SPARCV8 binaries which do not align mutexes
or conditional variables on an 8 byte boundary.

I have created a set of patches for the Apache Standard C++ Library,
Version 4.2.1, for this problem:

http://s247136804.onlinehome.us/stdcxx-upstream/4.2.1/

You can download the tarball with all the patches from the same URL:

http://s247136804.onlinehome.us/stdcxx-upstream/4.2.1/stdcxx-upstream-patches.tar.bz2

These patches force an 8-byte alignment for all objects which contain
a mutex or a conditional variable, and that only for SPARC. With these
patches, all the tests perform as expected.

The patch 22.locale.numpunct.cpp.43.diff is not related to the SPARCV8
ABI change -- it is simply an avoidance of a SEGV in case the variable
first_non_c == NULL [ Solaris sprintf(3C) SEGV's on NULL char*
arguments ].

--Stefan

-- 
Stefan Teleman
stefan.teleman@gmail.com


</pre>
</div>
</content>
</entry>
<entry>
<title>4.2.2 release</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200908.mbox/%3c4A85B875.6060609@gmail.com%3e"/>
<id>urn:uuid:%3c4A85B875-6060609@gmail-com%3e</id>
<updated>2009-08-14T19:18:13Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
I think we should think about cutting a 4.2.2 release sometime this
month. It's been embarrassingly long since 4.2.1. Farid (or anyone
else), do you have anything that you'd like included in it?

Martin


</pre>
</div>
</content>
</entry>
<entry>
<title>backward/forward binary compatibility checker</title>
<author><name>Andrey Ponomarenko &lt;susanin@ispras.ru&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200907.mbox/%3c4A73336B.4080103@ispras.ru%3e"/>
<id>urn:uuid:%3c4A73336B-4080103@ispras-ru%3e</id>
<updated>2009-07-31T18:09:47Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
    Colleagues, I'm software engineer from Institute for System
Programing of Russian Academy of Sciences and we are developing a free
lightweight tool for checking backward/forward binary compatibility of
shared C/C++ libraries in OS Linux. It checks interface signatures and
data type definitions in two library versions (headers and shared
objects) and searches differences that may lead to incompatibility
according to ABI standards. We have released 1.0.0 version of this tool
and we'd like you to consider its usefulness for your project.
    The wiki-page with the latest release of binary compatibility checker is
http://ispras.linux-foundation.org/index.php/ABI_compliance_checker

Andrey Ponomarenko &lt;susanin@ispras.ru&gt;



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: (Roguewave) Nightly testing changes</title>
<author><name>Andrew Black &lt;ablack@roguewave.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200906.mbox/%3c4A39765E.4040100@roguewave.com%3e"/>
<id>urn:uuid:%3c4A39765E-4040100@roguewave-com%3e</id>
<updated>2009-06-17T23:03:58Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Martin Sebor wrote:
[snip]
&gt; 
&gt; Like this?
&gt; 
&gt; --- genxviews   (revision 785832)
&gt; +++ genxviews   (working copy)
&gt; @@ -590,14 +590,18 @@
&gt; 
&gt;  # Windows ##############################################################
&gt; 
&gt; -process_results "Windows 2008" "EM64T" "MSVC 9.0" \
&gt; -                "win_2008-0-em64t-msvc-9.0-*-*-log.gz.txt" \
&gt; -                 win_2008_0-em64t-msvc-9.0.html
&gt; +process_results "Windows 2008" "X64" "MSVC 9.0" \
&gt; +                "windows-2008-msvc-9.0-*-*-log.gz.txt" \
&gt; +                 windows-2008-msvc-9.0.html
&gt; 
&gt; -process_results "Windows 2008" "EM64T" "Intel C++ 11.0" \
&gt; -                "win_2008-0-em64t-icl-11.0-*-*-log.gz.txt" \
&gt; -                 win_2008_0-em64t-icl-11.0.html
&gt; +process_results "Windows 2008" "X64" "MSVC 8.0" \
&gt; +                "windows-2008-msvc-8.0-*-*-log.gz.txt" \
&gt; +                 windows-2008-msvc-8.0.html
&gt; 
&gt; +process_results "Windows 2008" "X64" "Intel C++ 11.0" \
&gt; +                "windows-2008-icl-11.0-*-*-log.gz.txt" \
&gt; +                 windows-2008-icl-11.0.html
&gt; +
&gt;  process_results "Windows Vista" "EM64T" "MSVC 9.0" \
&gt;                  "win_vista-0-em64t-msvc-9.0-*-*-log.gz.txt" \
&gt;                   win_vista_0-em64t-msvc-9.0.html
&gt; 

That looks correct. As I said, I've added the required translation to
fetch_records.pl (one of the scripts run on the RogueWave side of
things), so we may be able to get by with just adding

process_results "Windows 2008" "X64" "MSVC 8.0" \
               "win_2008-0-em64t-msvc-8.0-*-*-log.gz.txt" \
                win_2008-0-em64t-msvc-8.0.html

to the list of things to process. Given a day or two of bad index pages
won't throw things too much, I'd add the msvc line now, and alter
genxviews to use the roguewave name later if it's needed.

--Andrew Black


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: (Roguewave) Nightly testing changes</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200906.mbox/%3c4A3972C5.3000609@gmail.com%3e"/>
<id>urn:uuid:%3c4A3972C5-3000609@gmail-com%3e</id>
<updated>2009-06-17T22:48:37Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Andrew Black wrote:
&gt; I think I've got a couple corrections on that list.
&gt; 
&gt; One is that you may need to use the os name windows-2008 rather than
&gt; win_2008_0-em64t.  I've updated fetch_records.pl in perforce, but I'm
&gt; not certain if the changes automatically propagate or not when the fetch
&gt; is performed. If the changes aren't automatically propagated, we'll
&gt; likely need to figure out how to transition the push updates to my user
&gt; account.
&gt; 
&gt; The second correction is that the testing coverage on windows-2008
&gt; includes MSVC 8.0.

Like this?

--- genxviews   (revision 785832)
+++ genxviews   (working copy)
@@ -590,14 +590,18 @@

  # Windows ##############################################################

-process_results "Windows 2008" "EM64T" "MSVC 9.0" \
-                "win_2008-0-em64t-msvc-9.0-*-*-log.gz.txt" \
-                 win_2008_0-em64t-msvc-9.0.html
+process_results "Windows 2008" "X64" "MSVC 9.0" \
+                "windows-2008-msvc-9.0-*-*-log.gz.txt" \
+                 windows-2008-msvc-9.0.html

-process_results "Windows 2008" "EM64T" "Intel C++ 11.0" \
-                "win_2008-0-em64t-icl-11.0-*-*-log.gz.txt" \
-                 win_2008_0-em64t-icl-11.0.html
+process_results "Windows 2008" "X64" "MSVC 8.0" \
+                "windows-2008-msvc-8.0-*-*-log.gz.txt" \
+                 windows-2008-msvc-8.0.html

+process_results "Windows 2008" "X64" "Intel C++ 11.0" \
+                "windows-2008-icl-11.0-*-*-log.gz.txt" \
+                 windows-2008-icl-11.0.html
+
  process_results "Windows Vista" "EM64T" "MSVC 9.0" \
                  "win_vista-0-em64t-msvc-9.0-*-*-log.gz.txt" \
                   win_vista_0-em64t-msvc-9.0.html

&gt; 
&gt; --Andrew Black
&gt; 
&gt; Martin Sebor wrote:
&gt;&gt; Thanks for the heads up! I updated the genxviews script to reflect
&gt;&gt; your changes on the result pages (see the commit below). Hopefully
&gt;&gt; I got the system abbrevs right. I don't think the Solaris changes
&gt;&gt; need any updates to the script.
&gt;&gt;
&gt;&gt; http://svn.apache.org/viewvc?view=rev&amp;revision=785832
&gt;&gt;
&gt;&gt; Martin
&gt;&gt;
&gt;&gt; Andrew Black wrote:
&gt;&gt;&gt; Greetings all.
&gt;&gt;&gt;
&gt;&gt;&gt; The schedule used for the nightly testing of stdcxx builds on the build
&gt;&gt;&gt; servers at RogueWave has gotten a little out of date, so I ended up
&gt;&gt;&gt; taking some time today to bring it into alignment with the current state
&gt;&gt;&gt; of the build servers.  This resulted in the following changes being
&gt;&gt;&gt; made.  Note that I'm using the host name vocabulary used internally by
&gt;&gt;&gt; RogueWave for these notes, rather than those names on the
&gt;&gt;&gt; http://stdcxx.apache.org/builds/ pages.
&gt;&gt;&gt;
&gt;&gt;&gt; * windows-2003: Remove all requests (hosts repurposed for windows-2008)
&gt;&gt;&gt; * Windows_2000: Remove all requests (host died).
&gt;&gt;&gt; * windows_xp: remove requests for icl-9.1, icl-10.0, msvc-7.1, add
&gt;&gt;&gt; requests for 32-bit icl-11.0.
&gt;&gt;&gt; * windows-xp-em64t: Remove requests for icl-10.0, add requests for
&gt;&gt;&gt; 64-bit icl-11.0.
&gt;&gt;&gt; * windows-vista-em64t: remove requests for icl-10.0, replace with
&gt;&gt;&gt; requrests for icl-11.0.
&gt;&gt;&gt; * windows-2008: Add testing of same requests as windows-vista-em64t on
&gt;&gt;&gt; mason, pane, porthole, and shatter.
&gt;&gt;&gt; * redhat_as-4.0-amd64: Remove, folding into redhat_as-4.0-em64t
&gt;&gt;&gt; * redhat_as-5.0-em64t: Remove compiler/binutils runenvs, requrests for
&gt;&gt;&gt; icc-9.1 and icc-10.0, add requests for icc-11.0
&gt;&gt;&gt; * solaris-9: Update sunpro 5.9 patch level to 5.9j10
&gt;&gt;&gt; * solaris-10-amd64: Ditto.
&gt;&gt;&gt; * solaris-10: Ditto, update sunpro 5.8 patch level to 5.8j17
&gt;&gt;&gt;
&gt;&gt;&gt; One other piece of information of note is that operating system upgrades
&gt;&gt;&gt; have been performed on all solaris, redhat and windows platforms. I
&gt;&gt;&gt; don't have exact patch versions handy, but the script used to push the
&gt;&gt;&gt; results out to apache has not been updated with the new versions.
&gt;&gt;&gt;
&gt;&gt;&gt; --Andrew Black



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: (Roguewave) Nightly testing changes</title>
<author><name>Andrew Black &lt;ablack@roguewave.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200906.mbox/%3c4A3970B2.6000005@roguewave.com%3e"/>
<id>urn:uuid:%3c4A3970B2-6000005@roguewave-com%3e</id>
<updated>2009-06-17T22:39:46Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
I think I've got a couple corrections on that list.

One is that you may need to use the os name windows-2008 rather than
win_2008_0-em64t.  I've updated fetch_records.pl in perforce, but I'm
not certain if the changes automatically propagate or not when the fetch
is performed. If the changes aren't automatically propagated, we'll
likely need to figure out how to transition the push updates to my user
account.

The second correction is that the testing coverage on windows-2008
includes MSVC 8.0.

--Andrew Black

Martin Sebor wrote:
&gt; Thanks for the heads up! I updated the genxviews script to reflect
&gt; your changes on the result pages (see the commit below). Hopefully
&gt; I got the system abbrevs right. I don't think the Solaris changes
&gt; need any updates to the script.
&gt; 
&gt; http://svn.apache.org/viewvc?view=rev&amp;revision=785832
&gt; 
&gt; Martin
&gt; 
&gt; Andrew Black wrote:
&gt;&gt; Greetings all.
&gt;&gt;
&gt;&gt; The schedule used for the nightly testing of stdcxx builds on the build
&gt;&gt; servers at RogueWave has gotten a little out of date, so I ended up
&gt;&gt; taking some time today to bring it into alignment with the current state
&gt;&gt; of the build servers.  This resulted in the following changes being
&gt;&gt; made.  Note that I'm using the host name vocabulary used internally by
&gt;&gt; RogueWave for these notes, rather than those names on the
&gt;&gt; http://stdcxx.apache.org/builds/ pages.
&gt;&gt;
&gt;&gt; * windows-2003: Remove all requests (hosts repurposed for windows-2008)
&gt;&gt; * Windows_2000: Remove all requests (host died).
&gt;&gt; * windows_xp: remove requests for icl-9.1, icl-10.0, msvc-7.1, add
&gt;&gt; requests for 32-bit icl-11.0.
&gt;&gt; * windows-xp-em64t: Remove requests for icl-10.0, add requests for
&gt;&gt; 64-bit icl-11.0.
&gt;&gt; * windows-vista-em64t: remove requests for icl-10.0, replace with
&gt;&gt; requrests for icl-11.0.
&gt;&gt; * windows-2008: Add testing of same requests as windows-vista-em64t on
&gt;&gt; mason, pane, porthole, and shatter.
&gt;&gt; * redhat_as-4.0-amd64: Remove, folding into redhat_as-4.0-em64t
&gt;&gt; * redhat_as-5.0-em64t: Remove compiler/binutils runenvs, requrests for
&gt;&gt; icc-9.1 and icc-10.0, add requests for icc-11.0
&gt;&gt; * solaris-9: Update sunpro 5.9 patch level to 5.9j10
&gt;&gt; * solaris-10-amd64: Ditto.
&gt;&gt; * solaris-10: Ditto, update sunpro 5.8 patch level to 5.8j17
&gt;&gt;
&gt;&gt; One other piece of information of note is that operating system upgrades
&gt;&gt; have been performed on all solaris, redhat and windows platforms. I
&gt;&gt; don't have exact patch versions handy, but the script used to push the
&gt;&gt; results out to apache has not been updated with the new versions.
&gt;&gt;
&gt;&gt; --Andrew Black
&gt; 


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: (Roguewave) Nightly testing changes</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200906.mbox/%3c4A3969DD.8020206@gmail.com%3e"/>
<id>urn:uuid:%3c4A3969DD-8020206@gmail-com%3e</id>
<updated>2009-06-17T22:10:37Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Thanks for the heads up! I updated the genxviews script to reflect
your changes on the result pages (see the commit below). Hopefully
I got the system abbrevs right. I don't think the Solaris changes
need any updates to the script.

http://svn.apache.org/viewvc?view=rev&amp;revision=785832

Martin

Andrew Black wrote:
&gt; Greetings all.
&gt; 
&gt; The schedule used for the nightly testing of stdcxx builds on the build
&gt; servers at RogueWave has gotten a little out of date, so I ended up
&gt; taking some time today to bring it into alignment with the current state
&gt; of the build servers.  This resulted in the following changes being
&gt; made.  Note that I'm using the host name vocabulary used internally by
&gt; RogueWave for these notes, rather than those names on the
&gt; http://stdcxx.apache.org/builds/ pages.
&gt; 
&gt; * windows-2003: Remove all requests (hosts repurposed for windows-2008)
&gt; * Windows_2000: Remove all requests (host died).
&gt; * windows_xp: remove requests for icl-9.1, icl-10.0, msvc-7.1, add
&gt; requests for 32-bit icl-11.0.
&gt; * windows-xp-em64t: Remove requests for icl-10.0, add requests for
&gt; 64-bit icl-11.0.
&gt; * windows-vista-em64t: remove requests for icl-10.0, replace with
&gt; requrests for icl-11.0.
&gt; * windows-2008: Add testing of same requests as windows-vista-em64t on
&gt; mason, pane, porthole, and shatter.
&gt; * redhat_as-4.0-amd64: Remove, folding into redhat_as-4.0-em64t
&gt; * redhat_as-5.0-em64t: Remove compiler/binutils runenvs, requrests for
&gt; icc-9.1 and icc-10.0, add requests for icc-11.0
&gt; * solaris-9: Update sunpro 5.9 patch level to 5.9j10
&gt; * solaris-10-amd64: Ditto.
&gt; * solaris-10: Ditto, update sunpro 5.8 patch level to 5.8j17
&gt; 
&gt; One other piece of information of note is that operating system upgrades
&gt; have been performed on all solaris, redhat and windows platforms. I
&gt; don't have exact patch versions handy, but the script used to push the
&gt; results out to apache has not been updated with the new versions.
&gt; 
&gt; --Andrew Black



</pre>
</div>
</content>
</entry>
<entry>
<title>(Roguewave) Nightly testing changes</title>
<author><name>Andrew Black &lt;ablack@roguewave.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200906.mbox/%3c4A394300.8080005@roguewave.com%3e"/>
<id>urn:uuid:%3c4A394300-8080005@roguewave-com%3e</id>
<updated>2009-06-17T19:24:48Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Greetings all.

The schedule used for the nightly testing of stdcxx builds on the build
servers at RogueWave has gotten a little out of date, so I ended up
taking some time today to bring it into alignment with the current state
of the build servers.  This resulted in the following changes being
made.  Note that I'm using the host name vocabulary used internally by
RogueWave for these notes, rather than those names on the
http://stdcxx.apache.org/builds/ pages.

* windows-2003: Remove all requests (hosts repurposed for windows-2008)
* Windows_2000: Remove all requests (host died).
* windows_xp: remove requests for icl-9.1, icl-10.0, msvc-7.1, add
requests for 32-bit icl-11.0.
* windows-xp-em64t: Remove requests for icl-10.0, add requests for
64-bit icl-11.0.
* windows-vista-em64t: remove requests for icl-10.0, replace with
requrests for icl-11.0.
* windows-2008: Add testing of same requests as windows-vista-em64t on
mason, pane, porthole, and shatter.
* redhat_as-4.0-amd64: Remove, folding into redhat_as-4.0-em64t
* redhat_as-5.0-em64t: Remove compiler/binutils runenvs, requrests for
icc-9.1 and icc-10.0, add requests for icc-11.0
* solaris-9: Update sunpro 5.9 patch level to 5.9j10
* solaris-10-amd64: Ditto.
* solaris-10: Ditto, update sunpro 5.8 patch level to 5.8j17

One other piece of information of note is that operating system upgrades
have been performed on all solaris, redhat and windows platforms. I
don't have exact patch versions handy, but the script used to push the
results out to apache has not been updated with the new versions.

--Andrew Black


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Buildbot - Useful for nightly testing?</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200906.mbox/%3c4A2C5059.1070101@gmail.com%3e"/>
<id>urn:uuid:%3c4A2C5059-1070101@gmail-com%3e</id>
<updated>2009-06-07T23:42:17Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Gavin wrote:
&gt; Hi All,

Hi Gavin!

&gt; 
&gt; I noticed from the last board report that you are looking for a
&gt; replacement(s) for nightly testing.
&gt; 
&gt; We have a Buildbot instance at http://ci.apache.org/buildbot.html &amp;&amp;
&gt; http://ci.apache.org/waterfall .
&gt; 
&gt; I have seen some of your test results at stdcxx.apache.org/builds/ and these
&gt; look comprehensive. Whilst Buildbot may not be as thorough with producing
&gt; results I hope that it can help in some way with your build testing.
&gt; 
&gt; Currently Buildbot is only available on Ubuntu. There are plans to expand
&gt; the build farm and so Buildbot will be available on other platforms over the
&gt; next few months.
&gt; 
&gt; Some questions if I can.
&gt; 
&gt; 1. Interested?

Definitely!

&gt; 
&gt; 2. Id like to test Stdcxx on Buildbot on our Ubuntu machine, can someone run
&gt; through what simple tests we can run for now? - I'll about getting it on
&gt; there over the next few days.

I'll be interested in looking at the results. I'll need some time
to better understand the current presentation format.

&gt; 
&gt; 3. I would like a summary of what you would need to replicate either your
&gt; current build/test setup, or what you believe would be good to have at
&gt; Apache for your needs - consider that no machine is likely to be dedicated
&gt; to one project, but rather shared in a way to benefit all. Mention any
&gt; features of post-build outcomes you have or desire also.

The stdcxx builds pages present the build and test results across
the set of tested configurations of the project on each platform
(a unique combination of compiler, operating system, and hardware
architecture).

For example, the page below consists of 5 tables showing the build
and test results of 16 configurations of stdcxx with gcc 4.1.1 on
Solaris 10/SPARC:

http://stdcxx.apache.org/builds/4.2.x/solaris-10-sparc-gcc-4.1.1.html

The first table, Logs and Columns (http://tinyurl.com/mvwufq#logs),
gives summary info about each build (the OS, hardware architecture,
compiler, the "build type" -- see the last table on the page, titled
Build Types), how old the build result is (WRT the date the page was
created), the svn revision the result corresponds to, the sizes of
various artifacts of the build process, and the number of diagnostics
issued during each stage of the build process.

The second table, Timings (http://tinyurl.com/mvwufq#timings) gives
timings of the stages of the build process.

The next three tables, titled "Results of %d %s from %d logs" show
the results of compiling, linking, and running each of stdcxx tests
(those are divided into tests of locales, unit tests, and example
programs supplied with the project). Every row in each of these
tables represents a single test. Every column corresponds to each
of the builds (configurations) of the project. The cell format,
including the color scheme, is documented in a table titled Codes
and Colors toward the bottom of the page (see
http://tinyurl.com/mvwufq#codes). Only rows with "interesting"
results (i.e., those indicating a problem of some kind) are shown.

The pages are generated from plain text logs created by the build
and test script distributed with stdcxx:
http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/bin/buildntest

The script responsible for generating the pages is xbuildgen:
http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/bin/xbuildgen

Martin

&gt; 
&gt; Whilst I couldn't guarantee anything, I would like to take this to
&gt; infrastructure and use it in consideration when planning our purchasing
&gt; requirements for the build farm expansion.
&gt; 
&gt; Thanks
&gt; 
&gt; Gav...
&gt; 



</pre>
</div>
</content>
</entry>
<entry>
<title>Buildbot - Useful for nightly testing?</title>
<author><name>&quot;Gavin&quot; &lt;gavin@16degrees.com.au&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200906.mbox/%3c0D16DE842D58469AA649EDD1DE9C5FEB@developer%3e"/>
<id>urn:uuid:%3c0D16DE842D58469AA649EDD1DE9C5FEB@developer%3e</id>
<updated>2009-06-07T05:20:38Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Hi All,

I noticed from the last board report that you are looking for a
replacement(s) for nightly testing.

We have a Buildbot instance at http://ci.apache.org/buildbot.html &amp;&amp;
http://ci.apache.org/waterfall .

I have seen some of your test results at stdcxx.apache.org/builds/ and these
look comprehensive. Whilst Buildbot may not be as thorough with producing
results I hope that it can help in some way with your build testing.

Currently Buildbot is only available on Ubuntu. There are plans to expand
the build farm and so Buildbot will be available on other platforms over the
next few months.

Some questions if I can.

1. Interested?

2. Id like to test Stdcxx on Buildbot on our Ubuntu machine, can someone run
through what simple tests we can run for now? - I'll about getting it on
there over the next few days.

3. I would like a summary of what you would need to replicate either your
current build/test setup, or what you believe would be good to have at
Apache for your needs - consider that no machine is likely to be dedicated
to one project, but rather shared in a way to benefit all. Mention any
features of post-build outcomes you have or desire also.

Whilst I couldn't guarantee anything, I would like to take this to
infrastructure and use it in consideration when planning our purchasing
requirements for the build farm expansion.

Thanks

Gav...



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: svn commit: r777603 - in /stdcxx/branches/4.2.x: etc/config/src/ src/</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200905.mbox/%3c4A1AC6AB.1040804@gmail.com%3e"/>
<id>urn:uuid:%3c4A1AC6AB-1040804@gmail-com%3e</id>
<updated>2009-05-25T16:26:19Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Farid Zaripov wrote:
&gt;&gt; Why do we need this and the other tests?
&gt; 
&gt;   I've got the MSVC 10.0 beta recently and I prepairing the stdcxx
&gt; for this compiler. 
&gt; 
&gt;&gt; I'm pretty sure you know this but just for completeness:
&gt;&gt;
&gt; [...]
&gt;&gt; If there is a compiler that we need _RWSTD_NO_DOMAIN_ERROR_DTOR for,
&gt;&gt; won't we also need a macro for every single one of the rest of C++
&gt;&gt; Standard Library polymorphic classes such as std::ios_base?
&gt; 
&gt;   Actually, the MSVC 10.0 beta libc contains dtor's for std::length_error
&gt; and std::logic_error only (at least in 15s configuration which I've tested).
&gt; It is still beta for now, but I believe that these dtors will go to the
&gt; release.
&gt; 
&gt;   Or should I fill the bug report to Microsoft on that issue?

That would be great, thanks! With dtors for arbitrary C++ Standard
Library in their libc there's no way to build/use a third party
implementation such as stdcxx. Imagine one of the dtors doing
something to the class, e.g.:

     class length_error: runtime_error {   // MSVC 10 definition
         char* data;
     public:
         virtual ~length_error () { delete[] data; }
         // ...
     }

Martin

&gt; 
&gt; Best Regards,
&gt; Farid Zaripov
&gt; 



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: svn commit: r777603 - in /stdcxx/branches/4.2.x: etc/config/src/ src/</title>
<author><name>&quot;Farid Zaripov&quot; &lt;faridz@apache.org&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200905.mbox/%3c90C3E83D28FD45A1AEC9F848CC80E68B@kyiv.epam.com%3e"/>
<id>urn:uuid:%3c90C3E83D28FD45A1AEC9F848CC80E68B@kyiv-epam-com%3e</id>
<updated>2009-05-25T12:15:05Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
&gt; Why do we need this and the other tests?

  I've got the MSVC 10.0 beta recently and I prepairing the stdcxx
for this compiler. 

&gt; I'm pretty sure you know this but just for completeness:
&gt; 
[...]
&gt; 
&gt; If there is a compiler that we need _RWSTD_NO_DOMAIN_ERROR_DTOR for,
&gt; won't we also need a macro for every single one of the rest of C++
&gt; Standard Library polymorphic classes such as std::ios_base?

  Actually, the MSVC 10.0 beta libc contains dtor's for std::length_error
and std::logic_error only (at least in 15s configuration which I've tested).
It is still beta for now, but I believe that these dtors will go to the
release.

  Or should I fill the bug report to Microsoft on that issue?

Best Regards,
Farid Zaripov



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: svn commit: r777603 - in /stdcxx/branches/4.2.x: etc/config/src/ src/</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200905.mbox/%3c4A172620.8040404@gmail.com%3e"/>
<id>urn:uuid:%3c4A172620-8040404@gmail-com%3e</id>
<updated>2009-05-22T22:24:32Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
faridz@apache.org wrote:
&gt; Author: faridz
&gt; Date: Fri May 22 16:30:22 2009
&gt; New Revision: 777603
&gt; 
&gt; URL: http://svn.apache.org/viewvc?rev=777603&amp;view=rev
&gt; Log:
&gt; 2009-05-22  Farid Zaripov  &lt;faridz@apache.org&gt;
&gt; 
&gt; 	* etc/config/src/DOMAIN_ERROR_DTOR.cpp: New configuration test checking for domain_error
dtor

Why do we need this and the other tests?

I'm pretty sure you know this but just for completeness:

Unlike their base class, std::exception, which is normally defined
in the language support library (i.e., the C++ runtime), such as
libsupc++ with gcc, std::domain_error and the rest of the classes
below as well as most other C++ Standard Library classes (most
notoriously iostreams and locales) are defined in the C++ Standard
Library, such as libstdc++ with gcc. Programs that link with stdcxx
must only link with the language runtime and must avoid linking with
the rest of the C++ Standard Library that comes with the compiler
(for gcc, this is done by using the gcc command to link rather than
g++).

If there is a compiler that we need _RWSTD_NO_DOMAIN_ERROR_DTOR for,
won't we also need a macro for every single one of the rest of C++
Standard Library polymorphic classes such as std::ios_base?

&gt; 	* etc/config/src/INVALID_ARGUMENT_DTOR.cpp: Same for invalid_argument.
&gt; 	* etc/config/src/LENGTH_ERROR_DTOR.cpp: Same for length_error.
&gt; 	* etc/config/src/LOGIC_ERROR_DTOR.cpp: Same for logic_error.
&gt; 	* etc/config/src/OUT_OF_RANGE_DTOR.cpp: Same for out_of_range.
&gt; 	* etc/config/src/OVERFLOW_ERROR_DTOR.cpp: Same for overflow_error.
&gt; 	* etc/config/src/RANGE_ERROR_DTOR.cpp: Same for range_error.
&gt; 	* etc/config/src/RUNTIME_ERROR_DTOR.cpp: Same for runtime_error.
&gt; 	* etc/config/src/UNDERFLOW_ERROR_DTOR.cpp: Same for underflow_error.
&gt; 	* src/domain_error.cpp: Define dtor if it is not defined in libc only.

Are you sure you meant libc above? No libc that I know of defines
C++ classes.

What platform is this for?

Martin


&gt; 	* src/invalid_argument.cpp: Ditto.
&gt; 	* src/length_error.cpp: Ditto.
&gt; 	* src/logic_error.cpp: Ditto.
&gt; 	* src/out_of_range.cpp: Ditto.
&gt; 	* src/overflow_error.cpp: Ditto.
&gt; 	* src/range_error.cpp: Ditto.
&gt; 	* src/runtime_error.cpp: Ditto.
&gt; 	* src/underflow_error.cpp: Ditto.
&gt; 
&gt; Added:
&gt;     stdcxx/branches/4.2.x/etc/config/src/DOMAIN_ERROR_DTOR.cpp   (with props)
&gt;     stdcxx/branches/4.2.x/etc/config/src/INVALID_ARGUMENT_DTOR.cpp   (with props)
&gt;     stdcxx/branches/4.2.x/etc/config/src/LENGTH_ERROR_DTOR.cpp   (with props)
&gt;     stdcxx/branches/4.2.x/etc/config/src/LOGIC_ERROR_DTOR.cpp   (with props)
&gt;     stdcxx/branches/4.2.x/etc/config/src/OUT_OF_RANGE_DTOR.cpp   (with props)
&gt;     stdcxx/branches/4.2.x/etc/config/src/OVERFLOW_ERROR_DTOR.cpp   (with props)
&gt;     stdcxx/branches/4.2.x/etc/config/src/RANGE_ERROR_DTOR.cpp   (with props)
&gt;     stdcxx/branches/4.2.x/etc/config/src/RUNTIME_ERROR_DTOR.cpp   (with props)
&gt;     stdcxx/branches/4.2.x/etc/config/src/UNDERFLOW_ERROR_DTOR.cpp   (with props)
&gt; Modified:
&gt;     stdcxx/branches/4.2.x/src/domain_error.cpp
&gt;     stdcxx/branches/4.2.x/src/invalid_argument.cpp
&gt;     stdcxx/branches/4.2.x/src/length_error.cpp
&gt;     stdcxx/branches/4.2.x/src/logic_error.cpp
&gt;     stdcxx/branches/4.2.x/src/out_of_range.cpp
&gt;     stdcxx/branches/4.2.x/src/overflow_error.cpp
&gt;     stdcxx/branches/4.2.x/src/range_error.cpp
&gt;     stdcxx/branches/4.2.x/src/runtime_error.cpp
&gt;     stdcxx/branches/4.2.x/src/underflow_error.cpp
&gt; 
&gt; Added: stdcxx/branches/4.2.x/etc/config/src/DOMAIN_ERROR_DTOR.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/etc/config/src/DOMAIN_ERROR_DTOR.cpp?rev=777603&amp;view=auto
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/etc/config/src/DOMAIN_ERROR_DTOR.cpp (added)
&gt; +++ stdcxx/branches/4.2.x/etc/config/src/DOMAIN_ERROR_DTOR.cpp Fri May 22 16:30:22 2009
&gt; @@ -0,0 +1,40 @@
&gt; +// checking for domain_error dtor
&gt; +
&gt; +/***************************************************************************
&gt; + *
&gt; + * Licensed to the Apache Software  Foundation (ASF) under one or more
&gt; + * contributor  license agreements.  See  the NOTICE  file distributed
&gt; + * with  this  work  for  additional information  regarding  copyright
&gt; + * ownership.   The ASF  licenses this  file to  you under  the Apache
&gt; + * License, Version  2.0 (the  License); you may  not use  this file
&gt; + * except in  compliance with the License.   You may obtain  a copy of
&gt; + * the License at
&gt; + *
&gt; + * http://www.apache.org/licenses/LICENSE-2.0
&gt; + *
&gt; + * Unless required by applicable law or agreed to in writing, software
&gt; + * distributed under the  License is distributed on an  "AS IS" BASIS,
&gt; + * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
&gt; + * implied.   See  the License  for  the  specific language  governing
&gt; + * permissions and limitations under the License.
&gt; + *
&gt; + * Copyright 1999-2007 Rogue Wave Software, Inc.
&gt; + * 
&gt; + **************************************************************************/
&gt; +
&gt; +#if 0   // guard invalid preprocessor symbol below
&gt; +   // establish a dependency on RUNTIME_IN_STD.cpp
&gt; +#  ifndef _RWSTD_NO_RUNTIME_IN_STD
&gt; +#  endif   // _RWSTD_NO_RUNTIME_IN_STD
&gt; +#endif   // 0
&gt; +
&gt; +#define TEST_DTOR
&gt; +#define bad_alloc domain_error
&gt; +#define main      test_domain_error_dtor
&gt; +#include "BAD_ALLOC_ASSIGNMENT.cpp"
&gt; +#undef main
&gt; +
&gt; +int main (int argc, char *argv[])
&gt; +{
&gt; +    return test_domain_error_dtor (argc, argv);
&gt; +}
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/DOMAIN_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:eol-style = native
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/DOMAIN_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:keywords = Id
&gt; 
&gt; Added: stdcxx/branches/4.2.x/etc/config/src/INVALID_ARGUMENT_DTOR.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/etc/config/src/INVALID_ARGUMENT_DTOR.cpp?rev=777603&amp;view=auto
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/etc/config/src/INVALID_ARGUMENT_DTOR.cpp (added)
&gt; +++ stdcxx/branches/4.2.x/etc/config/src/INVALID_ARGUMENT_DTOR.cpp Fri May 22 16:30:22
2009
&gt; @@ -0,0 +1,40 @@
&gt; +// checking for invalid_argument dtor
&gt; +
&gt; +/***************************************************************************
&gt; + *
&gt; + * Licensed to the Apache Software  Foundation (ASF) under one or more
&gt; + * contributor  license agreements.  See  the NOTICE  file distributed
&gt; + * with  this  work  for  additional information  regarding  copyright
&gt; + * ownership.   The ASF  licenses this  file to  you under  the Apache
&gt; + * License, Version  2.0 (the  License); you may  not use  this file
&gt; + * except in  compliance with the License.   You may obtain  a copy of
&gt; + * the License at
&gt; + *
&gt; + * http://www.apache.org/licenses/LICENSE-2.0
&gt; + *
&gt; + * Unless required by applicable law or agreed to in writing, software
&gt; + * distributed under the  License is distributed on an  "AS IS" BASIS,
&gt; + * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
&gt; + * implied.   See  the License  for  the  specific language  governing
&gt; + * permissions and limitations under the License.
&gt; + *
&gt; + * Copyright 1999-2007 Rogue Wave Software, Inc.
&gt; + * 
&gt; + **************************************************************************/
&gt; +
&gt; +#if 0   // guard invalid preprocessor symbol below
&gt; +   // establish a dependency on RUNTIME_IN_STD.cpp
&gt; +#  ifndef _RWSTD_NO_RUNTIME_IN_STD
&gt; +#  endif   // _RWSTD_NO_RUNTIME_IN_STD
&gt; +#endif   // 0
&gt; +
&gt; +#define TEST_DTOR
&gt; +#define bad_alloc invalid_argument
&gt; +#define main      test_invalid_argument_dtor
&gt; +#include "BAD_ALLOC_ASSIGNMENT.cpp"
&gt; +#undef main
&gt; +
&gt; +int main (int argc, char *argv[])
&gt; +{
&gt; +    return test_invalid_argument_dtor (argc, argv);
&gt; +}
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/INVALID_ARGUMENT_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:eol-style = native
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/INVALID_ARGUMENT_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:keywords = Id
&gt; 
&gt; Added: stdcxx/branches/4.2.x/etc/config/src/LENGTH_ERROR_DTOR.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/etc/config/src/LENGTH_ERROR_DTOR.cpp?rev=777603&amp;view=auto
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/etc/config/src/LENGTH_ERROR_DTOR.cpp (added)
&gt; +++ stdcxx/branches/4.2.x/etc/config/src/LENGTH_ERROR_DTOR.cpp Fri May 22 16:30:22 2009
&gt; @@ -0,0 +1,40 @@
&gt; +// checking for length_error dtor
&gt; +
&gt; +/***************************************************************************
&gt; + *
&gt; + * Licensed to the Apache Software  Foundation (ASF) under one or more
&gt; + * contributor  license agreements.  See  the NOTICE  file distributed
&gt; + * with  this  work  for  additional information  regarding  copyright
&gt; + * ownership.   The ASF  licenses this  file to  you under  the Apache
&gt; + * License, Version  2.0 (the  License); you may  not use  this file
&gt; + * except in  compliance with the License.   You may obtain  a copy of
&gt; + * the License at
&gt; + *
&gt; + * http://www.apache.org/licenses/LICENSE-2.0
&gt; + *
&gt; + * Unless required by applicable law or agreed to in writing, software
&gt; + * distributed under the  License is distributed on an  "AS IS" BASIS,
&gt; + * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
&gt; + * implied.   See  the License  for  the  specific language  governing
&gt; + * permissions and limitations under the License.
&gt; + *
&gt; + * Copyright 1999-2007 Rogue Wave Software, Inc.
&gt; + * 
&gt; + **************************************************************************/
&gt; +
&gt; +#if 0   // guard invalid preprocessor symbol below
&gt; +   // establish a dependency on RUNTIME_IN_STD.cpp
&gt; +#  ifndef _RWSTD_NO_RUNTIME_IN_STD
&gt; +#  endif   // _RWSTD_NO_RUNTIME_IN_STD
&gt; +#endif   // 0
&gt; +
&gt; +#define TEST_DTOR
&gt; +#define bad_alloc length_error
&gt; +#define main      test_length_error_dtor
&gt; +#include "BAD_ALLOC_ASSIGNMENT.cpp"
&gt; +#undef main
&gt; +
&gt; +int main (int argc, char *argv[])
&gt; +{
&gt; +    return test_length_error_dtor (argc, argv);
&gt; +}
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/LENGTH_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:eol-style = native
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/LENGTH_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:keywords = Id
&gt; 
&gt; Added: stdcxx/branches/4.2.x/etc/config/src/LOGIC_ERROR_DTOR.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/etc/config/src/LOGIC_ERROR_DTOR.cpp?rev=777603&amp;view=auto
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/etc/config/src/LOGIC_ERROR_DTOR.cpp (added)
&gt; +++ stdcxx/branches/4.2.x/etc/config/src/LOGIC_ERROR_DTOR.cpp Fri May 22 16:30:22 2009
&gt; @@ -0,0 +1,40 @@
&gt; +// checking for logic_error dtor
&gt; +
&gt; +/***************************************************************************
&gt; + *
&gt; + * Licensed to the Apache Software  Foundation (ASF) under one or more
&gt; + * contributor  license agreements.  See  the NOTICE  file distributed
&gt; + * with  this  work  for  additional information  regarding  copyright
&gt; + * ownership.   The ASF  licenses this  file to  you under  the Apache
&gt; + * License, Version  2.0 (the  License); you may  not use  this file
&gt; + * except in  compliance with the License.   You may obtain  a copy of
&gt; + * the License at
&gt; + *
&gt; + * http://www.apache.org/licenses/LICENSE-2.0
&gt; + *
&gt; + * Unless required by applicable law or agreed to in writing, software
&gt; + * distributed under the  License is distributed on an  "AS IS" BASIS,
&gt; + * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
&gt; + * implied.   See  the License  for  the  specific language  governing
&gt; + * permissions and limitations under the License.
&gt; + *
&gt; + * Copyright 1999-2007 Rogue Wave Software, Inc.
&gt; + * 
&gt; + **************************************************************************/
&gt; +
&gt; +#if 0   // guard invalid preprocessor symbol below
&gt; +   // establish a dependency on RUNTIME_IN_STD.cpp
&gt; +#  ifndef _RWSTD_NO_RUNTIME_IN_STD
&gt; +#  endif   // _RWSTD_NO_RUNTIME_IN_STD
&gt; +#endif   // 0
&gt; +
&gt; +#define TEST_DTOR
&gt; +#define bad_alloc logic_error
&gt; +#define main      test_logic_error_dtor
&gt; +#include "BAD_ALLOC_ASSIGNMENT.cpp"
&gt; +#undef main
&gt; +
&gt; +int main (int argc, char *argv[])
&gt; +{
&gt; +    return test_logic_error_dtor (argc, argv);
&gt; +}
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/LOGIC_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:eol-style = native
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/LOGIC_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:keywords = Id
&gt; 
&gt; Added: stdcxx/branches/4.2.x/etc/config/src/OUT_OF_RANGE_DTOR.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/etc/config/src/OUT_OF_RANGE_DTOR.cpp?rev=777603&amp;view=auto
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/etc/config/src/OUT_OF_RANGE_DTOR.cpp (added)
&gt; +++ stdcxx/branches/4.2.x/etc/config/src/OUT_OF_RANGE_DTOR.cpp Fri May 22 16:30:22 2009
&gt; @@ -0,0 +1,40 @@
&gt; +// checking for out_of_range dtor
&gt; +
&gt; +/***************************************************************************
&gt; + *
&gt; + * Licensed to the Apache Software  Foundation (ASF) under one or more
&gt; + * contributor  license agreements.  See  the NOTICE  file distributed
&gt; + * with  this  work  for  additional information  regarding  copyright
&gt; + * ownership.   The ASF  licenses this  file to  you under  the Apache
&gt; + * License, Version  2.0 (the  License); you may  not use  this file
&gt; + * except in  compliance with the License.   You may obtain  a copy of
&gt; + * the License at
&gt; + *
&gt; + * http://www.apache.org/licenses/LICENSE-2.0
&gt; + *
&gt; + * Unless required by applicable law or agreed to in writing, software
&gt; + * distributed under the  License is distributed on an  "AS IS" BASIS,
&gt; + * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
&gt; + * implied.   See  the License  for  the  specific language  governing
&gt; + * permissions and limitations under the License.
&gt; + *
&gt; + * Copyright 1999-2007 Rogue Wave Software, Inc.
&gt; + * 
&gt; + **************************************************************************/
&gt; +
&gt; +#if 0   // guard invalid preprocessor symbol below
&gt; +   // establish a dependency on RUNTIME_IN_STD.cpp
&gt; +#  ifndef _RWSTD_NO_RUNTIME_IN_STD
&gt; +#  endif   // _RWSTD_NO_RUNTIME_IN_STD
&gt; +#endif   // 0
&gt; +
&gt; +#define TEST_DTOR
&gt; +#define bad_alloc out_of_range
&gt; +#define main      test_out_of_range_dtor
&gt; +#include "BAD_ALLOC_ASSIGNMENT.cpp"
&gt; +#undef main
&gt; +
&gt; +int main (int argc, char *argv[])
&gt; +{
&gt; +    return test_out_of_range_dtor (argc, argv);
&gt; +}
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/OUT_OF_RANGE_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:eol-style = native
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/OUT_OF_RANGE_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:keywords = Id
&gt; 
&gt; Added: stdcxx/branches/4.2.x/etc/config/src/OVERFLOW_ERROR_DTOR.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/etc/config/src/OVERFLOW_ERROR_DTOR.cpp?rev=777603&amp;view=auto
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/etc/config/src/OVERFLOW_ERROR_DTOR.cpp (added)
&gt; +++ stdcxx/branches/4.2.x/etc/config/src/OVERFLOW_ERROR_DTOR.cpp Fri May 22 16:30:22
2009
&gt; @@ -0,0 +1,40 @@
&gt; +// checking for overflow_error dtor
&gt; +
&gt; +/***************************************************************************
&gt; + *
&gt; + * Licensed to the Apache Software  Foundation (ASF) under one or more
&gt; + * contributor  license agreements.  See  the NOTICE  file distributed
&gt; + * with  this  work  for  additional information  regarding  copyright
&gt; + * ownership.   The ASF  licenses this  file to  you under  the Apache
&gt; + * License, Version  2.0 (the  License); you may  not use  this file
&gt; + * except in  compliance with the License.   You may obtain  a copy of
&gt; + * the License at
&gt; + *
&gt; + * http://www.apache.org/licenses/LICENSE-2.0
&gt; + *
&gt; + * Unless required by applicable law or agreed to in writing, software
&gt; + * distributed under the  License is distributed on an  "AS IS" BASIS,
&gt; + * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
&gt; + * implied.   See  the License  for  the  specific language  governing
&gt; + * permissions and limitations under the License.
&gt; + *
&gt; + * Copyright 1999-2007 Rogue Wave Software, Inc.
&gt; + * 
&gt; + **************************************************************************/
&gt; +
&gt; +#if 0   // guard invalid preprocessor symbol below
&gt; +   // establish a dependency on RUNTIME_IN_STD.cpp
&gt; +#  ifndef _RWSTD_NO_RUNTIME_IN_STD
&gt; +#  endif   // _RWSTD_NO_RUNTIME_IN_STD
&gt; +#endif   // 0
&gt; +
&gt; +#define TEST_DTOR
&gt; +#define bad_alloc overflow_error
&gt; +#define main      test_overflow_error_dtor
&gt; +#include "BAD_ALLOC_ASSIGNMENT.cpp"
&gt; +#undef main
&gt; +
&gt; +int main (int argc, char *argv[])
&gt; +{
&gt; +    return test_overflow_error_dtor (argc, argv);
&gt; +}
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/OVERFLOW_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:eol-style = native
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/OVERFLOW_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:keywords = Id
&gt; 
&gt; Added: stdcxx/branches/4.2.x/etc/config/src/RANGE_ERROR_DTOR.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/etc/config/src/RANGE_ERROR_DTOR.cpp?rev=777603&amp;view=auto
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/etc/config/src/RANGE_ERROR_DTOR.cpp (added)
&gt; +++ stdcxx/branches/4.2.x/etc/config/src/RANGE_ERROR_DTOR.cpp Fri May 22 16:30:22 2009
&gt; @@ -0,0 +1,40 @@
&gt; +// checking for range_error dtor
&gt; +
&gt; +/***************************************************************************
&gt; + *
&gt; + * Licensed to the Apache Software  Foundation (ASF) under one or more
&gt; + * contributor  license agreements.  See  the NOTICE  file distributed
&gt; + * with  this  work  for  additional information  regarding  copyright
&gt; + * ownership.   The ASF  licenses this  file to  you under  the Apache
&gt; + * License, Version  2.0 (the  License); you may  not use  this file
&gt; + * except in  compliance with the License.   You may obtain  a copy of
&gt; + * the License at
&gt; + *
&gt; + * http://www.apache.org/licenses/LICENSE-2.0
&gt; + *
&gt; + * Unless required by applicable law or agreed to in writing, software
&gt; + * distributed under the  License is distributed on an  "AS IS" BASIS,
&gt; + * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
&gt; + * implied.   See  the License  for  the  specific language  governing
&gt; + * permissions and limitations under the License.
&gt; + *
&gt; + * Copyright 1999-2007 Rogue Wave Software, Inc.
&gt; + * 
&gt; + **************************************************************************/
&gt; +
&gt; +#if 0   // guard invalid preprocessor symbol below
&gt; +   // establish a dependency on RUNTIME_IN_STD.cpp
&gt; +#  ifndef _RWSTD_NO_RUNTIME_IN_STD
&gt; +#  endif   // _RWSTD_NO_RUNTIME_IN_STD
&gt; +#endif   // 0
&gt; +
&gt; +#define TEST_DTOR
&gt; +#define bad_alloc range_error
&gt; +#define main      test_range_error_dtor
&gt; +#include "BAD_ALLOC_ASSIGNMENT.cpp"
&gt; +#undef main
&gt; +
&gt; +int main (int argc, char *argv[])
&gt; +{
&gt; +    return test_range_error_dtor (argc, argv);
&gt; +}
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/RANGE_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:eol-style = native
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/RANGE_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:keywords = Id
&gt; 
&gt; Added: stdcxx/branches/4.2.x/etc/config/src/RUNTIME_ERROR_DTOR.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/etc/config/src/RUNTIME_ERROR_DTOR.cpp?rev=777603&amp;view=auto
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/etc/config/src/RUNTIME_ERROR_DTOR.cpp (added)
&gt; +++ stdcxx/branches/4.2.x/etc/config/src/RUNTIME_ERROR_DTOR.cpp Fri May 22 16:30:22 2009
&gt; @@ -0,0 +1,40 @@
&gt; +// checking for runtime_error dtor
&gt; +
&gt; +/***************************************************************************
&gt; + *
&gt; + * Licensed to the Apache Software  Foundation (ASF) under one or more
&gt; + * contributor  license agreements.  See  the NOTICE  file distributed
&gt; + * with  this  work  for  additional information  regarding  copyright
&gt; + * ownership.   The ASF  licenses this  file to  you under  the Apache
&gt; + * License, Version  2.0 (the  License); you may  not use  this file
&gt; + * except in  compliance with the License.   You may obtain  a copy of
&gt; + * the License at
&gt; + *
&gt; + * http://www.apache.org/licenses/LICENSE-2.0
&gt; + *
&gt; + * Unless required by applicable law or agreed to in writing, software
&gt; + * distributed under the  License is distributed on an  "AS IS" BASIS,
&gt; + * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
&gt; + * implied.   See  the License  for  the  specific language  governing
&gt; + * permissions and limitations under the License.
&gt; + *
&gt; + * Copyright 1999-2007 Rogue Wave Software, Inc.
&gt; + * 
&gt; + **************************************************************************/
&gt; +
&gt; +#if 0   // guard invalid preprocessor symbol below
&gt; +   // establish a dependency on RUNTIME_IN_STD.cpp
&gt; +#  ifndef _RWSTD_NO_RUNTIME_IN_STD
&gt; +#  endif   // _RWSTD_NO_RUNTIME_IN_STD
&gt; +#endif   // 0
&gt; +
&gt; +#define TEST_DTOR
&gt; +#define bad_alloc runtime_error
&gt; +#define main      test_runtime_error_dtor
&gt; +#include "BAD_ALLOC_ASSIGNMENT.cpp"
&gt; +#undef main
&gt; +
&gt; +int main (int argc, char *argv[])
&gt; +{
&gt; +    return test_runtime_error_dtor (argc, argv);
&gt; +}
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/RUNTIME_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:eol-style = native
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/RUNTIME_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:keywords = Id
&gt; 
&gt; Added: stdcxx/branches/4.2.x/etc/config/src/UNDERFLOW_ERROR_DTOR.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/etc/config/src/UNDERFLOW_ERROR_DTOR.cpp?rev=777603&amp;view=auto
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/etc/config/src/UNDERFLOW_ERROR_DTOR.cpp (added)
&gt; +++ stdcxx/branches/4.2.x/etc/config/src/UNDERFLOW_ERROR_DTOR.cpp Fri May 22 16:30:22
2009
&gt; @@ -0,0 +1,40 @@
&gt; +// checking for underflow_error dtor
&gt; +
&gt; +/***************************************************************************
&gt; + *
&gt; + * Licensed to the Apache Software  Foundation (ASF) under one or more
&gt; + * contributor  license agreements.  See  the NOTICE  file distributed
&gt; + * with  this  work  for  additional information  regarding  copyright
&gt; + * ownership.   The ASF  licenses this  file to  you under  the Apache
&gt; + * License, Version  2.0 (the  License); you may  not use  this file
&gt; + * except in  compliance with the License.   You may obtain  a copy of
&gt; + * the License at
&gt; + *
&gt; + * http://www.apache.org/licenses/LICENSE-2.0
&gt; + *
&gt; + * Unless required by applicable law or agreed to in writing, software
&gt; + * distributed under the  License is distributed on an  "AS IS" BASIS,
&gt; + * WITHOUT  WARRANTIES OR CONDITIONS  OF ANY  KIND, either  express or
&gt; + * implied.   See  the License  for  the  specific language  governing
&gt; + * permissions and limitations under the License.
&gt; + *
&gt; + * Copyright 1999-2007 Rogue Wave Software, Inc.
&gt; + * 
&gt; + **************************************************************************/
&gt; +
&gt; +#if 0   // guard invalid preprocessor symbol below
&gt; +   // establish a dependency on RUNTIME_IN_STD.cpp
&gt; +#  ifndef _RWSTD_NO_RUNTIME_IN_STD
&gt; +#  endif   // _RWSTD_NO_RUNTIME_IN_STD
&gt; +#endif   // 0
&gt; +
&gt; +#define TEST_DTOR
&gt; +#define bad_alloc underflow_error
&gt; +#define main      test_underflow_error_dtor
&gt; +#include "BAD_ALLOC_ASSIGNMENT.cpp"
&gt; +#undef main
&gt; +
&gt; +int main (int argc, char *argv[])
&gt; +{
&gt; +    return test_underflow_error_dtor (argc, argv);
&gt; +}
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/UNDERFLOW_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:eol-style = native
&gt; 
&gt; Propchange: stdcxx/branches/4.2.x/etc/config/src/UNDERFLOW_ERROR_DTOR.cpp
&gt; ------------------------------------------------------------------------------
&gt;     svn:keywords = Id
&gt; 
&gt; Modified: stdcxx/branches/4.2.x/src/domain_error.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/src/domain_error.cpp?rev=777603&amp;r1=777602&amp;r2=777603&amp;view=diff
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/src/domain_error.cpp (original)
&gt; +++ stdcxx/branches/4.2.x/src/domain_error.cpp Fri May 22 16:30:22 2009
&gt; @@ -32,6 +32,8 @@
&gt;  
&gt;  _RWSTD_NAMESPACE (std) {
&gt;  
&gt; +#ifdef _RWSTD_NO_DOMAIN_ERROR_DTOR
&gt; +
&gt;  // outlined to avoid generating a vtable in each translation unit
&gt;  // that uses the class
&gt;  /* virtual */ domain_error::
&gt; @@ -40,4 +42,6 @@
&gt;      // no-op
&gt;  }
&gt;  
&gt; +#endif   // _RWSTD_NO_DOMAIN_ERROR_DTOR
&gt; +
&gt;  }   // namespace std
&gt; 
&gt; Modified: stdcxx/branches/4.2.x/src/invalid_argument.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/src/invalid_argument.cpp?rev=777603&amp;r1=777602&amp;r2=777603&amp;view=diff
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/src/invalid_argument.cpp (original)
&gt; +++ stdcxx/branches/4.2.x/src/invalid_argument.cpp Fri May 22 16:30:22 2009
&gt; @@ -32,6 +32,8 @@
&gt;  
&gt;  _RWSTD_NAMESPACE (std) {
&gt;  
&gt; +#ifdef _RWSTD_NO_INVALID_ARGUMENT_DTOR
&gt; +
&gt;  // outlined to avoid generating a vtable in each translation unit
&gt;  // that uses the class
&gt;  /* virtual */ invalid_argument::
&gt; @@ -40,4 +42,6 @@
&gt;      // no-op
&gt;  }
&gt;  
&gt; +#endif   // _RWSTD_NO_INVALID_ARGUMENT_DTOR
&gt; +
&gt;  }   // namespace std
&gt; 
&gt; Modified: stdcxx/branches/4.2.x/src/length_error.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/src/length_error.cpp?rev=777603&amp;r1=777602&amp;r2=777603&amp;view=diff
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/src/length_error.cpp (original)
&gt; +++ stdcxx/branches/4.2.x/src/length_error.cpp Fri May 22 16:30:22 2009
&gt; @@ -32,6 +32,8 @@
&gt;  
&gt;  _RWSTD_NAMESPACE (std) {
&gt;  
&gt; +#ifdef _RWSTD_NO_LENGTH_ERROR_DTOR
&gt; +
&gt;  // outlined to avoid generating a vtable in each translation unit
&gt;  // that uses the class
&gt;  /* virtual */ length_error::
&gt; @@ -40,4 +42,6 @@
&gt;      // no-op
&gt;  }
&gt;  
&gt; +#endif   // _RWSTD_NO_LENGTH_ERROR_DTOR
&gt; +
&gt;  }   // namespace std
&gt; 
&gt; Modified: stdcxx/branches/4.2.x/src/logic_error.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/src/logic_error.cpp?rev=777603&amp;r1=777602&amp;r2=777603&amp;view=diff
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/src/logic_error.cpp (original)
&gt; +++ stdcxx/branches/4.2.x/src/logic_error.cpp Fri May 22 16:30:22 2009
&gt; @@ -32,6 +32,8 @@
&gt;  
&gt;  _RWSTD_NAMESPACE (std) {
&gt;  
&gt; +#ifdef _RWSTD_NO_LOGIC_ERROR_DTOR
&gt; +
&gt;  // outlined to avoid generating a vtable in each translation unit
&gt;  // that uses the class
&gt;  /* virtual */ logic_error::
&gt; @@ -40,4 +42,6 @@
&gt;      // no-op
&gt;  }
&gt;  
&gt; +#endif   // _RWSTD_NO_LOGIC_ERROR_DTOR
&gt; +
&gt;  }   // namespace std
&gt; 
&gt; Modified: stdcxx/branches/4.2.x/src/out_of_range.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/src/out_of_range.cpp?rev=777603&amp;r1=777602&amp;r2=777603&amp;view=diff
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/src/out_of_range.cpp (original)
&gt; +++ stdcxx/branches/4.2.x/src/out_of_range.cpp Fri May 22 16:30:22 2009
&gt; @@ -32,6 +32,8 @@
&gt;  
&gt;  _RWSTD_NAMESPACE (std) {
&gt;  
&gt; +#ifdef _RWSTD_NO_OUT_OF_RANGE_DTOR
&gt; +
&gt;  // outlined to avoid generating a vtable in each translation unit
&gt;  // that uses the class
&gt;  /* virtual */ out_of_range::
&gt; @@ -40,4 +42,6 @@
&gt;      // no-op
&gt;  }
&gt;  
&gt; +#endif   // _RWSTD_NO_OUT_OF_RANGE_DTOR
&gt; +
&gt;  }   // namespace std
&gt; 
&gt; Modified: stdcxx/branches/4.2.x/src/overflow_error.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/src/overflow_error.cpp?rev=777603&amp;r1=777602&amp;r2=777603&amp;view=diff
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/src/overflow_error.cpp (original)
&gt; +++ stdcxx/branches/4.2.x/src/overflow_error.cpp Fri May 22 16:30:22 2009
&gt; @@ -32,6 +32,8 @@
&gt;  
&gt;  _RWSTD_NAMESPACE (std) {
&gt;  
&gt; +#ifdef _RWSTD_NO_OVERFLOW_ERROR_DTOR
&gt; +
&gt;  // outlined to avoid generating a vtable in each translation unit
&gt;  // that uses the class
&gt;  /* virtual */ overflow_error::
&gt; @@ -40,4 +42,6 @@
&gt;      // no-op
&gt;  }
&gt;  
&gt; +#endif   // _RWSTD_NO_OVERFLOW_ERROR_DTOR
&gt; +
&gt;  }   // namespace std
&gt; 
&gt; Modified: stdcxx/branches/4.2.x/src/range_error.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/src/range_error.cpp?rev=777603&amp;r1=777602&amp;r2=777603&amp;view=diff
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/src/range_error.cpp (original)
&gt; +++ stdcxx/branches/4.2.x/src/range_error.cpp Fri May 22 16:30:22 2009
&gt; @@ -32,6 +32,8 @@
&gt;  
&gt;  _RWSTD_NAMESPACE (std) {
&gt;  
&gt; +#ifdef _RWSTD_NO_RANGE_ERROR_DTOR
&gt; +
&gt;  // outlined to avoid generating a vtable in each translation unit
&gt;  // that uses the class
&gt;  /* virtual */ range_error::
&gt; @@ -40,4 +42,6 @@
&gt;      // no-op
&gt;  }
&gt;  
&gt; +#endif   // _RWSTD_NO_RANGE_ERROR_DTOR
&gt; +
&gt;  }   // namespace std
&gt; 
&gt; Modified: stdcxx/branches/4.2.x/src/runtime_error.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/src/runtime_error.cpp?rev=777603&amp;r1=777602&amp;r2=777603&amp;view=diff
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/src/runtime_error.cpp (original)
&gt; +++ stdcxx/branches/4.2.x/src/runtime_error.cpp Fri May 22 16:30:22 2009
&gt; @@ -32,6 +32,8 @@
&gt;  
&gt;  _RWSTD_NAMESPACE (std) {
&gt;  
&gt; +#ifdef _RWSTD_NO_RUNTIME_ERROR_DTOR
&gt; +
&gt;  // outlined to avoid generating a vtable in each translation unit
&gt;  // that uses the class
&gt;  /* virtual */ runtime_error::
&gt; @@ -40,4 +42,6 @@
&gt;      // no-op
&gt;  }
&gt;  
&gt; +#endif   // _RWSTD_NO_RUNTIME_ERROR_DTOR
&gt; +
&gt;  }   // namespace std
&gt; 
&gt; Modified: stdcxx/branches/4.2.x/src/underflow_error.cpp
&gt; URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/src/underflow_error.cpp?rev=777603&amp;r1=777602&amp;r2=777603&amp;view=diff
&gt; ==============================================================================
&gt; --- stdcxx/branches/4.2.x/src/underflow_error.cpp (original)
&gt; +++ stdcxx/branches/4.2.x/src/underflow_error.cpp Fri May 22 16:30:22 2009
&gt; @@ -32,6 +32,8 @@
&gt;  
&gt;  _RWSTD_NAMESPACE (std) {
&gt;  
&gt; +#ifdef _RWSTD_NO_UNDERFLOW_ERROR_DTOR
&gt; +
&gt;  // outlined to avoid generating a vtable in each translation unit
&gt;  // that uses the class
&gt;  /* virtual */ underflow_error::
&gt; @@ -40,4 +42,6 @@
&gt;      // no-op
&gt;  }
&gt;  
&gt; +#endif   // _RWSTD_NO_UNDERFLOW_ERROR_DTOR
&gt; +
&gt;  }   // namespace std
&gt; 
&gt; 



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: tellp()</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200905.mbox/%3c4A0A142B.50004@gmail.com%3e"/>
<id>urn:uuid:%3c4A0A142B-50004@gmail-com%3e</id>
<updated>2009-05-13T00:28:27Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
[CC'ing dev@stdcxx.apache.org]

Steve Clamage wrote:
&gt; I have a bug report where the customer expects to open a file for 
&gt; appending, and have tellp() pointing to EOF before doing anything else. 
&gt; Sample program:
&gt; 
&gt; mytest.cc
&gt; ---------
&gt; #include &lt;iostream&gt;
&gt; #include &lt;fstream&gt;
&gt; using namespace std;
&gt; 
&gt; int main(int argc, char** argv)
&gt; {
&gt;     if(argc != 2)
&gt;     {
&gt;         printf("Wrong nums of arguments\n");
&gt;         return 1;
&gt;     }
&gt;     ofstream ofs;
&gt;     ofs.open(argv[1], ios::out|ios::app);
&gt;     cout &lt;&lt; "tellp(): " &lt;&lt; ofs.tellp() &lt;&lt; '\n';
&gt; }
&gt; 
&gt; % ls -l zout
&gt;  -rw-rw-r--    1 clamage  staff         347 May 12 07:49 zout
&gt; % CC mystest.cc
&gt; % a.out zout
&gt; tellp():0
&gt; 
&gt; The customer expects 347 in this example. Is that a correct expectation?
&gt; libCstd, STLport, and stdcxx all print 0, but g++ prints 347.

I'm not sure the standard is 100% clear on this. Here's why:

     tellp() calls rdbuf()-&gt;pubseekoff(0, ios::cur, ios::out), which
     calls seekoff() with the same arguments.

     filebuf::seekoff(0, ios::cur, ios::out) calls fseek(file, 0,
     SEEK_CUR).

So far so good. The problem is the Returns clause for seekoff():

     Returns: a newly constructed pos_type object that stores the
     resultant stream position, if possible. If the positioning
     operation fails, or if the object cannot represent the resultant
     stream position, returns pos_type(off_type(-1)).

This doesn't say where the resultant position comes from:

  *  Is it the value obtained by calling ftell(file)? If so,
     ftell() returns the position of the end of the file.
  *  Is the value obtained using some other mechanism, such as
     "as if" by calling lseek(fileno(file), 0, SEEK_CUR)? If so,
     lseek() returns 0.
  *  Is the value calculated using some other algorithm? If so,
     which one?

I enhanced the program to show the behavior of C stdio and UNIX I/O.
See below. I think we should open an new issue to clarify what the
spec means.

Btw., calling lseek(fileno(file), 0, SEEK_CUR) on the underlying
FILE itself does actually return the same value as tellp(). It's
when filebuf is implemented in terms of POSIX streams as opposed
to stdio that we get this different behavior.

Martin

#include &lt;cstdio&gt;
#include &lt;iostream&gt;
#include &lt;fstream&gt;

#include &lt;fcntl.h&gt;
#include &lt;unistd.h&gt;

using namespace std;

int main(int argc, char** argv)
{
     if(argc != 2)
     {
         printf("Wrong nums of arguments\n");
         return 1;
     }
     ofstream ofs;
     ofs.open(argv[1], ios::out|ios::app);
     cout &lt;&lt; "tellp(): " &lt;&lt; ofs.tellp() &lt;&lt; '\n';

     FILE *fp = fopen (argv [1], "a");
     cout &lt;&lt; "ftell(): " &lt;&lt; (fp ? ftell (fp) : -1) &lt;&lt; '\n';

     int fd = open (argv [1], O_WRONLY | O_APPEND);
     cout &lt;&lt; "lseek(): " &lt;&lt; lseek (fd, 0, SEEK_CUR) &lt;&lt; '\n';
}

The output with stdcxx is:

tellp(): 0
ftell(): 567
lseek(): 0

&gt; 
&gt; 
&gt; ---
&gt; Steve Clamage, stephen.clamage@sun.com



</pre>
</div>
</content>
</entry>
<entry>
<title>RE: Problem building Standard Library</title>
<author><name>&quot;Jeremy Dean&quot; &lt;Jeremy.Dean@roguewave.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200905.mbox/%3cCFFDD219128FD94FB4F92B99F52D0A49030EB339@exchmail01.Blue.Roguewave.Com%3e"/>
<id>urn:uuid:%3cCFFDD219128FD94FB4F92B99F52D0A49030EB339@exchmail01-Blue-Roguewave-Com%3e</id>
<updated>2009-05-08T15:54:01Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
An update on this issue: I asked the customer for a preprocessed file so
I can see what headers are being include, etc.

 Turns out that on this platform the include/ansi is needed and the
customer was not including it.  Therefore when the customer was
including the c headers they were getting them from the wrong location.

Jeremy 

-----Original Message-----
From: Farid Zaripov [mailto:faridz@apache.org] 
Sent: Thursday, May 07, 2009 8:51 AM
To: dev@stdcxx.apache.org
Subject: RE: Problem building Standard Library

&gt; Turns out they are not getting this error when building the library 
&gt; but when they are building their application and using the Standard
Library.
&gt; 
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:176:
error:
&gt; '_RWSTD_SEEK_SET' was not declared in this scope
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:177:
error:
&gt; '_RWSTD_SEEK_CUR' was not declared in this scope
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:178:
error:
&gt; '_RWSTD_SEEK_END' was not declared in this scope
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:82:
error:
&gt; '_RWSTD_PTRDIFF_T' does not name a type
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:93:
error:
&gt; '_RWSTD_PTRDIFF_T' does not name a type
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:104:
&gt; error: expected type-specifier before '_RWSTD_PTRDIFF_T' 
&gt; 
&gt; Any ideas?

  It looks like their application has its own config.h file, which is
included instead of our library header file.

  Martin, perhaps it worth to put some predefined macro in our config.h
file at configuration step and check that macro in &lt;rw/_config.h&gt; header
right after the &lt;config.h&gt; included. Then if the macro above is not
defined, issue #error with descriptive reason, something like "Not
STDCXX's config.h file is included.
Check that path to the STDCXX's config.h file is first in the list of
include directories."

Farid.



</pre>
</div>
</content>
</entry>
<entry>
<title>RE: Problem building Standard Library</title>
<author><name>&quot;Farid Zaripov&quot; &lt;faridz@apache.org&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200905.mbox/%3c9A22FC6894F64CA4A2A727715EA04AD6@kyiv.epam.com%3e"/>
<id>urn:uuid:%3c9A22FC6894F64CA4A2A727715EA04AD6@kyiv-epam-com%3e</id>
<updated>2009-05-07T14:51:18Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
&gt; Turns out they are not getting this error when building the library but
&gt; when they are building their application and using the Standard Library.
&gt; 
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:176: error:
&gt; '_RWSTD_SEEK_SET' was not declared in this scope
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:177: error:
&gt; '_RWSTD_SEEK_CUR' was not declared in this scope
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:178: error:
&gt; '_RWSTD_SEEK_END' was not declared in this scope
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:82: error:
&gt; '_RWSTD_PTRDIFF_T' does not name a type
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:93: error:
&gt; '_RWSTD_PTRDIFF_T' does not name a type
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:104:
&gt; error: expected type-specifier before '_RWSTD_PTRDIFF_T' 
&gt; 
&gt; Any ideas?

  It looks like their application has its own config.h file, which is
included instead of our library header file.

  Martin, perhaps it worth to put some predefined macro in our config.h file
at
configuration step and check that macro in &lt;rw/_config.h&gt; header right after
the &lt;config.h&gt; included. Then if the macro above is not defined, issue
#error
with descriptive reason, something like "Not STDCXX's config.h file is
included.
Check that path to the STDCXX's config.h file is first in the list of
include
directories."

Farid.



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Problem building Standard Library</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200905.mbox/%3c4A01A601.4070401@gmail.com%3e"/>
<id>urn:uuid:%3c4A01A601-4070401@gmail-com%3e</id>
<updated>2009-05-06T15:00:17Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Jeremy Dean wrote:
&gt; Turns out they are not getting this error when building the library but
&gt; when they are building their application and using the Standard Library.
&gt; 
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:176: error:
&gt; '_RWSTD_SEEK_SET' was not declared in this scope
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:177: error:
&gt; '_RWSTD_SEEK_CUR' was not declared in this scope
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:178: error:
&gt; '_RWSTD_SEEK_END' was not declared in this scope
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:82: error:
&gt; '_RWSTD_PTRDIFF_T' does not name a type
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:93: error:
&gt; '_RWSTD_PTRDIFF_T' does not name a type
&gt; /illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:104:
&gt; error: expected type-specifier before '_RWSTD_PTRDIFF_T' 
&gt; 
&gt; Any ideas?

The library wouldn't build w/o these macros defined either. There
must be something wrong with their setup. Again, to be able to tell
what it might be we need to see the full log of the failed build
(i.e., the command line arguments to the compiler and all errors).

Martin

&gt; 
&gt; Jeremy
&gt; 
&gt; -----Original Message-----
&gt; From: Martin Sebor [mailto:msebor@gmail.com] 
&gt; Sent: Friday, May 01, 2009 9:13 AM
&gt; To: dev@stdcxx.apache.org
&gt; Subject: Re: Problem building Standard Library
&gt; 
&gt; Jeremy Dean wrote:
&gt;&gt;  
&gt;&gt;  
&gt;&gt; I have a customer on Suse Linux 10update2 that is trying to build 
&gt;&gt; apache Standard Library stdcxx-4.2.1.1 (Sourcepro edition 10 update 
&gt;&gt; 1).  They are getting the error described in
&gt;&gt; http://issues.apache.org/jira/browse/STDCXX-1029
&gt;&gt;  
&gt;&gt; I recommended that customer reinstall Suse Linux 10.0 as that what was
&gt; 
&gt;&gt; certified.  Here are the steps they took, but are still getting the 
&gt;&gt; error described:
&gt;&gt;
&gt;&gt; We reinstalled Suse Linux 10.2 without GCC 4.1.2. I then installed GCC
&gt; 
&gt;&gt; 4.1.0 from the given website. Afterwards, I reinstalled the latest 
&gt;&gt; version of SourcePro and built it.
&gt;&gt; When we tried building our library again, we still get the 
&gt;&gt; _RWSTD_SEEK_SET compile error. So we are using everything as 
&gt;&gt; recommended, but the issue still exists. Can you help?
&gt; 
&gt; STDCXX-1029 turned out to be invalid. It was caused by using an
&gt; installation of gcc configured for another system. As Jakub Jelinek
&gt; explains in his comment on gcc bug 37405
&gt;    http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37405
&gt; gcc must be used on the platform it's configured for. Unless there is a
&gt; good reason to do otherwise, it's usually best to use the default
&gt; version of gcc that comes with the system.
&gt; 
&gt; That said, it's also possible that the error is due to some other
&gt; underlying problem. In order to be able to tell, I'd need to see the
&gt; actual error (i.e., the build log for the library as well as the
&gt; contents of $BUILDDIR/include/config.log).
&gt; 
&gt; Martin
&gt; 
&gt;&gt; Thanks,
&gt;&gt;
&gt;&gt;  
&gt;&gt;
&gt;&gt; Jeremy
&gt;&gt;
&gt;&gt; Jeremy Dean
&gt;&gt; Rogue Wave Software, Inc.
&gt;&gt; Technical Support
&gt;&gt; Phone: 303-545-3205 -- 1-800-404-4767
&gt;&gt; E-mail: support@roguewave.com
&gt;&gt; Web: http://www.roguewave.com/support Knowledge Base entries:
&gt;&gt; http://www.roguewave.com/kbdocs/search.html
&gt;&gt; View issues online at: 
&gt;&gt; http://www.roguewave.com/youraccount/login/
&gt;&gt;
&gt; 
&gt; 



</pre>
</div>
</content>
</entry>
<entry>
<title>RE: Problem building Standard Library</title>
<author><name>&quot;Jeremy Dean&quot; &lt;Jeremy.Dean@roguewave.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200905.mbox/%3cCFFDD219128FD94FB4F92B99F52D0A49030EB32D@exchmail01.Blue.Roguewave.Com%3e"/>
<id>urn:uuid:%3cCFFDD219128FD94FB4F92B99F52D0A49030EB32D@exchmail01-Blue-Roguewave-Com%3e</id>
<updated>2009-05-06T13:42:33Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Turns out they are not getting this error when building the library but
when they are building their application and using the Standard Library.

/illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:176: error:
'_RWSTD_SEEK_SET' was not declared in this scope
/illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:177: error:
'_RWSTD_SEEK_CUR' was not declared in this scope
/illustrate/iplus/source/rw_buildspace/include/rw/_iosfwd.h:178: error:
'_RWSTD_SEEK_END' was not declared in this scope
/illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:82: error:
'_RWSTD_PTRDIFF_T' does not name a type
/illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:93: error:
'_RWSTD_PTRDIFF_T' does not name a type
/illustrate/iplus/source/rw_buildspace/include/rw/_iterbase.h:104:
error: expected type-specifier before '_RWSTD_PTRDIFF_T' 

Any ideas?

Jeremy

-----Original Message-----
From: Martin Sebor [mailto:msebor@gmail.com] 
Sent: Friday, May 01, 2009 9:13 AM
To: dev@stdcxx.apache.org
Subject: Re: Problem building Standard Library

Jeremy Dean wrote:
&gt;  
&gt;  
&gt; I have a customer on Suse Linux 10update2 that is trying to build 
&gt; apache Standard Library stdcxx-4.2.1.1 (Sourcepro edition 10 update 
&gt; 1).  They are getting the error described in
&gt; http://issues.apache.org/jira/browse/STDCXX-1029
&gt;  
&gt; I recommended that customer reinstall Suse Linux 10.0 as that what was

&gt; certified.  Here are the steps they took, but are still getting the 
&gt; error described:
&gt; 
&gt; We reinstalled Suse Linux 10.2 without GCC 4.1.2. I then installed GCC

&gt; 4.1.0 from the given website. Afterwards, I reinstalled the latest 
&gt; version of SourcePro and built it.
&gt; When we tried building our library again, we still get the 
&gt; _RWSTD_SEEK_SET compile error. So we are using everything as 
&gt; recommended, but the issue still exists. Can you help?

STDCXX-1029 turned out to be invalid. It was caused by using an
installation of gcc configured for another system. As Jakub Jelinek
explains in his comment on gcc bug 37405
   http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37405
gcc must be used on the platform it's configured for. Unless there is a
good reason to do otherwise, it's usually best to use the default
version of gcc that comes with the system.

That said, it's also possible that the error is due to some other
underlying problem. In order to be able to tell, I'd need to see the
actual error (i.e., the build log for the library as well as the
contents of $BUILDDIR/include/config.log).

Martin

&gt; 
&gt; Thanks,
&gt; 
&gt;  
&gt; 
&gt; Jeremy
&gt; 
&gt; Jeremy Dean
&gt; Rogue Wave Software, Inc.
&gt; Technical Support
&gt; Phone: 303-545-3205 -- 1-800-404-4767
&gt; E-mail: support@roguewave.com
&gt; Web: http://www.roguewave.com/support Knowledge Base entries:
&gt; http://www.roguewave.com/kbdocs/search.html
&gt; View issues online at: 
&gt; http://www.roguewave.com/youraccount/login/
&gt; 



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Problem building Standard Library</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200905.mbox/%3c49FB1172.4030508@gmail.com%3e"/>
<id>urn:uuid:%3c49FB1172-4030508@gmail-com%3e</id>
<updated>2009-05-01T15:12:50Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Jeremy Dean wrote:
&gt;  
&gt;  
&gt; I have a customer on Suse Linux 10update2 that is trying to build apache
&gt; Standard Library stdcxx-4.2.1.1 (Sourcepro edition 10 update 1).  They
&gt; are getting the error described in
&gt; http://issues.apache.org/jira/browse/STDCXX-1029
&gt;  
&gt; I recommended that customer reinstall Suse Linux 10.0 as that what was
&gt; certified.  Here are the steps they took, but are still getting the
&gt; error described:
&gt; 
&gt; We reinstalled Suse Linux 10.2 without GCC 4.1.2. I then installed GCC
&gt; 4.1.0 from the given website. Afterwards, I reinstalled the latest
&gt; version of SourcePro and built it.
&gt; When we tried building our library again, we still get the
&gt; _RWSTD_SEEK_SET compile error. So we are using everything as
&gt; recommended, but the issue still exists. Can you help?

STDCXX-1029 turned out to be invalid. It was caused by using
an installation of gcc configured for another system. As Jakub
Jelinek explains in his comment on gcc bug 37405
   http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37405
gcc must be used on the platform it's configured for. Unless
there is a good reason to do otherwise, it's usually best to
use the default version of gcc that comes with the system.

That said, it's also possible that the error is due to some
other underlying problem. In order to be able to tell, I'd
need to see the actual error (i.e., the build log for the
library as well as the contents of $BUILDDIR/include/config.log).

Martin

&gt; 
&gt; Thanks,
&gt; 
&gt;  
&gt; 
&gt; Jeremy
&gt; 
&gt; Jeremy Dean 
&gt; Rogue Wave Software, Inc.
&gt; Technical Support 
&gt; Phone: 303-545-3205 -- 1-800-404-4767 
&gt; E-mail: support@roguewave.com 
&gt; Web: http://www.roguewave.com/support 
&gt; Knowledge Base entries: 
&gt; http://www.roguewave.com/kbdocs/search.html 
&gt; View issues online at: 
&gt; http://www.roguewave.com/youraccount/login/
&gt; 



</pre>
</div>
</content>
</entry>
<entry>
<title>Problem building Standard Library</title>
<author><name>&quot;Jeremy Dean&quot; &lt;Jeremy.Dean@roguewave.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200905.mbox/%3cCFFDD219128FD94FB4F92B99F52D0A49030EB322@exchmail01.Blue.Roguewave.Com%3e"/>
<id>urn:uuid:%3cCFFDD219128FD94FB4F92B99F52D0A49030EB322@exchmail01-Blue-Roguewave-Com%3e</id>
<updated>2009-05-01T10:41:40Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
 
 
I have a customer on Suse Linux 10update2 that is trying to build apache
Standard Library stdcxx-4.2.1.1 (Sourcepro edition 10 update 1).  They
are getting the error described in
http://issues.apache.org/jira/browse/STDCXX-1029
 
I recommended that customer reinstall Suse Linux 10.0 as that what was
certified.  Here are the steps they took, but are still getting the
error described:

We reinstalled Suse Linux 10.2 without GCC 4.1.2. I then installed GCC
4.1.0 from the given website. Afterwards, I reinstalled the latest
version of SourcePro and built it.
When we tried building our library again, we still get the
_RWSTD_SEEK_SET compile error. So we are using everything as
recommended, but the issue still exists. Can you help?

Thanks,

 

Jeremy

Jeremy Dean 
Rogue Wave Software, Inc.
Technical Support 
Phone: 303-545-3205 -- 1-800-404-4767 
E-mail: support@roguewave.com 
Web: http://www.roguewave.com/support 
Knowledge Base entries: 
http://www.roguewave.com/kbdocs/search.html 
View issues online at: 
http://www.roguewave.com/youraccount/login/


</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Map error</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200902.mbox/%3c49A1F432.3090008@gmail.com%3e"/>
<id>urn:uuid:%3c49A1F432-3090008@gmail-com%3e</id>
<updated>2009-02-23T00:56:18Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Jeremy Dean wrote:
&gt; I have a customer that getting the following error when trying to
&gt; compile his code:
&gt;  
&gt; Platform: Solaris 9
&gt; Compiler: SunPro 5.9
&gt; Build: Multithreaded-Debug-shared
&gt;  
&gt; Error Message:
&gt; "include/map", line 206: Error: second is not a member of RWCString.
&gt; "GOCC_GuiPref.cc", line 93:     Where: While instantiating
&gt; "std::map&lt;RWCString, GOCC_WinPref*, std::less&lt;RWCString&gt;,
&gt; std::allocator&lt;RWCString&gt;&gt;::operator[](const RWCString&amp;)".

This doesn't look like a valid specialization of std::map. The
template is declared like so:

   template &lt;class Key, class T,
             class Compare = less&lt;Key&gt;,
             class Allocator = allocator&lt;pair&lt;const Key, T&gt; &gt; &gt;
   class map;

I.e., the type of map from RWCString to GOCC_WinPref* is:

   map&lt;RWCString, GOCC_WinPref*,
       less&lt;RWCString&gt;,
       allocator&lt;pair&lt;const RWCString, GOCC_WinPref*&gt; &gt; &gt;;

Note that allocator is specialized on

   pair&lt;const RWCString, GOCC_WinPref*&gt;.

Martin

&gt;  
&gt; Code:
&gt; Line 206 of Map looks like this:
&gt;     mapped_type&amp; operator[] (const key_type &amp;__k) {
&gt;         // note: temporary is necessary to avoid an xlC 5.0 bug (PR
&gt; #25040)
&gt;         iterator __i = insert (value_type (__k, mapped_type ())).first;
&gt;         return (*__i).second;
&gt;     }
&gt;  
&gt; Jeremy
&gt; 
&gt; 



</pre>
</div>
</content>
</entry>
<entry>
<title>Map error</title>
<author><name>&quot;Jeremy Dean&quot; &lt;Jeremy.Dean@roguewave.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200902.mbox/%3cCFFDD219128FD94FB4F92B99F52D0A49015E5AE5@exchmail01.Blue.Roguewave.Com%3e"/>
<id>urn:uuid:%3cCFFDD219128FD94FB4F92B99F52D0A49015E5AE5@exchmail01-Blue-Roguewave-Com%3e</id>
<updated>2009-02-18T20:51:25Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
I have a customer that getting the following error when trying to
compile his code:
 
Platform: Solaris 9
Compiler: SunPro 5.9
Build: Multithreaded-Debug-shared
 
Error Message:
"include/map", line 206: Error: second is not a member of RWCString.
"GOCC_GuiPref.cc", line 93:     Where: While instantiating
"std::map&lt;RWCString, GOCC_WinPref*, std::less&lt;RWCString&gt;,
std::allocator&lt;RWCString&gt;&gt;::operator[](const RWCString&amp;)".
 
Code:
Line 206 of Map looks like this:
    mapped_type&amp; operator[] (const key_type &amp;__k) {
        // note: temporary is necessary to avoid an xlC 5.0 bug (PR
#25040)
        iterator __i = insert (value_type (__k, mapped_type ())).first;
        return (*__i).second;
    }
 
Jeremy



</pre>
</div>
</content>
</entry>
<entry>
<title>[Fwd: [Travel Assistance] Applications for ApacheCon EU 2009 - Now Open]</title>
<author><name>Martin Sebor &lt;sebor@apache.org&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200901.mbox/%3c497CEB0C.9010304@apache.org%3e"/>
<id>urn:uuid:%3c497CEB0C-9010304@apache-org%3e</id>
<updated>2009-01-25T22:43:24Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
-------- Original Message --------
Subject: [Travel Assistance] Applications for ApacheCon EU 2009 - Now Open
Date: Fri, 23 Jan 2009 13:28:19 +0000
From: Tony Stevenson &lt;pctony@apache.org&gt;
To: travel-assistance@apache.org



The Travel Assistance Committee is now accepting applications for those
wanting to attend ApacheCon EU 2009 between the 23rd and 27th March 2009
in Amsterdam.

The Travel Assistance Committee is looking for people who would like to
be able to attend ApacheCon EU 2009 who need some financial support in
order to get there. There are very few places available and the criteria
is high, that aside applications are open to all open source developers
who feel that their attendance would benefit themselves, their
project(s), the ASF or open source in general.

Financial assistance is available for travel, accommodation and entrance
fees either in full or in part, depending on circumstances. It is
intended that all our ApacheCon events are covered, so it may be prudent
for those in the United States or Asia to wait until an event closer to
them comes up - you are all welcome to apply for ApacheCon EU of course,
but there must be compelling reasons for you to attend an event further
away that your home location for your application to be considered above
those closer to the event location.

More information can be found on the main Apache website at
http://www.apache.org/travel/index.html - where you will also find a
link to the online application form.

Time is very tight for this event, so applications are open now and will
end on the 4th February 2009 - to give enough time for travel
arrangements to be made.

Good luck to all those that apply.


Regards,
The Travel Assistance Committee
-- 




------------------------------------------------------------------
Tony Stevenson
tony@pc-tony.com  //  pctony@apache.org  // pctony@freenode.net
http://blog.pc-tony.com/

1024D/51047D66 ECAF DC55 C608 5E82 0B5E  3359 C9C7 924E 5104 7D66
------------------------------------------------------------------




</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Outdated nightly builds results on apache.org</title>
<author><name>Martin Sebor &lt;sebor@roguewave.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200901.mbox/%3c21282005.post@talk.nabble.com%3e"/>
<id>urn:uuid:%3c21282005-post@talk-nabble-com%3e</id>
<updated>2009-01-04T22:11:18Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>

An update on the results: they are now current, but all testsuite builds
fail with errors in the Rogue Wave test driver file lockfile.cpp (see
below). I've just committed a fix for this error so once it's picked up
by the nightly test infrastructure we should start seeing some hopefully
more useful build results, probably sometime tomorrow.

$(TOPDIR)/tests/src/lockfile.cpp: In destructor 'virtual
RWQELockFile::~RWQELockFile()':
$(TOPDIR)/tests/src/lockfile.cpp:161: error: 'free' was not declared in this
scope
$(TOPDIR)/tests/src/lockfile.cpp: In member function 'void
RWQELockFile::copyName(const char*)':
$(TOPDIR)/tests/src/lockfile.cpp:218: error: 'malloc' was not declared in
this scope
gmake: *** [lockfile.o] Error 1

Martin Sebor wrote:
&gt; 
&gt; 
&gt; Andrew Black-5 wrote:
&gt;&gt; 
&gt;&gt; Greetings Martin
&gt;&gt; 
&gt;&gt; I took a glance at the logs for the 4.2.x exports, and observe the
&gt;&gt; following error message:
&gt;&gt; 
&gt;&gt; /usr/bin/scp: Argument list too long
&gt;&gt; 
&gt;&gt; This particular message is generated when the exporter script attempts
&gt;&gt; to copy the generated files out to Apache.  The solution as I see it
&gt;&gt; will be to manually perform the export, splitting the export list into
&gt;&gt; pieces to avoid overloading scp.  You'll then need to manually update
&gt;&gt; the cache file as is done at the end of static_export.sh.
&gt;&gt; 
&gt;&gt; 
&gt; 
&gt; It turns out that cleaning out the $HOME/.stdcxx-cache/4.2.x directory
&gt; and re-running the $HOME/bin/pubres.sh script fixed the problem. There
&gt; were over 30,000 files in the directory, nearly half of them empty. All
&gt; the empty ones were from sometime in September. There still are a bunch
&gt; of them in $HOME/.stdcxx-cache/4.3.x although not nearly as many.
&gt; 
&gt; I'm in the process of running $HOME/bin/mkxviews on people.apache.org
&gt; now. When it's done and when the Web server picks up the changes the
&gt; 4.2.x results should be up to date. Let's keep an eye on the results
&gt; page over the next few days to make sure the problem is gone:
&gt; 
&gt; http://stdcxx.apache.org/builds/4.2.x/
&gt; 
&gt; 
&gt; 
&gt;&gt; 
&gt;&gt; --Andrew Black
&gt;&gt; 
&gt;&gt; Martin Sebor wrote:
&gt;&gt;&gt; The page has been updated but it looks like all the builds are stale
&gt;&gt;&gt; (33 days old). Let me see if I can find the time to figure out what's
&gt;&gt;&gt; going on tomorrow. If not, I'm travelling starting Wednesday so it
&gt;&gt;&gt; might need to wait until the 26th.
&gt;&gt;&gt; 
&gt;&gt;&gt; 
&gt;&gt;&gt; Martin Sebor-2 wrote:
&gt;&gt;&gt;&gt; Farid Zaripov wrote:
&gt;&gt;&gt;&gt;&gt;   The latest nightly builds report for 4.2.x branch generated
&gt;&gt;&gt;&gt;&gt; Tue Nov 11 15:00:39 UTC 2008 - over a month ago.
&gt;&gt;&gt;&gt; Weird, the others are up to date.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; [...investigating...]
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; I think I've got it. Seems that the SSL certificate had expired
&gt;&gt;&gt;&gt; and needed to be refreshed in order for svn to proceed with source
&gt;&gt;&gt;&gt; code update.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; The page is up to date now (it will take a bit for the web server
&gt;&gt;&gt;&gt; to pick it up).
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt; Martin
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;&gt; Farid.
&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;&gt;
&gt;&gt;&gt; 
&gt;&gt; 
&gt;&gt; 
&gt; 
&gt; 

-- 
View this message in context: http://www.nabble.com/Outdated-nightly-builds-results-on-apache.org-tp20976643p21282005.html
Sent from the stdcxx-dev mailing list archive at Nabble.com.



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Outdated nightly builds results on apache.org</title>
<author><name>Martin Sebor &lt;sebor@roguewave.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200901.mbox/%3c21269973.post@talk.nabble.com%3e"/>
<id>urn:uuid:%3c21269973-post@talk-nabble-com%3e</id>
<updated>2009-01-03T22:03:12Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>


Andrew Black-5 wrote:
&gt; 
&gt; Greetings Martin
&gt; 
&gt; I took a glance at the logs for the 4.2.x exports, and observe the
&gt; following error message:
&gt; 
&gt; /usr/bin/scp: Argument list too long
&gt; 
&gt; This particular message is generated when the exporter script attempts
&gt; to copy the generated files out to Apache.  The solution as I see it
&gt; will be to manually perform the export, splitting the export list into
&gt; pieces to avoid overloading scp.  You'll then need to manually update
&gt; the cache file as is done at the end of static_export.sh.
&gt; 
&gt; 

It turns out that cleaning out the $HOME/.stdcxx-cache/4.2.x directory
and re-running the $HOME/bin/pubres.sh script fixed the problem. There
were over 30,000 files in the directory, nearly half of them empty. All
the empty ones were from sometime in September. There still are a bunch
of them in $HOME/.stdcxx-cache/4.3.x although not nearly as many.

I'm in the process of running $HOME/bin/mkxviews on people.apache.org
now. When it's done and when the Web server picks up the changes the
4.2.x results should be up to date. Let's keep an eye on the results
page over the next few days to make sure the problem is gone:

http://stdcxx.apache.org/builds/4.2.x/



&gt; 
&gt; --Andrew Black
&gt; 
&gt; Martin Sebor wrote:
&gt;&gt; The page has been updated but it looks like all the builds are stale
&gt;&gt; (33 days old). Let me see if I can find the time to figure out what's
&gt;&gt; going on tomorrow. If not, I'm travelling starting Wednesday so it
&gt;&gt; might need to wait until the 26th.
&gt;&gt; 
&gt;&gt; 
&gt;&gt; Martin Sebor-2 wrote:
&gt;&gt;&gt; Farid Zaripov wrote:
&gt;&gt;&gt;&gt;   The latest nightly builds report for 4.2.x branch generated
&gt;&gt;&gt;&gt; Tue Nov 11 15:00:39 UTC 2008 - over a month ago.
&gt;&gt;&gt; Weird, the others are up to date.
&gt;&gt;&gt;
&gt;&gt;&gt; [...investigating...]
&gt;&gt;&gt;
&gt;&gt;&gt; I think I've got it. Seems that the SSL certificate had expired
&gt;&gt;&gt; and needed to be refreshed in order for svn to proceed with source
&gt;&gt;&gt; code update.
&gt;&gt;&gt;
&gt;&gt;&gt; The page is up to date now (it will take a bit for the web server
&gt;&gt;&gt; to pick it up).
&gt;&gt;&gt;
&gt;&gt;&gt; Martin
&gt;&gt;&gt;
&gt;&gt;&gt;&gt; Farid.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt;&gt;
&gt;&gt; 
&gt; 
&gt; 

-- 
View this message in context: http://www.nabble.com/Outdated-nightly-builds-results-on-apache.org-tp20976643p21269973.html
Sent from the stdcxx-dev mailing list archive at Nabble.com.



</pre>
</div>
</content>
</entry>
<entry>
<title>Re: Outdated nightly builds results on apache.org</title>
<author><name>Martin Sebor &lt;msebor@gmail.com&gt;</name></author>
<link rel="alternate" href="http://mail-archives.apache.org/mod_mbox/stdcxx-dev/200812.mbox/%3c494839AB.5000000@gmail.com%3e"/>
<id>urn:uuid:%3c494839AB-5000000@gmail-com%3e</id>
<updated>2008-12-16T23:28:43Z</updated>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<pre>
Andrew Black wrote:
&gt; Greetings Martin
&gt; 
&gt; I took a glance at the logs for the 4.2.x exports, and observe the
&gt; following error message:
&gt; 
&gt; /usr/bin/scp: Argument list too long
&gt; 
&gt; This particular message is generated when the exporter script attempts
&gt; to copy the generated files out to Apache.  The solution as I see it
&gt; will be to manually perform the export, splitting the export list into
&gt; pieces to avoid overloading scp.  You'll then need to manually update
&gt; the cache file as is done at the end of static_export.sh.

Ah, thanks! I didn't get to this today so it'll have to wait
until I get back from my trip on 12/25. In the unlikely event
that I forget anyone affected by this should feel to pester
me ;-) Sorry for the delays in getting this fixed...

Martin

&gt; 
&gt; --Andrew Black
&gt; 
&gt; Martin Sebor wrote:
&gt;&gt; The page has been updated but it looks like all the builds are stale
&gt;&gt; (33 days old). Let me see if I can find the time to figure out what's
&gt;&gt; going on tomorrow. If not, I'm travelling starting Wednesday so it
&gt;&gt; might need to wait until the 26th.
&gt;&gt;
&gt;&gt;
&gt;&gt; Martin Sebor-2 wrote:
&gt;&gt;&gt; Farid Zaripov wrote:
&gt;&gt;&gt;&gt;   The latest nightly builds report for 4.2.x branch generated
&gt;&gt;&gt;&gt; Tue Nov 11 15:00:39 UTC 2008 - over a month ago.
&gt;&gt;&gt; Weird, the others are up to date.
&gt;&gt;&gt;
&gt;&gt;&gt; [...investigating...]
&gt;&gt;&gt;
&gt;&gt;&gt; I think I've got it. Seems that the SSL certificate had expired
&gt;&gt;&gt; and needed to be refreshed in order for svn to proceed with source
&gt;&gt;&gt; code update.
&gt;&gt;&gt;
&gt;&gt;&gt; The page is up to date now (it will take a bit for the web server
&gt;&gt;&gt; to pick it up).
&gt;&gt;&gt;
&gt;&gt;&gt; Martin
&gt;&gt;&gt;
&gt;&gt;&gt;&gt; Farid.
&gt;&gt;&gt;&gt;
&gt;&gt;&gt;
&gt; 



</pre>
</div>
</content>
</entry>
</feed>
