Problem/Motivation
When the language switcher block is rendered for 404 pages an interesting thing happens. Without big_pipe enabled we get links to system/404 - so we get links to pages which are a 200 response but with 404 content. With big_pipe enabled and a logged-in user we get links to the front page. This is because only the sub-request has the correct routing information.
Steps to reproduce
Once #3348592: [regression] Language switcher block throws exception when no route is matched run \Drupal\Tests\language\Functional\LanguageSwitchingTest::testLanguageBlock()
Proposed resolution
Not sure. But the fact that system/401, system/403, system/404 and system/4xx are all valid URLs on a Drupal site is very odd. If you hit them directly they all return a 200 response.