|
[
Permlink
| « Hide
]
Farid Zaripov added a comment - 29/Nov/07 03:55 PM
The proposed patch attached.
Another option might be extend the struct _rw_time_t with d_order_off field and determine the dateorder value (or two values for narrow and wide characters) in __rw::_rw_get_timepunct().
The updated patch is attached.
ChangeLog:
The patch looks good to me in general but I have a few compatibility concerns with it:
1. It removes RWSTD_EXPORT from __rw::_rw_get_timepunct(). Is this forward binary compatible on Windows? 2. It adds a new function, _rw::_rw_get_dateorder(). Is this forward binary compatible? 3. It outlines the virtual member function time_get::do_date_order(). Is this binary compatible? 1. This change is not necessary (and even more, it's incorrect, because __rw_get_timepunct() should be exported if the user instantiates the std::time_get<user_char, user_iterator>).
2. The __rw_get_dateorder() should also be _RWSTD_EXPORT to be accessible from std::time_get<user_char, user_iterator>. And this change is not a forward binary compatible. 3. I think yes. The outlining doesn't add's the new symbol in the library. The only what may change - it's a return value from the date_order(). But since the all possible returning values are valid (the user of the library shouldn't rely on the always returned no_order from date_order()) this change is safe. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||