[libc++] Implement P0627R6 (Function to mark unreachable code)

Reviewed By: ldionne, Quuxplusone, #libc

Spies: arichardson, mstorsjo, libcxx-commits, mgorny

Differential Revision: https://reviews.llvm.org/D119152

NOKEYCHECK=True
GitOrigin-RevId: 2a8f9a5e95dec3adcdee603358dc03def6d2245e
diff --git a/include/fstream b/include/fstream
index aa5d7e2..9ee3d14 100644
--- a/include/fstream
+++ b/include/fstream
@@ -183,6 +183,7 @@
 #include <__config>
 #include <__debug>
 #include <__locale>
+#include <__utility/unreachable.h>
 #include <cstdio>
 #include <cstdlib>
 #include <istream>
@@ -538,7 +539,7 @@
   default:
     return nullptr;
   }
-  _LIBCPP_UNREACHABLE();
+  __libcpp_unreachable();
 }
 
 template <class _CharT, class _Traits>