I had edited the functions.php file to add a ‘read-more’ link to the end of post snippets instead of the […] text.
Inadvertently I had added a new line outside of the php closing tag at the end of the file. As this file is included when rendering RSS feeds it created a blank line before the opening RSS tag – and any whitespace before the opening tag renders the XML document invalid… doh. It’s fixed now of course.
function new_excerpt_more($post)
{
return '... <a href="'.get_permalink($post->ID).'">'.'read more'.'</a>';
}
add_filter('excerpt_more', 'new_excerpt_more');