Buggy code:
public class Main { public static void main ( String [ ] args ) throws IOException { } private static void appendNLabel ( StringBuffer sink , String label , int numItems ) { } protected Main . CommandController controller ; protected String commandName ; private IMessageHolder clientHolder ; private final MessageHandler ourHandler ; private int lastFails ; private int lastErrors ; public Main ( ) { } public void runMain ( String [ ] args , boolean useSystemExit ) { } public void run ( String [ ] args , IMessageHolder holder ) { if ( LangUtil . isEmpty ( args ) ) { args = new String [ ] { "-help" } ; } else if ( Arrays . asList ( args ) . contains ( "-version" ) ) { System . out . println ( ( "AspectJ<seq2seq4repair_space>Compiler<seq2seq4repair_space>" + ( Version . text ) ) ) ; System . out . println ( ) ; return ; } else if ( controller . running ( ) ) { Main . fail ( holder , ( "already<seq2seq4repair_space>running<seq2seq4repair_space>with<seq2seq4repair_space>controller:<seq2seq4repair_space>" + ( controller ) ) , null ) ; return ; } args = controller . init ( args , holder ) ; if ( ( 0 < ( holder . numMessages ( ERROR , true ) ) ) || ( ! ( validArgs ( args , controller . incremental ( ) , holder ) ) ) ) { return ; } ICommand command = ReflectionFactory . makeCommand ( commandName , holder ) ; if ( 0 < ( holder . numMessages ( ERROR , true ) ) ) { return ; } try { boolean verbose = ( - 1 ) != ( ( "" + ( Arrays . asList ( args ) ) ) . indexOf ( "-verbose" ) ) ; boolean passed = command . runCommand ( args , holder ) ; if ( ( report ( passed , holder ) ) && ( controller . incremental ( ) ) ) { final boolean onCommandLine = controller . commandLineIncremental ( ) ; while ( controller . doRepeatCommand ( ) ) { passed = command . repeatCommand ( holder ) ; if ( ! ( report ( passed , holder ) ) ) { break ; } else { holder . clearMessages ( ) ; } } } } catch ( AbortException ae ) { <START_BUG> if ( ABORT . equals ( ae ) ) { <END_BUG> quit ( ) ; } else { IMessage message = ae . getIMessage ( ) ; Throwable thrown = ae . getThrown ( ) ; if ( null == thrown ) { if ( null != message ) { holder . handleMessage ( message ) ; } else { Main . fail ( holder , "abort<seq2seq4repair_space>without<seq2seq4repair_space>message" , ae ) ; } } else if ( null == message ) { Main . fail ( holder , "aborted" , thrown ) ; } else { String mssg = MESSAGE_MOST . renderToString ( message ) ; Main . fail ( holder , mssg , thrown ) ; } } } catch ( Throwable t ) { Main . fail ( holder , "thrown?" , t ) ; } } public void quit ( ) { } public void setHolder ( IMessageHolder holder ) { } protected boolean validArgs ( String [ ] args , boolean incremental , IMessageHandler handler ) { } protected void systemExit ( IMessageHolder messages ) { } protected void outMessage ( String message ) { } protected boolean report ( boolean pass , IMessageHolder holder ) { } protected static void fail ( IMessageHandler handler , String message , Throwable thrown ) { } public static class MessagePrinter implements IMessageHandler { public static final String THROWN_PREFIX = ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( "Exception<seq2seq4repair_space>thrown<seq2seq4repair_space>from<seq2seq4repair_space>AspectJ<seq2seq4repair_space>" + ( Version . text ) ) + ( LangUtil . EOL ) ) + "" ) + ( LangUtil . EOL ) ) + "Please<seq2seq4repair_space>email<seq2seq4repair_space>to<seq2seq4repair_space>us<seq2seq4repair_space>as<seq2seq4repair_space>follows:" ) + ( LangUtil . EOL ) ) + "<seq2seq4repair_space>to:<seq2seq4repair_space>jitterbug@aspectj.org" ) + ( LangUtil . EOL ) ) + "<seq2seq4repair_space>subject:<seq2seq4repair_space>top<seq2seq4repair_space>stack<seq2seq4repair_space>trace<seq2seq4repair_space>File:line,<seq2seq4repair_space>e.g.,<seq2seq4repair_space>\"SomeFile.java:243\"" ) + ( LangUtil . EOL ) ) + "<seq2seq4repair_space>message:<seq2seq4repair_space>copy<seq2seq4repair_space>the<seq2seq4repair_space>entire<seq2seq4repair_space>stack<seq2seq4repair_space>trace." ) + ( LangUtil . EOL ) ) + "" ) + ( LangUtil . EOL ) ) + "Your<seq2seq4repair_space>message<seq2seq4repair_space>can<seq2seq4repair_space>also<seq2seq4repair_space>request<seq2seq4repair_space>follow-up<seq2seq4repair_space>or<seq2seq4repair_space>provide<seq2seq4repair_space>a<seq2seq4repair_space>workaround." ) + ( LangUtil . EOL ) ) + "To<seq2seq4repair_space>make<seq2seq4repair_space>the<seq2seq4repair_space>bug<seq2seq4repair_space>a<seq2seq4repair_space>priority,<seq2seq4repair_space>please<seq2seq4repair_space>include<seq2seq4repair_space>a<seq2seq4repair_space>test<seq2seq4repair_space>program." ) + ( LangUtil . EOL ) ) + "" ) + ( LangUtil . EOL ) ) + "You<seq2seq4repair_space>may<seq2seq4repair_space>search<seq2seq4repair_space>for<seq2seq4repair_space>duplicate<seq2seq4repair_space>bugs<seq2seq4repair_space>(i.e.,<seq2seq4repair_space>known<seq2seq4repair_space>workarounds):" ) + ( LangUtil . EOL ) ) + "" ) + ( LangUtil . EOL ) ) + "http:////aspectj.org//bugs" ) + ( LangUtil . EOL ) ) + "http:////aspectj.org//bugs//incoming?expression=SomeFile.java:243" ) + ( LangUtil . EOL ) ) + "" ) + ( LangUtil . EOL ) ; public static final IMessageHandler VERBOSE = new Main . MessagePrinter ( true ) ; public static final IMessageHandler TERSE = new Main . MessagePrinter ( false ) ; final boolean verbose ; protected MessagePrinter ( boolean verbose ) { } public boolean handleMessage ( IMessage message ) { } protected String render ( IMessage message ) { } protected String render ( Throwable t ) { } public boolean isIgnoring ( IMessage . Kind kind ) { } protected PrintStream getStreamFor ( IMessage . Kind kind ) { } } public static class CommandController { public static String TAG_FILE_OPTION = "-XincrementalFile" ; public static String INCREMENTAL_OPTION = "-incremental" ; public static long MAX_DELAY = 1000 * 600 ; public static long DEFAULT_DELAY = 1000 * 5 ; private static String [ ] [ ] OPTIONS = new String [ ] [ ] { new String [ ] { Main . CommandController . INCREMENTAL_OPTION } , new String [ ] { Main . CommandController . TAG_FILE_OPTION , null } } ; private boolean running ; private boolean quit ; private boolean incremental ; private File tagFile ; private long fileModTime ;

Fix:
if ( ae . isSilent ( ) ) {