[libc++] Header inclusion tests.

As mandated by the Standard's various synopses, e.g. [iterator.synopsis].
Searching the TeX source for '#include' is a good way to find all of these
mandates.

The new tests are all autogenerated by utils/generate_header_inclusion_tests.py.
I was SHOCKED by how many mandates there are, and how many of them
libc++ wasn't conforming with.

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

GitOrigin-RevId: 2d0f1fa472a99dbb46735623363fe918feeda795
diff --git a/include/optional b/include/optional
index 97a0bbe..1de9c8a 100644
--- a/include/optional
+++ b/include/optional
@@ -150,6 +150,7 @@
 #include <__availability>
 #include <__debug>
 #include <__functional_base>
+#include <compare>
 #include <functional>
 #include <initializer_list>
 #include <new>