This is a bug in gcc.c. Basically argv is declared as const but is changeable if HAVE_TARGET_EXECUTABLE_SUFFIX or HAVE_TARGET_OBJECT_SUFFIX are defined. Please file a bug with this analysis. Thanks, Andrew Pinski