Buggy code:
public class Link extends Control { String text ; TextLayout layout ; Color linkColor ; Color linkDisabledColor ; Point [ ] offsets ; Point selection ; String [ ] ids ; int [ ] mnemonics ; int focusIndex ; int font ; static final RGB LINK_FOREGROUND = new RGB ( 0 , 51 , 153 ) ; static final int LinkProc ; static final TCHAR LinkClass = new TCHAR ( 0 , OS . WC_LINK , true ) ; public Link ( Composite parent , int style ) { } public void addSelectionListener ( SelectionListener listener ) { } int callWindowProc ( int hwnd , int msg , int wParam , int lParam ) { } public Point computeSize ( int wHint , int hHint , boolean changed ) { } void createHandle ( ) { } void createWidget ( ) { } void drawWidget ( GC gc , RECT rect ) { } void enableWidget ( boolean enabled ) { } void initAccessible ( ) { Accessible accessible = getAccessible ( ) ; accessible . addAccessibleListener ( new AccessibleAdapter ( ) { public void getName ( AccessibleEvent e ) { e . result = parse ( text ) ; } } ) ; accessible . addAccessibleControlListener ( new AccessibleControlAdapter ( ) { public void getChildAtPoint ( AccessibleControlEvent e ) { e . childID = ACC . CHILDID_SELF ; } public void getLocation ( AccessibleControlEvent e ) { Rectangle rect = display . map ( getParent ( ) , null , getBounds ( ) ) ; e . x = rect . x ; e . y = rect . y ; e . width = rect . width ; e . height = rect . height ; } public void getChildCount ( AccessibleControlEvent e ) { e . detail = 0 ; } public void getRole ( AccessibleControlEvent e ) { e . detail = ACC . ROLE_LINK ; } public void getState ( AccessibleControlEvent e ) { e . detail = ACC . STATE_FOCUSABLE ; if ( hasFocus ( ) ) e . detail |= ACC . STATE_FOCUSED ; } public void getDefaultAction ( AccessibleControlEvent e ) { <START_BUG> e . result = "Press" ; <END_BUG> } public void getSelection ( AccessibleControlEvent e ) { if ( hasFocus ( ) ) e . childID = ACC . CHILDID_SELF ; } public void getFocus ( AccessibleControlEvent e ) { if ( hasFocus ( ) ) e . childID = ACC . CHILDID_SELF ; } } ) ; } String getNameText ( ) { } Rectangle [ ] getRectangles ( int linkIndex ) { } public String getText ( ) { } String parse ( String string ) { } int parseMnemonics ( char [ ] buffer , int start , int end , StringBuffer result ) { } void releaseWidget ( ) { } public void removeSelectionListener ( SelectionListener listener ) { } public void setText ( String string ) { } int widgetStyle ( ) { } TCHAR windowClass ( ) { } int windowProc ( ) { } LRESULT WM_CHAR ( int wParam , int lParam ) { } LRESULT WM_GETDLGCODE ( int wParam , int lParam ) { } LRESULT WM_GETFONT ( int wParam , int lParam ) { } LRESULT WM_KEYDOWN ( int wParam , int lParam ) { } LRESULT WM_KILLFOCUS ( int wParam , int lParam ) { } LRESULT WM_LBUTTONDOWN ( int wParam , int lParam ) { } LRESULT WM_LBUTTONUP ( int wParam , int lParam ) { } LRESULT WM_MOUSEMOVE ( int wParam , int lParam ) { } LRESULT WM_PAINT ( int wParam , int lParam ) { } LRESULT WM_PRINTCLIENT ( int wParam , int lParam ) { } LRESULT WM_SETFOCUS ( int wParam , int lParam ) { } LRESULT WM_SETFONT ( int wParam , int lParam ) { } LRESULT WM_SIZE ( int wParam , int lParam ) { } LRESULT wmNotifyChild ( int wParam , int lParam ) { } }

Fix:
e . result = SWT . getMessage ( "SWT_Press" ) ;