From dev-return-8191-apmail-stdcxx-dev-archive=stdcxx.apache.org@stdcxx.apache.org Tue Jul 15 14:59:49 2008 Return-Path: Delivered-To: apmail-stdcxx-dev-archive@www.apache.org Received: (qmail 75307 invoked from network); 15 Jul 2008 14:59:48 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 15 Jul 2008 14:59:48 -0000 Received: (qmail 19362 invoked by uid 500); 15 Jul 2008 14:59:48 -0000 Delivered-To: apmail-stdcxx-dev-archive@stdcxx.apache.org Received: (qmail 19336 invoked by uid 500); 15 Jul 2008 14:59:48 -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 19325 invoked by uid 99); 15 Jul 2008 14:59:48 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 15 Jul 2008 07:59:48 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: 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, 15 Jul 2008 14:58:55 +0000 Received: from nebula.bco.roguewave.com ([10.70.3.27]) by moroha.roguewave.com (8.13.6/8.13.6) with ESMTP id m6FExH3m017851 for ; Tue, 15 Jul 2008 14:59:17 GMT Message-ID: <487CBB46.5080104@roguewave.com> Date: Tue, 15 Jul 2008 08:59:18 -0600 From: Martin Sebor Organization: Rogue Wave Software, Inc. User-Agent: Thunderbird 2.0.0.12 (X11/20080226) MIME-Version: 1.0 To: dev@stdcxx.apache.org Subject: Re: [jira] Commented: (STDCXX-900) 22.locale.time.get test fails 15 assertions References: <1371616515.1216083572138.JavaMail.jira@brutus> In-Reply-To: <1371616515.1216083572138.JavaMail.jira@brutus> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org Travis Vitek (JIRA) wrote: > [ https://issues.apache.org/jira/browse/STDCXX-900?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12613504#action_12613504 ] > > Travis Vitek commented on STDCXX-900: > ------------------------------------- > > Well, most of these failures are destined to fail until the test is rewritten. Are you sure you meant that the test needs to be rewritten? (I'm trying to reconcile that with your subsequent comment about binary compatibility). Martin > It is impossible to reliably parse any useful date-time information from a string that contains only the formatted week number. The test tries to to do just this for {{%U}} and {{%W}}. Even if we have a partially specified date (I believe we need at least the year and day of week), we still need somewhere to store the additional data so that we can store the value we parse, and then after the parsing is done so that we can use it to calculate something useful. At the very least I think we'll be breaking binary compatibility. > > So, for the time being, I think the right thing to do is to fix the portion of the test that attempts to to verify {{%U}} and {{%W}} so that it expects failure. If we wish to fully support this extension, then we should add a new test that verifies {{%U}} and {{%W}} with the necessary format specifiers and then fix the code for 4.3 or later. > >> 22.locale.time.get test fails 15 assertions >> ------------------------------------------- >> >> Key: STDCXX-900 >> URL: https://issues.apache.org/jira/browse/STDCXX-900 >> Project: C++ Standard Library >> Issue Type: Bug >> Components: Tests >> Affects Versions: 4.2.0, 4.2.1 >> Environment: MSVC >> Reporter: Farid Zaripov >> Assignee: Travis Vitek >> Priority: Minor >> Fix For: 4.2.2 >> >> Original Estimate: 6h >> Remaining Estimate: 6h >> >> The 22.locale.time.get test fails with the following assertions: >> {noformat} >> # ASSERTION (S7) (5 lines): >> # TEXT: line 174. time_get::get ("9", ..., "U") ate 0, expected 1, rdstate() == eofbit, got failbit >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 758 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 183. time_get::get ("9", ..., "U") got { tm_mday=0 [1,31] }, expected { tm_mday=0 [1,31], tm_year=320, tm_wday=2 Tue, tm_yday=60 }, flags = fmtflags(0), locale (C) >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 758 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 174. time_get::get ("0", ..., "W") ate 0, expected 1, rdstate() == eofbit, got failbit >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 778 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 174. time_get::get ("2nd weekday, 21st week, 2nd year", ..., "%Ex") ate 17, expected 32, rdstate() == goodbit, got failbit >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 1442 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 183. time_get::get ("2nd weekday, 21st week, 2nd year", ..., "%Ex") got { tm_mday=0 [1,31] }, expected Tue May 21 00:00:00 3902, flags = fmtflags(0), locale (LC_COLLATE=C;LC_CTYPE=C;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=test-locale;LC_COLLATE=C) >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 1442 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 174. time_get::get ("1st", ..., "%OW") ate 3, expected 3, rdstate() == goodbit, got failbit >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 1582 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 183. time_get::get ("1st", ..., "%OW") got { tm_mday=0 [1,31] }, expected { tm_mday=0 [1,31], tm_wday=1 Mon }, flags = fmtflags(0), locale (LC_COLLATE=C;LC_CTYPE=C;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=test-locale;LC_COLLATE=C) >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 1582 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 174. time_get::get (L"9", ..., "U") ate 0, expected 1, rdstate() == eofbit, got failbit >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 758 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 183. time_get::get (L"9", ..., "U") got { tm_mday=0 [1,31] }, expected { tm_mday=0 [1,31], tm_year=320, tm_wday=2 Tue, tm_yday=60 }, flags = fmtflags(0), locale (C) >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 758 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 174. time_get::get (L"0", ..., "W") ate 0, expected 1, rdstate() == eofbit, got failbit >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 778 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 174. time_get::get (L"2nd weekday, 21st week, 2nd year", ..., "%Ex") ate 17, expected 32, rdstate() == goodbit, got failbit >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 1442 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 183. time_get::get (L"2nd weekday, 21st week, 2nd year", ..., "%Ex") got { tm_mday=0 [1,31] }, expected Tue May 21 00:00:00 3902, flags = fmtflags(0), locale (LC_COLLATE=C;LC_CTYPE=C;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=test-locale;LC_COLLATE=C) >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 1442 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 174. time_get::get (L"1st", ..., "%OW") ate 3, expected 3, rdstate() == goodbit, got failbit >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 1582 >> # ASSERTION (S7) (5 lines): >> # TEXT: line 183. time_get::get (L"1st", ..., "%OW") got { tm_mday=0 [1,31] }, expected { tm_mday=0 [1,31], tm_wday=1 Mon }, flags = fmtflags(0), locale (LC_COLLATE=C;LC_CTYPE=C;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=test-locale;LC_COLLATE=C) >> # CLAUSE: lib.locale.time.get >> # FILE: 22.locale.time.get.cpp >> # LINE: 1582 >> # ASSERTION (S7) (4 lines): >> # TEXT: time_get not exercised in named locales >> # CLAUSE: lib.locale.time.get >> # LINE: 1664 >> {noformat} >