On 2009-11-09 at 01:47:24 [+0100], scott mc <scottmc2@xxxxxxxxx> wrote: > I just ran into this warning: > /boot/develop/headers/posix/wchar.h:117: warning: redundant > redeclaration of `wcstoul' in same scope > /boot/develop/headers/posix/wchar.h:115: warning: previous declaration > of `wcstoul' > And looking at wchar.h I see this: > > 115: extern unsigned long wcstoul(const wchar_t *, wchar_t **, int); > 116: extern unsigned long long wcstoull(const wchar_t *, wchar_t **, > int); > 117: extern unsigned long int wcstoul(const wchar_t *, wchar_t **, int); > > question is, which one is right and which is wrong? Or is it intended > to have unsigned long and unsigned long int? > I'm assuming 117 is the wrong one Since "long == long int" both are semantically equivalent. Either one can be removed, ideally such that the prototype matches the implementation. A quick grep in the libroot sources doesn't immediately turn up which one that would be though (isn't glibc lovely?), so a closer inspection would be required. CU, Ingo