Return-Path: Delivered-To: apmail-stdcxx-dev-archive@www.apache.org Received: (qmail 16100 invoked from network); 8 Apr 2008 20:28:35 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 8 Apr 2008 20:28:35 -0000 Received: (qmail 16618 invoked by uid 500); 8 Apr 2008 20:28:35 -0000 Delivered-To: apmail-stdcxx-dev-archive@stdcxx.apache.org Received: (qmail 16601 invoked by uid 500); 8 Apr 2008 20:28:35 -0000 Mailing-List: contact dev-help@stdcxx.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@stdcxx.apache.org Delivered-To: mailing list dev@stdcxx.apache.org Received: (qmail 16592 invoked by uid 99); 8 Apr 2008 20:28:35 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 08 Apr 2008 13:28:35 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [208.30.140.160] (HELO moroha.roguewave.com) (208.30.140.160) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 08 Apr 2008 20:27:44 +0000 Received: from exchmail01.Blue.Roguewave.Com (exchmail01.blue.roguewave.com [10.22.129.22]) by moroha.roguewave.com (8.13.6/8.13.6) with ESMTP id m38KS4VU018690 for ; Tue, 8 Apr 2008 20:28:04 GMT X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: quoted-printable Subject: RE: svn commit: r646002 - /stdcxx/trunk/util/output.cpp Date: Tue, 8 Apr 2008 14:28:07 -0600 Message-ID: X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: svn commit: r646002 - /stdcxx/trunk/util/output.cpp Thread-Index: AciZm/UCDkv4lb9LSW+BEfFZxyyVGAAFv94QAAB3SWA= References: <20080408171236.E3AF11A983A@eris.apache.org> From: "Travis Vitek" To: X-Virus-Checked: Checked by ClamAV on apache.org =20 >Eric Lemings wrote: >=20 >Does this mean we have no solution for resolving this issue (i.e. >back to Square One as it were)? It's currently classified as one >of two Critical issues for 4.2.1 and Andrew's last comment is >"Further work is necessary". Question is, how much work? > >Thanks, >Brad. > I don't know. I'm having a hard time seeing why we were getting the DIFF errors with the examples in the nightly builds. I know for a fact that I tested the test, examples and locales multiple times before I committed my last 'fix', and I've just rebuilt using the code from yesterday and I have no problems today either... C:\Build\stdcxx\trunk\msvc-8.0\11s\examples>..\bin\exec.exe -d c:\build\stdcxx\trunk\examples @aa NAME STATUS WARN ASSERTS FAILED PERCNT USER SYS REAL accumulate.exe 0 0 0.015 0.000 0.203 adj_diff.exe 0 0 0.015 0.000 0.187 advance.exe 0 0 0.015 0.000 0.281 alg1.exe 0 0 0.015 0.000 0.124 alg2.exe 0 0 0.015 0.000 0.109 alg3.exe 0 0 0.015 0.015 0.249 alg4.exe 0 0 0.015 0.000 0.234 alg5.exe 0 0 0.015 0.000 0.234 alg6.exe 0 0 0.015 0.000 0.140 alg7.exe 0 0 0.015 0.000 0.124 I'm certain that this boils down to check_test() and check_compat_test() functions needing the provided file to be opened in binary mode and the check_example() function needing it to be text mode. I'm uncertain why binary mode doesn't work in the nightly builds, but works fine locally, but it appears that we previously used text mode for comparing the example output. If the problem is that simple, then I the parse_output() function could have been augmented to workaround the problem. + const bool is_not_an_example =3D + 0 =3D=3D options->data_dir || '\0' =3D=3D *options->data_dir; + + const char* file_mode =3D "r"; + if (iis_not_an_example) + file_mode =3D "rb"; + + data =3D fopen (out_name, file_mode); - data =3D fopen (out_name, "rb"); if (0 =3D=3D data) { if (ENOENT !=3D errno) warn ("Error opening %s: %s\n", out_name, strerror (errno)); status->status =3D ST_NO_OUTPUT; } else { + if (is_not_an_example) { - if (0 =3D=3D options->data_dir || '\0' =3D=3D = *options->data_dir) { This opens the file in binary mode for the tests and locales, and in text mode for the examples. Travis