diff --git a/str.h b/str.h index a0f0229..973ef9e 100644 --- a/str.h +++ b/str.h @@ -27,8 +27,13 @@ extern int str_diff(const char *a,const char *b) __pure__; * limit characters match. */ extern int str_diffn(const char *a,const char *b,unsigned int limit) __pure__; +#ifdef __dietlibc__ +#include +#define str_len(foo) strlen(foo) +#else /* str_len returns the index of \0 in s */ extern unsigned int str_len(const char *s) __pure__; +#endif /* str_chr returns the index of the first occurance of needle or \0 in haystack */ extern unsigned int str_chr(const char *haystack,char needle) __pure__; diff --git a/str/str_len.c b/str/str_len.c index c1f1638..85f52dd 100644 --- a/str/str_len.c +++ b/str/str_len.c @@ -1,6 +1,7 @@ #include "str.h" #ifdef __dietlibc__ +#undef str_len unsigned int str_len(const char* in) __attribute__((alias("strlen"))); #else unsigned int str_len(const char* in) {