FYI: I went ahead and fixed this to minimize the number of lost
build results over the rest of the weekend. Hope my changes are
okay with you: http://svn.apache.org/viewvc?rev=642646&view=rev

Martin

Martin Sebor wrote:
[EMAIL PROTECTED] wrote:
Author: vitek
Date: Fri Mar 28 14:28:41 2008
New Revision: 642397

URL: http://svn.apache.org/viewvc?rev=642397&view=rev
Log:

2008-03-28  Travis Vitek  <[EMAIL PROTECTED]>

    STDCXX-714
    * tests/src/braceexp.cpp: Remove _rw_isspace(), _rw_isupper() and
    _rw_islower(). Use appropriate C library calls instead.

    STDCXX-716
    * tests/src/locale.cpp: Remove _rw_isspace(), _rw_toupper() and
    _rw_tolower(). Use appropriate C library calls instead.
Modified:
    stdcxx/trunk/tests/src/braceexp.cpp
    stdcxx/trunk/tests/src/locale.cpp

Modified: stdcxx/trunk/tests/src/braceexp.cpp
URL: http://svn.apache.org/viewvc/stdcxx/trunk/tests/src/braceexp.cpp?rev=642397&r1=642396&r2=642397&view=diff ==============================================================================
--- stdcxx/trunk/tests/src/braceexp.cpp (original)
+++ stdcxx/trunk/tests/src/braceexp.cpp Fri Mar 28 14:28:41 2008
[...]
@@ -1050,7 +1009,7 @@
while (tok_beg)
     {
- const char* tok_end = _rw_find_match (tok_beg, end, _rw_is_space);
+        const char* tok_end = _rw_find_match (tok_beg, end, isspace);

This is causing errors in EDG eccp builds (and likely many others
with strictly conforming compilers) because of the incompatibility
between functions with different language linkage. Also, there are
(or may be) non-conforming platforms that shadow isspace and the
other C functions with macros. I think FreeBSD is one them.

"/home/sebor/stdcxx/tests/src/braceexp.cpp", line 1012: error #167: argument
          of type "int (*)(int) C" is incompatible with parameter of type
          "int (*)(int)"
          const char* tok_end = _rw_find_match (tok_beg, end, isspace);
                                                              ^
Martin



Reply via email to