The asprintf() and vasprintf() prototypes are declared in <stdio.h> header file. The <cstdio> should be the "adapted" version of the same file for C++ language. Nonetheless those two prototypes are missing. Quoting from the <cstdio>:
/** @file include/cstdio * This is a Standard C++ Library file. You should @c #include this file * in your programs, rather than any of the "*.h" implementation files. * * This is the C++ version of the Standard C Library header @c stdio.h, * and its contents are (mostly) the same as that header, but are all * contained in the namespace @c std (except for names which are defined * as macros in C). */ -- Summary: asprintf() and vasprintf() missing in <cstdio> header file Product: gcc Version: 4.3.3 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: vincenzo dot romano at notorand dot it http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40203