Re: warning: incompatible implicit declaration of built-in function 'malloc'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Robert Dell <dellr@xxxxxxx> writes:

> can somebody please explain why I'm getting this warning?
> warning: incompatible implicit declaration of built-in function 'malloc'
>
> char *returnval = 0;
> long outputBytes = 0;
> ... outputBytes gets changed and tested to ensure it's valid (non zero) ...
>
> the offending line is here.
> returnval = (char *) malloc(outputBytes + 2);

You are calling the malloc function, but you have not declared it.  That
means it gets the type "extern int malloc();".  Since you are compiling
in hosted mode (the default), gcc knows that that declaration is
incorrect, and it is warning about that (the correct declaration is
"extern void *malloc(size_t);").

Typically this is fixed by adding

#include <stdlib.h>

to the start of your file.

Ian


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux