the c++ versions of the c library header files provided with the gcc don't put the c standard library names into the std namespace as specified by the $17.4.1.2/4.
#include <cstdio> int main() { printf("Hi\n"); } sunstudio11 rejects this code, g++ accepts. -- Summary: incorrect namespace for C standard library headers. Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: pluto at agmk dot net GCC build triplet: *-linux GCC host triplet: *-linux GCC target triplet: *-linux http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26153