../../../gcc/gcc/dbxout.c: In function ‘dbxout_symbol_location’: ../../../gcc/gcc/dbxout.c:3037:13: error: signed and unsigned type in conditional expression [-Werror=sign-compare] ../../../gcc/gcc/dbxout.c:3037:13: error: signed and unsigned type in conditional expression [-Werror=sign-compare] ../../../gcc/gcc/dbxout.c: In function ‘dbxout_parms’: ../../../gcc/gcc/dbxout.c:3428:15: error: signed and unsigned type in conditional expression [-Werror=sign-compare] ../../../gcc/gcc/dbxout.c:3428:15: error: signed and unsigned type in conditional expression [-Werror=sign-compare] cc1: all warnings being treated as errors
The definition of DBX_REGISTER_NUMBER comes from config/i386/i386-interix.h .
There are more i686-interix3 problems than that; even without -Werror a cross to that target won't build in my experience.
Cross-build of cc1 for i686-interix3 (using --enable-werror-always and --enable-obsolete) succeeds in revision 184927.