[
https://issues.apache.org/jira/browse/STDCXX-847?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Travis Vitek updated STDCXX-847:
--------------------------------
Fix Version/s: (was: 4.2.1)
4.2.2
Deferred to 4.2.2
> [XLC++ 7,8,9] SEGV in 22.locale.time.get
> ----------------------------------------
>
> Key: STDCXX-847
> URL: https://issues.apache.org/jira/browse/STDCXX-847
> Project: C++ Standard Library
> Issue Type: Bug
> Components: Test Driver
> Affects Versions: 4.2.1
> Environment: AIX 5.3 PowerPC IBM XLC++ 9.0
> AIX 5.3 PowerPC IBM XLC++ 8.0
> AIX 5.3 PowerPC IBM XLC++ 7.0
> Reporter: Travis Vitek
> Assignee: Travis Vitek
> Fix For: 4.2.2
>
> Original Estimate: 4h
> Time Spent: 8h
> Remaining Estimate: 0h
>
> On AIX, when compiled with XLC++, the test
> [22.locale.time.get.cpp|http://svn.apache.org/viewvc/stdcxx/trunk/tests/localization/22.locale.time.get.cpp?view=markup]
> fails with a {{SIGSEGV}} in all build types.
> This is the stack dump at the time of the crash.
> {noformat}
> Segmentation fault in __xisdigit at 0xd033cc00
> 0xd033cc00 (__xisdigit+0x14) 80a30000 lwz r5,0x0(r3)
> (dbx) where
> __xisdigit(0x5b5b0000, 0x58) at 0xd033cc00
> doformat(??, ??, ??, ??, ??, ??, ??, ??) at 0xd0338660
> __strftime_std(??, ??, ??, ??, ??, ??, ??, ??) at 0xd0338464
> strftime(??, ??, ??, ??) at 0xd0341c48
> unnamed block in void test_english<char>(char,const char*,const char*)( =
> '\0', cname = "char", locname = warning: Unable to access address 0x2006cbf8
> from core
> (invalid char ptr (0x2006cbf8))), line 933 in "22.locale.time.get.cpp"
> void test_english<char>(char,const char*,const char*)( = '\0', cname =
> "char", locname = warning: Unable to access address 0x2006cbf8 from core
> (invalid char ptr (0x2006cbf8))), line 933 in "22.locale.time.get.cpp"
> run_test(int,char**)( = 1, = 0x2ff22a3c), line 1611 in
> "22.locale.time.get.cpp"
> rw_vtest(int,char**,const char*,const char*,const
> char*,int(*)(int,char**),const char*,char*)(argc = 1, argv = 0x2ff22a3c,
> file_name =
> "/amd/devco/vitek/stdcxx/trunk/tests/localization/22.locale.time.get.cpp",
> clause = "lib.locale.time.get", comment = (nil), fun = 0x2005ec08, optstr =
> "", va = ""), line 1040 in "driver.cpp"
> rw_test(int,char**,const char*,const char*,const
> char*,int(*)(int,char**),const char*,...)(argc = 1, argv = 0x2ff22a3c, fname
> = "/amd/devco/vitek/stdcxx/trunk/tests/localization/22.locale.time.get.cpp",
> clause = "lib.locale.time.get", comment = (nil), testfun = 0x2005ec08, optstr
> = "", ... = 0x0), line 1138 in "driver.cpp"
> main(argc = 1, argv = 0x2ff22a3c), line 1668 in "22.locale.time.get.cpp"
> (dbx) list 920,940
> 920 TEST (T (0, 0, 0, 1, 0, 100), "%x", 8, "x", 0, Eof);
> 921
> 922 // exercise time (time_get::get_time())
> 923 FUNCTION ("get_time");
> 924
> 925 int len;
> 926
> 927 {
> 928 // determine whether "%X" is equivalent to "%I:%M:%S %p"
> 929 // (e.g., HP-UX or Linux) or to "%I:%M:%S" (e.g., Compaq
> 930 // Tru64 UNIX)
> 931 char buf [128];
> 932 const std::tm tmb = mktm (0, 0, 1);
> 933 len = std::strftime (buf, sizeof buf, "%X", &tmb);
> 934 }
> 935
> 936 const int hour = 11 == len ? 12 : 0;
> 937
> 938 TEST (T ( 0, 0, 0), "%X", len, "X", 0, 11 == len ? Good : Eof);
> 939 TEST (T ( 0, 0, 1), "%X", len, "X", 0, 11 == len ? Good : Eof);
> 940 TEST (T ( 0, 0, 11), "%X", len, "X", 0, 11 == len ? Good : Eof);
> (dbx) quit
> {noformat}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.