------- Comment #5 from jakub at gcc dot gnu dot org 2010-09-22 08:07 ------- That semantics can't cope well with -fcompare-debug though, where cc1 etc. is invoked multiple times. If you remove some options forever, they wouldn't appear on the next cc1 etc. invocation line and thus that would behave differently. I wonder if e.g. not using %(invoke_as) but instead duplicating its text in java/jvspec.c with additional %<findirect-dispatch right after as and before %(asm_options) wouldn't do the trick. Or we need a different % letter that would have the previous behavior, though am not sure if it could ever work with gcj -fcompare-debug -fmain=myclass myclass.java
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44095