X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=flower%2Finclude%2Flibc-extension.hh;h=d2de8252d494b02ceb5b1e6f543ad79c3cbc7ffb;hb=0b544cfb7332615ef809b71b57ab656741311ae1;hp=5d63e995d5046c7cda09962a045b407599dbfa24;hpb=07dc00d6c83be5b05f5ec16f1ed36b1cf41b885c;p=lilypond.git diff --git a/flower/include/libc-extension.hh b/flower/include/libc-extension.hh index 5d63e995d5..d2de8252d4 100644 --- a/flower/include/libc-extension.hh +++ b/flower/include/libc-extension.hh @@ -1,44 +1,66 @@ /* - libc-extension.hh -- declare some string.h extensions + This file is part of LilyPond, the GNU music typesetter. - source file of the flowerlib + Copyright (C) 1997--2014 Han-Wen Nienhuys - (c) 1997--2000 Han-Wen Nienhuys -*/ + LilyPond is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + LilyPond is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + You should have received a copy of the GNU General Public License + along with LilyPond. If not, see . +*/ #ifndef LIBC_EXTENSION_HH #define LIBC_EXTENSION_HH -#include "flower-proto.hh" -#include "config.h" #include -#include +#include +using namespace std; -char* strnlwr (char* start_l ,int n); -char* strnupr (char* start_l, int n); +#include "config.hh" -#if !HAVE_MEMMEM // GNU extension. -void *memmem (void const * haystack, int haystack_len, - void const *needle, int needle_len); -#endif HAVE_MEMMEM +char *strnlwr (char *start, int n); +char *strnupr (char *start, int n); -#if !HAVE_SNPRINTF // GNU extension. -int snprintf (char *str, size_t n, char const *format, ...); +#if ! HAVE_MEMMEM /* GNU extension. */ +void *memmem (void const *haystack, int haystack_len, + void const *needle, int needle_len); +#endif /* HAVE_MEMMEM */ + +#if ! HAVE_MEMRCHR +unsigned char *memrchr (unsigned char const *p, int n, char c); #endif -#if !HAVE_VSNPRINTF // GNU extension. -int vsnprintf (char *str, size_t, char const *format, va_list args); +#if ! HAVE_MEMREV +unsigned char *memrev (unsigned char *byte, int length_i); #endif +double my_round (double); -#if !HAVE_ISINF // BSD extension -int isinf (double x); +/* namespace std { */ +#if ! HAVE_SNPRINTF /* GNU extension. */ +int snprintf (char *str, size_t n, char const *format, ...); +__attribute__ ((format (printf, 3, 4))); +#endif + +#if ! HAVE_VSNPRINTF /* GNU extension. */ +int vsnprintf (char *str, size_t, char const *format, va_list args); #endif -Byte *memrchr (Byte const * p, int n, char c); -Byte *strrev (Byte* byte_l, int length_i); +#ifndef isinf +#if ! HAVE_ISINF /* BSD extension. */ +int isinf (double x); +#endif +#endif +/* }; */ -#endif // LIBC_EXTENSION_HH +#endif /* LIBC_EXTENSION_HH */