| 2006-02-01 Martin Sebor <sebor@roguewave.com> |
| |
| * wcodecvt.cpp (__rw_libc_do_out): Removed the RWSTD_WCRTOMB macro and |
| instead explicitly spelled out the code the macro used to expand to. |
| (__rw_libc_do_unshift): Same. |
| (__rw_libc_do_in): Same for _RWSTD_MBRTOWC(). |
| |
| * wctype.cpp (<stdlib.h>): Included for wctomb. |
| (_RWSTD_NO_V3_LOCALE): Removed dead macro. |
| (__rw_toupper): Used _STD instead of _V3_LOCALE. |
| (__rw_tolower): Same. |
| |
| 2006-01-19 Martin Sebor <sebor@roguewave.com> |
| |
| * ChangeLog: Generated and added. |
| |
| 2006-01-19 Martin Sebor <sebor@roguewave.com> |
| |
| * string.cpp [_RWSTD_NO_MEMCPY] (__rw_memcpy): Corrected logic |
| errors in conditionally compiled code. |
| [_RWSTD_NO_MEMCHR] (__rw_memchr): Same. |
| [_RWSTD_NO_MEMCMP] (__rw_memcmp): Same. |
| [_RWSTD_NO_STRLEN] (__rw_strlen): Same(!) |
| [_RWSTD_NO_WMEMCPY] (__rw_wmemcpy): Same. |
| [_RWSTD_NO_WMEMCHR] (__rw_wmemchr): Same. |
| [_RWSTD_NO_WMEMCMP] (__rw_wmemcmp): Same. |
| [_RWSTD_NO_WSTRLEN] (__rw_wcslen): Same. |
| |
| 2006-01-19 Martin Sebor <sebor@roguewave.com> |
| |
| * string.cpp [_RWSTD_NO_MEMCPY] (__rw_memcpy): Explicitly cast void* |
| to char* before doing any arithmetic on the value. |
| (__rw_memchr): Same. |
| (__rw_memset): Same. |
| (__rw_memcmp): Same. |
| (__rw_memmove): Same. Added a missing return statement. |
| [_RWSTD_NO_WMEMMOVE] (__rw_wmemmove): Added a missing return statement. |
| |
| 2006-01-19 Martin Sebor <sebor@roguewave.com> |
| |
| * wcodecvt.cpp [_RWSTD_NO_MBTOWC] (mbtowc): Declared when not |
| declared in <stdlib.h> but known to be defined in the libc binary. |
| (do_in, do_out, do_length): Guarded references to mbtowc() with |
| _RWSTD_NO_MBTOWC. |
| [_RWSTD_NO_MBRLEN && _RWSTD_NO_MBLEN] (__rw_libc_mbrlen): Silenced |
| an unused variable warning. |
| (do_unshift): Removed an unnecessary scope resolution operator |
| from a call to mbtowc(). |
| |
| 2006-01-16 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-104 |
| * wcodecvt.cpp (__rw_libc_do_out): Used the _RWSTD_WCSLEN() macro |
| instead of invoking wcslen() directly. |
| |
| 2006-01-14 Martin Sebor <sebor@roguewave.com> |
| |
| * codecvt.cpp (StateT): Moved convenience typedef from __rw_mbsinit |
| to file scope and used it to declare the function's formal argument. |
| |
| 2006-01-14 Martin Sebor <sebor@roguewave.com> |
| |
| * wcodecvt.cpp (StateT): New convenience typedef. |
| (__rw_libstd_do_out): Documented the purpose of dead code |
| and unreachable warnings. |
| |
| 2006-01-12 Martin Sebor <sebor@roguewave.com> |
| |
| * codecvt.cpp: Removed assumptions about _RWSTD_MBSTATE_T being |
| a simple type (not really necessary after r368468 but it doesn't |
| hurt to be extra safe). |
| * wcodecvt.cpp: Same. |
| |
| 2006-01-12 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-108 |
| * TIMEZONE.cpp: New test to determine whether the POSIX timezone |
| variable is declared in <time.h>. |
| * time_put.cpp (__rw_get_zone): Changed to return 0 instead of void |
| on success (and non-zero on error) and handled _RWSTD_NO_TIMEZONE. |
| (__rw_get_time_put_data): Handled __rw_get_zone failure. |
| |
| 2006-01-11 Andrew Black <ablack@roguewave.com> |
| |
| STDCXX-103 |
| * time_put.cpp [_RWSTD_NO_NL_LANGINFO] (<langinfo.h>): Guarded |
| against inclusion when the header is detected to be missing at |
| configuration time. |
| * _defs.h [_RWSTD_NO_WCHAR_H] (_RWSTD_ANSI_C_WCHAR_H): Defined |
| to <rw/_defs.h> when the header is absent on a platform. |
| |
| 2006-01-10 Martin Sebor <sebor@roguewave.com> |
| |
| * _mbstate.h (_RWSTD_MBSTATE_T): New macro for std::mbstate_t, |
| ::mbstate_t, the internal ::__mbstate_t (on Linux and Solaris), |
| char* on AIX, char on IRIX, and int for MSVC. |
| * iosfwd (_mbstate.h, _RWSTD_MBSTATE_T): Unconditionally included |
| and used the macro instead of referring to mbstate_t directly. |
| * _codecvt.h: Same. |
| * _locale.h: Same. |
| * _messages.cc: Same. |
| * _traits.h: Same. |
| * codecvt.cpp: Same. |
| * iso2022.cpp: Same. |
| * iso2022.h: Same. |
| * wcodecvt.cpp: Same. |
| |
| 2006-01-10 Martin Sebor <sebor@roguewave.com> |
| |
| * string.cpp [_RWSTD_NO_WMEMCHR] (wmemchr): Corrected a typo |
| in function name. |
| |
| 2006-01-09 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-104 |
| * collate.cpp (wsccoll, wcsxfrm, wcstombs): Declared when the functions |
| are known to be defined in the libc binary but not declared in the libc |
| headers. |
| (__rw_wcsxfrm): New. Just like wcsxfrm but implemented in terms of |
| mbstowcs and strxfrm when wcxfrm is not implemented by the system's |
| libc. |
| (_RWSTD_WCSXFRM): New macro expands to wcsxfrm or __rw_wcsxfrm. |
| (__rw_wcsnxfrm): Used _RWSTD_WCSXFRM. |
| [_RWSTD_NO_WCSCOLL] (collate_byname::do_compare): Implemented in terms |
| of do_transform when there is no support for wcscoll in libc. |
| |
| 2006-01-09 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-106 |
| * memattr.cpp (__rw_memattr): Used getpagesize(3) instead of sysconf(3) |
| when neither _SC_PAGE_SIZE or _SC_PAGESIZE is #defined in <unistd.h> |
| (e.g., on BSD UNIX). |
| Restored errno to its original value if it got clobbered by one of the |
| called functions. |
| |
| 2006-01-07 Martin Sebor <sebor@roguewave.com> |
| |
| * time_put.cpp (__rw_get_timepunct): Removed unnecessary qualification |
| from references to libc functions. Inserted a wide NUL character, not |
| just a narrow one, at the beggining of the __rw_time_t structure. |
| (__rw_put_time): NUL-terminated format string before passing it to |
| strftime and wcsftime. |
| |
| 2006-01-07 Martin Sebor <sebor@roguewave.com> |
| |
| * locale_body.cpp (__rw_locale): Removed a stray std:: qualification |
| from a call to strlen(). |
| (_C_is_managed): Eliminated a gcc -Wextra warning: operation may be |
| undefined. |
| |
| 2006-01-07 Martin Sebor <sebor@roguewave.com> |
| |
| * string.cpp: New file with defitions of string helpers. |
| |
| 2006-01-07 Martin Sebor <sebor@roguewave.com> |
| |
| * locale_core.cpp (_C_get_std_facet): Used size_t instead of the |
| _RWSTD_SIZE_T macro and explicitly cast the result of an expression |
| to the type to silence the asinine HP aCC +DD64 Warning (suggestion) |
| 887: # Type 'int' is smaller than type 'unsigned long', unwanted |
| widening in value may result. |
| |
| 2006-01-05 Martin Sebor <sebor@roguewave.com> |
| |
| * wctype.cpp (wchar.h): Included for wctomb(). |
| |
| 2005-12-06 Martin Sebor <sebor@roguewave.com> |
| |
| * mapfile.gcc: Exported additional symbols. |
| |
| 2005-12-05 Martin Sebor <sebor@roguewave.com> |
| |
| * typeinfo.cpp: Corrected preprocessor guards around definitions |
| of class bad_typeid member functions. |
| |
| 2005-12-02 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-81 |
| * assert.cpp: On Solaris 8 and beyond, declared the printstack function |
| instead of #including <ucontext.h>, the system header in which it is |
| declared, in order to avoid having to #define enabling macros (i.e., |
| __EXTENSIONS__) and deal with the breakage when using a strict compiler |
| such as EDG eccp with the long long extension (used in some system other |
| headers) disabled. |
| |
| 2005-12-02 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-73 |
| * typeinfo: Used guard macros appropriate for each class instead |
| of fudging it based on what appears to work in most cases (except |
| for MSVC 8). |
| * typeinfo.cpp: Same. Also indented preprocessor conditionals for |
| readability. |
| |
| 2005-12-01 Martin Sebor <sebor@roguewave.com> |
| |
| * collate.cpp (__rw_strnxfrm): As a workaround for STDCXX-68 and |
| STDCXX-69, provided dummy destination buffers instead of passing |
| in 0 when calling strxfrm and wcsxfrm with the last argument of |
| 0 in case the functions are buggy (such as those implemented by |
| MSVC) and try to write to the buffer anyway. |
| (__rw_wcsnxfrm): Same. |
| |
| 2005-12-01 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-80 |
| * GNUmakefile: Wrote the definition of the MAPFLAGS variable to |
| makefile.in. Wrote out the definition of MAPFILE using/relative |
| to TOPDIR, and the definition of LIBDIR relative to BUILDDIR. |
| * GNUmakefile.lib: Appended MAPFILE to LDFLAGS, after MAPFLAGS. |
| * gcc.config: Defined MAPFLAGS on Solaris and defined MAPFILE |
| as a relative pathname WRT TOPDIR. |
| * mapfile.gcc-3: Renamed... |
| * mapfile.gcc: ...to this file (used with gcc 3 and beyond) and |
| populated it with exported symbols. |
| |
| 2005-11-30 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-76 |
| * exception.cpp: (uncaught_exception): With MSVC 7 and better, used |
| __uncaught_exception() to implement std::uncaught_exception() instead |
| of relying on the global symbol. |
| |
| 2005-11-08 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-64 |
| * ti_num_get.cpp: Silenced HP aCC warning 933: Null macro argument. |
| * ti_num_put.cpp: Same. |
| * ti_numpunct.cpp: Same. |
| |
| 2005-09-29 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-22 |
| * _time_put.cc (__rw_put_time): Changed to an ordinary function. |
| * time_put.cpp (__rw_put_time): Changed linkage from internal to |
| external. |
| |
| 2005-09-28 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-43 |
| * i86/atomic.s (__rw_atomic_add): renamed to __rw_atomic_add32. |
| (__rw_atomic_xchg): renamed to __rw_atomic_xchg32. |
| * sparc/atomic-64.s: Ditto. |
| * _mutex.h: Simplified by factoring out common code from platform |
| specific blocks to a single platform-independent block (wherever |
| possible). |
| (__rw_atomic_add): renamed to __rw_atomic_add32. |
| (__rw_atomic_xchg): renamed to __rw_atomic_xchg32. |
| |
| 2005-09-28 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-22 |
| * time_put.cpp (__rw_put_time): Changed from a function template |
| and its two specializations to overloads of an ordinary function |
| to prevent an SGI MIPSpro 7.41 ICE. |
| |
| 2005-09-28 Martin Sebor <sebor@roguewave.com> |
| |
| * time_put.cpp: Removed unnecessary scope resolution operators from |
| global names. |
| (__rw_put_time): Renamed the 6-argument overloads taking a character |
| pointer as the last argument to __rw_fmt_time in order to distinguish |
| them from the 12-argument function template and its specializations. |
| |
| 2005-09-19 Martin Sebor <sebor@roguewave.com> |
| |
| * atomic.s: Included the correct IA64 implementation files, along |
| the lines of rev 230382 (inadvertently reverted in rev 290311). |
| |
| 2005-09-19 Martin Sebor <sebor@roguewave.com> |
| |
| * atomic-ia64-32.s: Renamed... |
| * ia64/atomic.s: ...to this. |
| |
| 2005-09-19 Martin Sebor <sebor@roguewave.com> |
| |
| * ia64/atomic.s: Renamed... |
| * ia64/atomic-64.s: ...to this for consistency with the other |
| assembly files. |
| |
| 2005-09-19 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-14 (part 2) |
| * atomic.S: Renamed... |
| * atomic-cxx.S: ...to this. |
| |
| 2005-09-19 Martin Sebor <sebor@roguewave.com> |
| |
| * atomic-64.s: Changed the name of the included file to correspond |
| to its new location (see rev 290311). |
| |
| 2005-09-19 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-14 (part 1) |
| * src/atomic-i86.s: Renamed to... |
| * src/i86/atomic.s: ...this. |
| * src/atomic-ia64.s: Renamed to... |
| * src/ia64/atomic.s: ...this. |
| * src/atomic-pa2.s: Renamed to... |
| * src/parisc/atomic.s: ...this. |
| * src/atomic-pa2-64.s: Renamed to... |
| * src/parisc/atomic-64.s: ...this. |
| * src/atomic-sparc.s: Renamed to... |
| * src/sparc/atomic.s: ...this. |
| * src/atomic-sparc64.s Renamed to... |
| * src/sparc/atomic-64.s: ...this. |
| * src/atomic.s: Changed the names of included files according |
| to the above. |
| * GNUmakefile: Introduced the AS_EXT variable and set it to.S by |
| default (unless already defined in the .config file). |
| * makefile.common: Replaced platform-specific hackery with a more |
| general handling of assembly files. |
| * makefile.rules: Introduced the AS_EXT variable into the %.o: %.s |
| suffix rule and guarded the whole thing against expanding when AS_EXT |
| is not defined or valid. |
| * acc.config: Defined AS_EXT to .s. |
| * mipspro.config: Same. |
| * vacpp.config: Defined AS_EXT to an invalid value on AIX to prevent |
| the assembly of .{S,s} files (Linux will use the default extension |
| defined in GNUmakefile). |
| * eccp.config: Defined AS_EXT to an invalid value to disable the |
| processing of assembly files until a solution to invoke the system |
| assembler is implemented. |
| |
| 2005-09-15 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-21 |
| * wcodecvt.cpp (__rw_libstd_do_out): Converted each character |
| to unsigned long before comparing its value against the surrogate |
| pair ranges in order to silence gcc warning on Cygwin (where |
| sizeof(wchar_t) == 2): comparison is always true due to limited |
| range of data type. |
| |
| 2005-09-15 Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-19 |
| * memattr.cpp: #defined _SC_PAGE_SIZE to _SC_PAGESIZE when the former |
| is not #defined (such as Cygwin). |
| |
| STDCXX-20 |
| * memattr.cpp: #defined _WIN32 when __CYGWIN__ is #defined to take |
| advantage of the Windows Memory Management API and to work aound |
| the lack of madvise(). |
| |
| 2005-08-04 Nicole Willson <willson@roguewave.com> |
| Martin Sebor <sebor@roguewave.com> |
| |
| STDCXX-11: |
| * include/rw/_mutex.h (__rw_atomic_preincrement, |
| __rw_atomic_predecrement, __rw_atomic_exhange): Added |
| long long overloads for 32-bit IA64. |
| * src/atomic.s: Conditionally #included atomic-ia64-32.s. |
| * src/atomic-ia64-32.s: New. Same as atomic-ia64.s except |
| for 32-bit mode. |
| |
| 2005-07-26 Martin Sebor <sebor@roguewave.com> |
| |
| Set the svn:keywords property and enabled the expansion |
| of the Id keyword. |
| |
| 2005-07-18 Martin Sebor <sebor@roguewave.com> |
| |
| Initial import of the Rogue Wave C++ Standard library 4.1.2. |