X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=flower%2Finclude%2Flibc-extension.hh;h=04056e6c493b450fb2d5bc950cc90938b3c7a291;hb=47db9a3883d726ca53e2133a3b2298f78dd6a32e;hp=96f3df00e1fbb088bc0d88bbc15e246ae395b3cc;hpb=01ddcb81463d7a68530971100469d3e2baf8c94b;p=lilypond.git diff --git a/flower/include/libc-extension.hh b/flower/include/libc-extension.hh index 96f3df00e1..04056e6c49 100644 --- a/flower/include/libc-extension.hh +++ b/flower/include/libc-extension.hh @@ -1,33 +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--2015 Han-Wen Nienhuys - (c) 1997 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 "fproto.hh" + +#include +#include +using namespace std; + #include "config.hh" -char* strnlwr( char* start_l ,int n); -char* strnupr( char* start_l, int n); +char *strnlwr (char *start, int n); +char *strnupr (char *start, int n); + +#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_MEMREV +unsigned char *memrev (unsigned char *byte, int length_i); +#endif + +double my_round (double); -#if !HAVE_MEMMEM // GNU extension. -char *memmem(Byte const * haystack, int haystack_len, - Byte const *needle, int needle_len); -#endif HAVE_MEMMEM +/* namespace std { */ -#if !HAVE_SNPRINTF // GNU extension. -int snprintf (char *str, size_t n, - char const *format, ... ); +#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 */