code: public static String getExceptionMessage(Throwable exception)
  	{
  		if (exception instanceof CoreException)
  		{
  			CoreException ce = (CoreException) exception;
  			Throwable throwable = ce.getStatus().getException();
  			if (throwable instanceof CoreException)
  			{
  				// Traverse nested CoreExceptions
  				return getExceptionMessage(throwable);
  			}
  			return ce.getStatus().getMessage();
  		}
  		String message = NLS.bind("Messages.VdmEvaluationAction_anExceptionOccurred", exception.getClass());
  		if (exception.getMessage() != null)
  		{
  			message = NLS.bind("Messages.VdmEvaluationAction_anExceptionOccurred2", message, exception.getMessage());
  		}
  		return message;
  	}
docs: Error reporting