Add stdalign.h and stdnoreturn.h. (#295)
These were added in C11 and removed in C23. The implementations are
no-ops in C++ and C >= C23 modes.
diff --git a/sdk/include/stdalign.h b/sdk/include/stdalign.h
new file mode 100644
index 0000000..65b5191
--- /dev/null
+++ b/sdk/include/stdalign.h
@@ -0,0 +1,27 @@
+#pragma once
+// SPDX-License-Identifier: MIT
+// Copyright CHERIoT Contributors
+
+/**
+ * This header is part of C11 (and supported for compatibility in older
+ * versions) but is gone in C23 because the C keywords matching their C++
+ * equivalents were added.
+ */
+#ifdef __STDC_VERSION__
+# if __STDC_VERSION__ < 202311L
+
+/**
+ * C++-compatible spelling for `_Alignas`.
+ */
+# define alignas(__x) _Alignas(__x)
+
+/**
+ * C++-compatible spelling for `_Alignof`.
+ */
+# define alignof(__x) _Alignof(__x)
+
+# define __alignas_is_defined 1
+# define __alignof_is_defined 1
+
+# endif
+#endif
diff --git a/sdk/include/stdnoreturn.h b/sdk/include/stdnoreturn.h
new file mode 100644
index 0000000..7a372e9
--- /dev/null
+++ b/sdk/include/stdnoreturn.h
@@ -0,0 +1,19 @@
+#pragma once
+// SPDX-License-Identifier: MIT
+// Copyright CHERIoT Contributors
+
+/**
+ * This header is part of C11 (and supported for compatibility in older
+ * versions) but is gone in C23 because the C keywords were moved out of the
+ * reserved-for-the-implementation namespace into the global one.
+ */
+#ifdef __STDC_VERSION__
+# if __STDC_VERSION__ < 202311L
+
+/**
+ * C++-compatible spelling for `_Noreturn`.
+ */
+# define noreturn _Noreturn
+
+# endif
+#endif