diff options
author | Jeff Johnston <jjohnstn@redhat.com> | 2002-08-27 21:20:10 +0000 |
---|---|---|
committer | Jeff Johnston <jjohnstn@redhat.com> | 2002-08-27 21:20:10 +0000 |
commit | 7d08241b68428bba98089eb841cef8eddd87f27b (patch) | |
tree | 55ed9328010779bb79f48cdcda41c40216a2d421 /newlib/libc/stdlib/wmemcmp.c | |
parent | ff2bf8523ba2d3db2fca8e9e2f8be1e4752fa57b (diff) | |
download | cygnal-7d08241b68428bba98089eb841cef8eddd87f27b.tar.gz cygnal-7d08241b68428bba98089eb841cef8eddd87f27b.tar.bz2 cygnal-7d08241b68428bba98089eb841cef8eddd87f27b.zip |
2002-08-27 Egor Duda <deo@logos-m.ru>
* libc/stdlib/wmemchr.c: New file.
* libc/stdlib/wmemcmp.c: Ditto.
* libc/stdlib/wmemcpy.c: Ditto.
* libc/stdlib/wmemmove.c: Ditto.
* libc/stdlib/wmemset.c: Ditto.
* libc/stdlib/Makefile.am (GENERAL_SOURCES): Add new files.
* configure.host: Default -DMB_CAPABLE for cygwin.
* libc/include/wchar.h: Declare wmemchr(), wmemcmp(), wmemcpy(),
wmemmove() and wmemset(). Add include of <_ansi.h>.
* libc/stdlib/Makefile.in: Regenerate.
Diffstat (limited to 'newlib/libc/stdlib/wmemcmp.c')
-rw-r--r-- | newlib/libc/stdlib/wmemcmp.c | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/newlib/libc/stdlib/wmemcmp.c b/newlib/libc/stdlib/wmemcmp.c new file mode 100644 index 000000000..43159aa28 --- /dev/null +++ b/newlib/libc/stdlib/wmemcmp.c @@ -0,0 +1,48 @@ +/*- + * Copyright (c)1999 Citrus Project, + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * citrus Id: wmemcmp.c,v 1.2 2000/12/20 14:08:31 itojun Exp + */ + +#include <wchar.h> + +int +_DEFUN (wmemcmp, (s1, s2, n), + const wchar_t *s1 _AND + const wchar_t *s2 _AND + size_t n) +{ + size_t i; + + for (i = 0; i < n; i++) { + if (*s1 != *s2) { + /* wchar might be unsigned */ + return *s1 > *s2 ? 1 : -1; + } + s1++; + s2++; + } + return 0; +} |