Issue Details (XML | Word | Printable)

Key: STDCXX-847
Type: Bug Bug
Status: Open Open
Priority: Major Major
Assignee: Unassigned
Reporter: Travis Vitek
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
C++ Standard Library

[XLC++ 7,8,9] SEGV in 22.locale.time.get

Created: 09/Apr/08 07:23 PM   Updated: 11/Jul/09 12:00 AM
Return to search
Component/s: Test Driver
Affects Version/s: 4.2.1
Fix Version/s: 4.2.2

Time Tracking:
Original Estimate: 4h
Original Estimate - 4h
Remaining Estimate: 0h
Time Spent - 8h
Time Spent: 8h
Time Spent - 8h

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
Issue Links:
Dependants
 

Regression: Regression
Severity: Incorrect Behavior


 Description  « Hide
On AIX, when compiled with XLC++, the test 22.locale.time.get.cpp fails with a SIGSEGV in all build types.

This is the stack dump at the time of the crash.

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


 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Travis Vitek made changes - 09/Apr/08 07:25 PM
Field Original Value New Value
Attachment test-stdcxx-847.cpp [ 12379759 ]
Travis Vitek made changes - 09/Apr/08 07:26 PM
Time Spent 1h [ 3600 ]
Travis Vitek made changes - 15/Apr/08 05:00 PM
Assignee Travis Vitek [ vitek ]
Travis Vitek made changes - 15/Apr/08 06:24 PM
Status Open [ 1 ] In Progress [ 3 ]
Travis Vitek made changes - 16/Apr/08 01:24 AM
Attachment test-stdcxx-847.cpp [ 12379759 ]
Travis Vitek made changes - 16/Apr/08 01:28 AM
Status In Progress [ 3 ] Open [ 1 ]
Travis Vitek made changes - 16/Apr/08 01:28 AM
Time Spent 1h [ 3600 ] 6h [ 21600 ]
Remaining Estimate 4h [ 14400 ] 0h [ 0 ]
Travis Vitek made changes - 17/Apr/08 07:17 PM
Link This issue depends on STDCXX-877 [ STDCXX-877 ]
Travis Vitek made changes - 18/Apr/08 09:56 PM
Time Spent 6h [ 21600 ] 8h [ 28800 ]
Travis Vitek made changes - 23/Apr/08 08:34 PM
Fix Version/s 4.2.1 [ 12312690 ]
Fix Version/s 4.2.2 [ 12313096 ]
Travis Vitek made changes - 11/Jul/09 12:00 AM
Assignee Travis Vitek [ vitek ]