Michael Sullivan <msulli1355@xxxxxxxxx> writes: > michael@camille OurRPG $ gcc -O2 -W -Wall -pedantic `sdl-config > --cflags` -c character.cpp You need to tell us the complete command line, which means you need to show us the output of `sdl-config --cflags`. > /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include/g++-v4/memory: In function > 'std::pair<_Tp*, int> std::__get_temporary_buffer(ptrdiff_t, _Tp*)': > /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include/g++-v4/memory:83: error: > 'nothrow' was not declared in this scope > /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include/g++-v4/memory: In function > 'void std::return_temporary_buffer(_Tp*)': > /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/include/g++-v4/memory:123: error: > 'nothrow' was not declared in this scope > > And here's the code of character.cpp and character.h: Please use the --save-temps option and send the .ii file, as described at the web site I pointed you to, http://gcc.gnu.org/bugs.html . That said, as far as I can see the only system header file your source code includes is <string>. I find it very unlikely that simply including <string> would cause an error; many many people would have complained about that. So the problem is most likely in the command line options which you didn't show us, or perhaps there is something wrong with your gcc installation somehow. Ian