I have been scratching my head about this for months, we have about 100 Not found links with 404 response codes.
The response code is correct as these pages do no exist anymore, however the thing that is confusing when i look to see which pages they are linked from they are calling from page which do not exist and have redirects on them or from the site map.
For example if the page "/red-boots" had a response code of 404. I check where it is linking from and it says /boots/shoes" and the sitemap.
When i check the url "/boots/shoes", it has a redirect to "/shoes" however google isnt seeing that redirect it is just finding the old links on "/boots/shoes".
I have regenerate a sitemap and that hasn't helped, i marked them all as fixed and within 2 days they were all back. So if somebody could shine a bit of light on why google is looking at unpublished pages and not following the redirects that would be brilliant.