Michael Sullivan <msulli1355@xxxxxxxxx> writes: > # 1 "./new" 1 3 Thanks for the full report. That line shows your problem. You have a file named "new" in your working directory. The <string> header file is (indirectly) doing #include <new>. That is picking up the <new> in your working directory rather than the <new> from libstdc++. Normally gcc will not search for #include <> files in the current working directory, so normally this issue should not occur. The -v output you sent shows this: #include "..." search starts here: #include <...> search starts here: /usr/include/SDL . The directory "." is not normally on that list. You didn't use "-I ." on the command line. Have you by any chance set the CPLUS_INCLUDE_PATH environment variable? Ian