Buggy code:
public class DividendsPerformanceView extends AbstractListView implements ReportingPeriodListener { private ShowHideColumnHelper recordColumns ; private TableViewer records ; private TableViewer transactions ; private ReportingPeriodDropDown dropDown ; @ Override protected String getTitle ( ) { } @ Override protected void addButtons ( ToolBar toolBar ) { } private void addExportButton ( ToolBar toolBar ) { } private void addSaveButton ( ToolBar toolBar ) { } private void addConfigButton ( ToolBar toolBar ) { } @ Override protected void createTopTable ( Composite parent ) { } private void createCommonColumns ( ) { Column column = new Column ( "shares" , Messages . ColumnSharesOwned , SWT . RIGHT , 80 ) ; column . setLabelProvider ( new SharesLabelProvider ( ) { @ Override public Long getValue ( Object e ) { return ( ( SecurityPerformanceRecord ) ( e ) ) . getSharesHeld ( ) ; } @ Override public String getToolTipText ( Object e ) { return Share . format ( ( ( SecurityPerformanceRecord ) ( e ) ) . getSharesHeld ( ) ) ; } } ) ; column . setSorter ( ColumnViewerSorter . create ( SecurityPerformanceRecord . class , "sharesHeld" ) ) ; recordColumns . addColumn ( column ) ; column = new NameColumn ( ) ; recordColumns . addColumn ( column ) ; column = new Column ( "twror" , Messages . ColumnTWROR , SWT . RIGHT , 50 ) ; column . setMenuLabel ( ColumnTWROR_Description ) ; column . setLabelProvider ( new ColumnLabelProvider ( ) { @ Override public String getText ( Object r ) { return Percent2 . format ( ( ( SecurityPerformanceRecord ) ( r ) ) . getTrueTimeWeightedRateOfReturn ( ) ) ; } @ Override public Color getForeground ( Object e ) { <START_BUG> return DividendsPerformanceView . getColor ( ( ( SecurityPerformanceRecord ) ( e ) ) . getIrr ( ) ) ; <END_BUG> } } ) ; column . setSorter ( ColumnViewerSorter . create ( SecurityPerformanceRecord . class , "trueTimeWeightedRateOfReturn" ) ) ; recordColumns . addColumn ( column ) ; column = new Column ( "izf" , Messages . ColumnIRR , SWT . RIGHT , 50 ) ; column . setMenuLabel ( ColumnIRR_MenuLabel ) ; column . setLabelProvider ( new ColumnLabelProvider ( ) { @ Override public String getText ( Object r ) { return Percent2 . format ( ( ( SecurityPerformanceRecord ) ( r ) ) . getIrr ( ) ) ; } @ Override public Color getForeground ( Object e ) { return DividendsPerformanceView . getColor ( ( ( SecurityPerformanceRecord ) ( e ) ) . getIrr ( ) ) ; } } ) ; column . setSorter ( ColumnViewerSorter . create ( SecurityPerformanceRecord . class , "irr" ) ) ; recordColumns . addColumn ( column ) ; column = new Column ( "pv" , Messages . ColumnPurchaseValue , SWT . RIGHT , 75 ) ; column . setDescription ( ColumnPurchaseValue_Description ) ; column . setLabelProvider ( new ColumnLabelProvider ( ) { @ Override public String getText ( Object r ) { return Amount . format ( ( ( SecurityPerformanceRecord ) ( r ) ) . getFifoCost ( ) ) ; } } ) ; column . setSorter ( ColumnViewerSorter . create ( SecurityPerformanceRecord . class , "fifoCost" ) ) ; recordColumns . addColumn ( column ) ; column = new Column ( "pp" , Messages . ColumnPurchasePrice , SWT . RIGHT , 75 ) ; column . setDescription ( ColumnPurchasePrice_Description ) ; column . setLabelProvider ( new ColumnLabelProvider ( ) { @ Override public String getText ( Object r ) { return Amount . format ( ( ( SecurityPerformanceRecord ) ( r ) ) . getFifoCostPerSharesHeld ( ) ) ; } } ) ; column . setSorter ( ColumnViewerSorter . create ( SecurityPerformanceRecord . class , "fifoCostPerSharesHeld" ) ) ; recordColumns . addColumn ( column ) ; column = new Column ( "sumdiv" , Messages . ColumnDividendSum , SWT . RIGHT , 80 ) ; column . setMenuLabel ( ColumnDividendSum_MenuLabel ) ; column . setGroupLabel ( GroupLabelDividends ) ; column . setLabelProvider ( new ColumnLabelProvider ( ) { @ Override public String getText ( Object r ) { return Amount . format ( ( ( SecurityPerformanceRecord ) ( r ) ) . getSumOfDividends ( ) ) ; } } ) ; column . setSorter ( ColumnViewerSorter . create ( SecurityPerformanceRecord . class , "sumOfDividends" ) ) ; recordColumns . addColumn ( column ) ; column = new Column ( "mv" , Messages . ColumnMarketValue , SWT . RIGHT , 75 ) ; column . setLabelProvider ( new ColumnLabelProvider ( ) { @ Override public String getText ( Object r ) { return Amount . format ( ( ( SecurityPerformanceRecord ) ( r ) ) . getMarketValue ( ) ) ; } } ) ; column . setSorter ( ColumnViewerSorter . create ( SecurityPerformanceRecord . class , "marketValue" ) ) ; recordColumns . addColumn ( column ) ; column = new Column ( "delta" , Messages . ColumnDelta , SWT . RIGHT , 100 ) ; column . setDescription ( ColumnDelta_Description ) ; column . setLabelProvider ( new ColumnLabelProvider ( ) { @ Override public String getText ( Object r ) { return Amount . format ( ( ( SecurityPerformanceRecord ) ( r ) ) . getDelta ( ) ) ; } @ Override public Color getForeground ( Object e ) { return DividendsPerformanceView . getColor ( ( ( SecurityPerformanceRecord ) ( e ) ) . getDelta ( ) ) ; } } ) ; column . setSorter ( ColumnViewerSorter . create ( SecurityPerformanceRecord . class , "delta" ) ) ; recordColumns . addColumn ( column ) ; column = new Column ( "fees" , Messages . ColumnFees , SWT . RIGHT , 80 ) ; column . setDescription ( ColumnFees_Description ) ; column . setLabelProvider ( new ColumnLabelProvider ( ) { @ Override public String getText ( Object r ) { return Amount . format ( ( ( SecurityPerformanceRecord ) ( r ) ) . getFees ( ) ) ; } } ) ;

Fix:
return DividendsPerformanceView . getColor ( ( ( SecurityPerformanceRecord ) ( e ) ) . getTrueTimeWeightedRateOfReturn ( ) ) ;