Hi all, In my project, we will use gcc -I option to set the search path for our header files. But when I update the GCC to new version 4.7.1. The compile fails. And I write a test program, if I don't use the -I option, the compile is OK. When I use the -I option to set the search path for our header files. The following error throws. Is it a gcc bug or how can I solve this issue? Thank you! /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/mips-linux-g++ test.cc -I/repo/yuhuamei/DBroker/sw/include In file included from /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/bits/locale_facets.h:50:0, from /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/bits/basic_ios.h:39, from /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/ios:45, from /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/ostream:40, from /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/iostream:40, from test.cc:1: /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/bits/streambuf_iterator.h: In member function \u2018std::istreambuf_iterator<_CharT, _Traits>& std::istreambuf_iterator<_CharT, _Traits>::operator++()\u2019: /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/bits/streambuf_iterator.h:142:16: error: \u2018__gnu_debug\u2019 has not been declared /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/bits/streambuf_iterator.h:142:49: error: there are no arguments to \u2018_M_message\u2019 that depend on a template parameter, so a declaration of \u2018_M_message\u2019 must be available [-fpermissive] /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/bits/streambuf_iterator.h:142:49: note: (if you use \u2018-fpermissive\u2019, G++ will accept your code, but allowing the use of an undeclared name is deprecated) /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/bits/streambuf_iterator.h: In member function \u2018std::istreambuf_iterator<_CharT, _Traits> std::istreambuf_iterator<_CharT, _Traits>::operator++(int)\u2019: /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/bits/streambuf_iterator.h:157:16: error: \u2018__gnu_debug\u2019 has not been declared /repo/yuhuamei/DBroker/tools/Linux_x86_64/compiler/mips-linux-glibc-gnu/bin/../lib/gcc/mips-linux/4.7.1/../../../../mips-linux/include/c++/4.7.1/bits/streambuf_iterator.h:157:49: error: there are no arguments to \u2018_M_message\u2019 that depend on a template parameter, so a declaration of \u2018_M_message\u2019 must be available [-fpermissive]