git: 19ff93c921a9 - main - Revert 00bee6fcd77f, which partially reverted libc++ commit aa7f377c965c
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 01 May 2026 18:42:25 UTC
The branch main has been updated by dim:
URL: https://cgit.FreeBSD.org/src/commit/?id=19ff93c921a9d31770bcfc194c078e7a42a5f14f
commit 19ff93c921a9d31770bcfc194c078e7a42a5f14f
Author: Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2026-05-01 18:12:55 +0000
Commit: Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2026-05-01 18:16:18 +0000
Revert 00bee6fcd77f, which partially reverted libc++ commit aa7f377c965c
After base 966fb94cb357, this revert is no longer necessary: stdint.h
will unconditionally define macros such as `SIZE_MAX`, `UINT64_C`, and
others.
Submitted by: Nikolas Klauser <nikolasklauser@berlin.de>
MFC after: 1 month
Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D56746
---
ObsoleteFiles.inc | 3 +
contrib/llvm-project/libcxx/include/cstdint | 8 --
contrib/llvm-project/libcxx/include/stdint.h | 127 ---------------------------
lib/libc++/Makefile | 1 -
lib/libc++/module.modulemap | 4 -
5 files changed, 3 insertions(+), 140 deletions(-)
diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc
index 0073b4f13c6c..e290992077d2 100644
--- a/ObsoleteFiles.inc
+++ b/ObsoleteFiles.inc
@@ -51,6 +51,9 @@
# xargs -n1 | sort | uniq -d;
# done
+# 20260430: Provide stdint.h macros unconditionally
+OLD_FILES+=usr/include/c++/v1/stdint.h
+
# 20260426: Regenerate trust store
OLD_FILES+=usr/share/certs/trusted/Entrust_net_Premium_2048_Secure_Server_CA.pem
OLD_FILES+=usr/share/certs/trusted/AffirmTrust_Premium.pem
diff --git a/contrib/llvm-project/libcxx/include/cstdint b/contrib/llvm-project/libcxx/include/cstdint
index 7ae82f656fc9..11839eeb071e 100644
--- a/contrib/llvm-project/libcxx/include/cstdint
+++ b/contrib/llvm-project/libcxx/include/cstdint
@@ -149,14 +149,6 @@ Types:
# include <stdint.h>
# endif
-# ifndef _LIBCPP_STDINT_H
-# error <cstdint> tried including <stdint.h> but didn't find libc++'s <stdint.h> header. \
- This usually means that your header search paths are not configured properly. \
- The header search paths should contain the C++ Standard Library headers before \
- any C Standard Library, and you are probably using compiler flags that make that \
- not be the case.
-# endif
-
# if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
# endif
diff --git a/contrib/llvm-project/libcxx/include/stdint.h b/contrib/llvm-project/libcxx/include/stdint.h
deleted file mode 100644
index 35e5b8cbdad2..000000000000
--- a/contrib/llvm-project/libcxx/include/stdint.h
+++ /dev/null
@@ -1,127 +0,0 @@
-// -*- C++ -*-
-//===----------------------------------------------------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef _LIBCPP_STDINT_H
-// AIX system headers need stdint.h to be re-enterable while _STD_TYPES_T
-// is defined until an inclusion of it without _STD_TYPES_T occurs, in which
-// case the header guard macro is defined.
-#if !defined(_AIX) || !defined(_STD_TYPES_T)
-# define _LIBCPP_STDINT_H
-#endif // _STD_TYPES_T
-
-/*
- stdint.h synopsis
-
-Macros:
-
- INT8_MIN
- INT16_MIN
- INT32_MIN
- INT64_MIN
-
- INT8_MAX
- INT16_MAX
- INT32_MAX
- INT64_MAX
-
- UINT8_MAX
- UINT16_MAX
- UINT32_MAX
- UINT64_MAX
-
- INT_LEAST8_MIN
- INT_LEAST16_MIN
- INT_LEAST32_MIN
- INT_LEAST64_MIN
-
- INT_LEAST8_MAX
- INT_LEAST16_MAX
- INT_LEAST32_MAX
- INT_LEAST64_MAX
-
- UINT_LEAST8_MAX
- UINT_LEAST16_MAX
- UINT_LEAST32_MAX
- UINT_LEAST64_MAX
-
- INT_FAST8_MIN
- INT_FAST16_MIN
- INT_FAST32_MIN
- INT_FAST64_MIN
-
- INT_FAST8_MAX
- INT_FAST16_MAX
- INT_FAST32_MAX
- INT_FAST64_MAX
-
- UINT_FAST8_MAX
- UINT_FAST16_MAX
- UINT_FAST32_MAX
- UINT_FAST64_MAX
-
- INTPTR_MIN
- INTPTR_MAX
- UINTPTR_MAX
-
- INTMAX_MIN
- INTMAX_MAX
-
- UINTMAX_MAX
-
- PTRDIFF_MIN
- PTRDIFF_MAX
-
- SIG_ATOMIC_MIN
- SIG_ATOMIC_MAX
-
- SIZE_MAX
-
- WCHAR_MIN
- WCHAR_MAX
-
- WINT_MIN
- WINT_MAX
-
- INT8_C(value)
- INT16_C(value)
- INT32_C(value)
- INT64_C(value)
-
- UINT8_C(value)
- UINT16_C(value)
- UINT32_C(value)
- UINT64_C(value)
-
- INTMAX_C(value)
- UINTMAX_C(value)
-
-*/
-
-#include <__config>
-
-#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
-# pragma GCC system_header
-#endif
-
-/* C99 stdlib (e.g. glibc < 2.18) does not provide macros needed
- for C++11 unless __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS
- are defined
-*/
-#if defined(__cplusplus) && !defined(__STDC_LIMIT_MACROS)
-# define __STDC_LIMIT_MACROS
-#endif
-#if defined(__cplusplus) && !defined(__STDC_CONSTANT_MACROS)
-# define __STDC_CONSTANT_MACROS
-#endif
-
-#if __has_include_next(<stdint.h>)
-# include_next <stdint.h>
-#endif
-
-#endif // _LIBCPP_STDINT_H
diff --git a/lib/libc++/Makefile b/lib/libc++/Makefile
index 03b04afee7cc..4e487f0e8457 100644
--- a/lib/libc++/Makefile
+++ b/lib/libc++/Makefile
@@ -232,7 +232,6 @@ STD_HEADERS+= stdatomic.h
STD_HEADERS+= stdbool.h
STD_HEADERS+= stddef.h
STD_HEADERS+= stdexcept
-STD_HEADERS+= stdint.h
STD_HEADERS+= stdio.h
STD_HEADERS+= stdlib.h
STD_HEADERS+= stop_token
diff --git a/lib/libc++/module.modulemap b/lib/libc++/module.modulemap
index 90d61bf5f44a..a6e6059ab60e 100644
--- a/lib/libc++/module.modulemap
+++ b/lib/libc++/module.modulemap
@@ -2433,10 +2433,6 @@ module std_stddef_h [system] {
// <stddef.h> supports being included multiple times with different pre-defined macros
textual header "stddef.h"
}
-module std_stdint_h [system] {
- // <stdint.h> supports being included multiple times with different pre-defined macros
- textual header "stdint.h"
-}
module std_stdio_h [system] {
// <stdio.h> supports being included multiple times with different pre-defined macros
textual header "stdio.h"