On Thu, 20 Nov 2008 17:26:36 -0800 David Daney <ddaney@xxxxxxxxxxxxxxxxxx> wrote: > MIPS: Make BUG() __noreturn. > > Often we do things like put BUG() in the default clause of a case > statement. Since it was not declared __noreturn, this could sometimes > lead to bogus compiler warnings that variables were used > uninitialized. > > There is a small problem in that we have to put a magic while(1); loop to > fool GCC into really thinking it is noreturn. That sounds like your __noreturn macro is wrong. Try using __attribute__ ((__noreturn__)) if that works then fix up the __noreturn definitions for the MIPS and gcc you have.