Bug#313407: libc6: C99 mode causes some library functions to be left undeclared
On Mon, Jun 13, 2005 at 10:14:36AM -0400, Justin Pryzby wrote:
> Package: libc6
> Version: 2.3.2.ds1-22
> Severity: normal
>
> pryzbyj@andromeda:/tmp$ cat strdup.c
> #include <string.h>
> int main()
> {
> char *s=strdup("");
> return 0;
> }
>
> pryzbyj@andromeda:/tmp$ gcc -std=c99 strdup.c
> strdup.c: In function `main':
> strdup.c:4: warning: implicit declaration of function `strdup'
> strdup.c:4: warning: initialization makes pointer from integer without a cast
Try -std=gnu99 instead. C99 does not include strdup; it's a (very
common) extension. -std=c99 requests strict C99 conformance.
--
Daniel Jacobowitz
CodeSourcery, LLC
Reply to: