diff options
author | Jason Merrill <jason@redhat.com> | 2024-09-12 12:15:51 -0400 |
---|---|---|
committer | Jason Merrill <jason@redhat.com> | 2024-09-25 08:20:45 -0400 |
commit | 63a598deb0c9fcb8704af6ef90f0b905942b0276 (patch) | |
tree | 9e3b7ae67e2e7d3f273115aa7bff981ff4e5fddc /libstdc++-v3/include/experimental | |
parent | 2407dbe1d887068a13c6ee9b6922560f1c89def5 (diff) | |
download | gcc-63a598deb0c9fcb8704af6ef90f0b905942b0276.zip gcc-63a598deb0c9fcb8704af6ef90f0b905942b0276.tar.gz gcc-63a598deb0c9fcb8704af6ef90f0b905942b0276.tar.bz2 |
libstdc++: #ifdef out #pragma GCC system_header
In r15-3714-gd3a7302ec5985a I added -Wsystem-headers to the libstdc++ build
flags to help catch problems in the library. This patch takes a different
approach, of disabling the #pragma system_header unless _GLIBCXX_SYSHDR is
defined. As a result, the testsuites will treat them as non-system-headers
to get better warning coverage during regression testing of both gcc and
libstdc++, not just when building the library.
My rationale for the #ifdef instead of just removing the #pragma is the
three G++ tests that want to test libstdc++ system header behavior, so we
need a way to select it.
This doesn't affect installed libraries, as they get their
system-header status from the lookup path. But testsuite_flags
--build-includes gives -I directives rather than -isystem.
This patch doesn't change the headers in config/ because I'm not compiling
with most of them, so won't see any warnings that need fixing. Adjusting
them could happen later, or we can not bother.
libstdc++-v3/ChangeLog:
* acinclude.m4 (WARN_FLAGS): Remove -Wsystem-headers.
* configure: Regenerate.
* include/bits/algorithmfwd.h: #ifdef out #pragma GCC system_header.
* include/bits/atomic_base.h
* include/bits/atomic_futex.h
* include/bits/atomic_timed_wait.h
* include/bits/atomic_wait.h
* include/bits/basic_ios.h
* include/bits/basic_string.h
* include/bits/boost_concept_check.h
* include/bits/char_traits.h
* include/bits/charconv.h
* include/bits/chrono.h
* include/bits/chrono_io.h
* include/bits/codecvt.h
* include/bits/concept_check.h
* include/bits/cpp_type_traits.h
* include/bits/elements_of.h
* include/bits/enable_special_members.h
* include/bits/erase_if.h
* include/bits/forward_list.h
* include/bits/functional_hash.h
* include/bits/gslice.h
* include/bits/gslice_array.h
* include/bits/hashtable.h
* include/bits/indirect_array.h
* include/bits/invoke.h
* include/bits/ios_base.h
* include/bits/iterator_concepts.h
* include/bits/locale_classes.h
* include/bits/locale_facets.h
* include/bits/locale_facets_nonio.h
* include/bits/localefwd.h
* include/bits/mask_array.h
* include/bits/max_size_type.h
* include/bits/memory_resource.h
* include/bits/memoryfwd.h
* include/bits/move_only_function.h
* include/bits/node_handle.h
* include/bits/ostream_insert.h
* include/bits/out_ptr.h
* include/bits/parse_numbers.h
* include/bits/postypes.h
* include/bits/quoted_string.h
* include/bits/range_access.h
* include/bits/ranges_base.h
* include/bits/refwrap.h
* include/bits/sat_arith.h
* include/bits/semaphore_base.h
* include/bits/slice_array.h
* include/bits/std_abs.h
* include/bits/std_function.h
* include/bits/std_mutex.h
* include/bits/std_thread.h
* include/bits/stl_iterator_base_funcs.h
* include/bits/stl_iterator_base_types.h
* include/bits/stl_tree.h
* include/bits/stream_iterator.h
* include/bits/streambuf_iterator.h
* include/bits/stringfwd.h
* include/bits/this_thread_sleep.h
* include/bits/unique_lock.h
* include/bits/uses_allocator_args.h
* include/bits/utility.h
* include/bits/valarray_after.h
* include/bits/valarray_array.h
* include/bits/valarray_before.h
* include/bits/version.h
* include/c_compatibility/fenv.h
* include/c_compatibility/inttypes.h
* include/c_compatibility/stdint.h
* include/decimal/decimal.h
* include/experimental/bits/net.h
* include/experimental/bits/shared_ptr.h
* include/ext/aligned_buffer.h
* include/ext/alloc_traits.h
* include/ext/atomicity.h
* include/ext/concurrence.h
* include/ext/numeric_traits.h
* include/ext/pod_char_traits.h
* include/ext/pointer.h
* include/ext/stdio_filebuf.h
* include/ext/stdio_sync_filebuf.h
* include/ext/string_conversions.h
* include/ext/type_traits.h
* include/ext/vstring.h
* include/ext/vstring_fwd.h
* include/ext/vstring_util.h
* include/parallel/algorithmfwd.h
* include/parallel/numericfwd.h
* include/tr1/functional_hash.h
* include/tr1/hashtable.h
* include/tr1/random.h
* libsupc++/exception.h
* libsupc++/hash_bytes.h
* include/bits/basic_ios.tcc
* include/bits/basic_string.tcc
* include/bits/fstream.tcc
* include/bits/istream.tcc
* include/bits/locale_classes.tcc
* include/bits/locale_facets.tcc
* include/bits/locale_facets_nonio.tcc
* include/bits/ostream.tcc
* include/bits/sstream.tcc
* include/bits/streambuf.tcc
* include/bits/string_view.tcc
* include/bits/version.tpl
* include/experimental/bits/string_view.tcc
* include/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp
* include/ext/random.tcc
* include/ext/vstring.tcc
* include/tr2/bool_set.tcc
* include/tr2/dynamic_bitset.tcc
* include/bits/c++config
* include/c/cassert
* include/c/cctype
* include/c/cerrno
* include/c/cfloat
* include/c/ciso646
* include/c/climits
* include/c/clocale
* include/c/cmath
* include/c/csetjmp
* include/c/csignal
* include/c/cstdarg
* include/c/cstddef
* include/c/cstdio
* include/c/cstdlib
* include/c/cstring
* include/c/ctime
* include/c/cuchar
* include/c/cwchar
* include/c/cwctype
* include/c_global/cassert
* include/c_global/ccomplex
* include/c_global/cctype
* include/c_global/cerrno
* include/c_global/cfenv
* include/c_global/cfloat
* include/c_global/cinttypes
* include/c_global/ciso646
* include/c_global/climits
* include/c_global/clocale
* include/c_global/cmath
* include/c_global/csetjmp
* include/c_global/csignal
* include/c_global/cstdalign
* include/c_global/cstdarg
* include/c_global/cstdbool
* include/c_global/cstddef
* include/c_global/cstdint
* include/c_global/cstdio
* include/c_global/cstdlib
* include/c_global/cstring
* include/c_global/ctgmath
* include/c_global/ctime
* include/c_global/cuchar
* include/c_global/cwchar
* include/c_global/cwctype
* include/c_std/cassert
* include/c_std/cctype
* include/c_std/cerrno
* include/c_std/cfloat
* include/c_std/ciso646
* include/c_std/climits
* include/c_std/clocale
* include/c_std/cmath
* include/c_std/csetjmp
* include/c_std/csignal
* include/c_std/cstdarg
* include/c_std/cstddef
* include/c_std/cstdio
* include/c_std/cstdlib
* include/c_std/cstring
* include/c_std/ctime
* include/c_std/cuchar
* include/c_std/cwchar
* include/c_std/cwctype
* include/debug/array
* include/debug/bitset
* include/debug/deque
* include/debug/forward_list
* include/debug/list
* include/debug/map
* include/debug/set
* include/debug/string
* include/debug/unordered_map
* include/debug/unordered_set
* include/debug/vector
* include/decimal/decimal
* include/experimental/algorithm
* include/experimental/any
* include/experimental/array
* include/experimental/buffer
* include/experimental/chrono
* include/experimental/contract
* include/experimental/deque
* include/experimental/executor
* include/experimental/filesystem
* include/experimental/forward_list
* include/experimental/functional
* include/experimental/internet
* include/experimental/io_context
* include/experimental/iterator
* include/experimental/list
* include/experimental/map
* include/experimental/memory
* include/experimental/memory_resource
* include/experimental/net
* include/experimental/netfwd
* include/experimental/numeric
* include/experimental/propagate_const
* include/experimental/ratio
* include/experimental/regex
* include/experimental/scope
* include/experimental/set
* include/experimental/socket
* include/experimental/string
* include/experimental/string_view
* include/experimental/synchronized_value
* include/experimental/system_error
* include/experimental/timer
* include/experimental/tuple
* include/experimental/type_traits
* include/experimental/unordered_map
* include/experimental/unordered_set
* include/experimental/vector
* include/ext/algorithm
* include/ext/cmath
* include/ext/functional
* include/ext/iterator
* include/ext/memory
* include/ext/numeric
* include/ext/random
* include/ext/rb_tree
* include/ext/rope
* include/parallel/algorithm
* include/std/algorithm
* include/std/any
* include/std/array
* include/std/atomic
* include/std/barrier
* include/std/bit
* include/std/bitset
* include/std/charconv
* include/std/chrono
* include/std/codecvt
* include/std/complex
* include/std/concepts
* include/std/condition_variable
* include/std/coroutine
* include/std/deque
* include/std/execution
* include/std/expected
* include/std/filesystem
* include/std/format
* include/std/forward_list
* include/std/fstream
* include/std/functional
* include/std/future
* include/std/generator
* include/std/iomanip
* include/std/ios
* include/std/iosfwd
* include/std/iostream
* include/std/istream
* include/std/iterator
* include/std/latch
* include/std/limits
* include/std/list
* include/std/locale
* include/std/map
* include/std/memory
* include/std/memory_resource
* include/std/mutex
* include/std/numbers
* include/std/numeric
* include/std/optional
* include/std/ostream
* include/std/print
* include/std/queue
* include/std/random
* include/std/ranges
* include/std/ratio
* include/std/regex
* include/std/scoped_allocator
* include/std/semaphore
* include/std/set
* include/std/shared_mutex
* include/std/span
* include/std/spanstream
* include/std/sstream
* include/std/stack
* include/std/stacktrace
* include/std/stdexcept
* include/std/streambuf
* include/std/string
* include/std/string_view
* include/std/syncstream
* include/std/system_error
* include/std/text_encoding
* include/std/thread
* include/std/tuple
* include/std/type_traits
* include/std/typeindex
* include/std/unordered_map
* include/std/unordered_set
* include/std/utility
* include/std/valarray
* include/std/variant
* include/std/vector
* include/std/version
* include/tr1/array
* include/tr1/cfenv
* include/tr1/cinttypes
* include/tr1/cmath
* include/tr1/complex
* include/tr1/cstdbool
* include/tr1/cstdint
* include/tr1/cstdio
* include/tr1/cstdlib
* include/tr1/cwchar
* include/tr1/cwctype
* include/tr1/functional
* include/tr1/memory
* include/tr1/random
* include/tr1/regex
* include/tr1/tuple
* include/tr1/type_traits
* include/tr1/unordered_map
* include/tr1/unordered_set
* include/tr1/utility
* include/tr2/bool_set
* include/tr2/dynamic_bitset
* include/tr2/type_traits
* libsupc++/atomic_lockfree_defines.h
* libsupc++/compare
* libsupc++/cxxabi.h
* libsupc++/cxxabi_forced.h
* libsupc++/cxxabi_init_exception.h
* libsupc++/exception
* libsupc++/initializer_list
* libsupc++/new
* libsupc++/typeinfo: Likewise.
* testsuite/20_util/ratio/operations/ops_overflow_neg.cc
* testsuite/23_containers/array/tuple_interface/get_neg.cc
* testsuite/23_containers/vector/cons/destructible_debug_neg.cc
* testsuite/24_iterators/operations/prev_neg.cc
* testsuite/ext/type_traits/add_unsigned_floating_neg.cc
* testsuite/ext/type_traits/add_unsigned_integer_neg.cc
* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc
* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Adjust
line numbers.
gcc/testsuite/ChangeLog
* g++.dg/analyzer/fanalyzer-show-events-in-system-headers-default.C
* g++.dg/analyzer/fanalyzer-show-events-in-system-headers-no.C
* g++.dg/diagnostic/disable.C: #define _GLIBCXX_SYSHDR.
Diffstat (limited to 'libstdc++-v3/include/experimental')
40 files changed, 80 insertions, 0 deletions
diff --git a/libstdc++-v3/include/experimental/algorithm b/libstdc++-v3/include/experimental/algorithm index 1953dab..49403c9 100644 --- a/libstdc++-v3/include/experimental/algorithm +++ b/libstdc++-v3/include/experimental/algorithm @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_ALGORITHM #define _GLIBCXX_EXPERIMENTAL_ALGORITHM 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/any b/libstdc++-v3/include/experimental/any index 3db30df..79b6268 100644 --- a/libstdc++-v3/include/experimental/any +++ b/libstdc++-v3/include/experimental/any @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_ANY #define _GLIBCXX_EXPERIMENTAL_ANY 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/array b/libstdc++-v3/include/experimental/array index bb46e0f..14a2e6e 100644 --- a/libstdc++-v3/include/experimental/array +++ b/libstdc++-v3/include/experimental/array @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_ARRAY #define _GLIBCXX_EXPERIMENTAL_ARRAY 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/bits/net.h b/libstdc++-v3/include/experimental/bits/net.h index 9697069..d536d86 100644 --- a/libstdc++-v3/include/experimental/bits/net.h +++ b/libstdc++-v3/include/experimental/bits/net.h @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_NET_H #define _GLIBCXX_EXPERIMENTAL_NET_H 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #if __cplusplus >= 201402L diff --git a/libstdc++-v3/include/experimental/bits/shared_ptr.h b/libstdc++-v3/include/experimental/bits/shared_ptr.h index f30d9a7..9a5659c 100644 --- a/libstdc++-v3/include/experimental/bits/shared_ptr.h +++ b/libstdc++-v3/include/experimental/bits/shared_ptr.h @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_SHARED_PTR_H #define _GLIBCXX_EXPERIMENTAL_SHARED_PTR_H 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #if __cplusplus >= 201402L diff --git a/libstdc++-v3/include/experimental/bits/string_view.tcc b/libstdc++-v3/include/experimental/bits/string_view.tcc index 80de34d..c0e1ab5 100644 --- a/libstdc++-v3/include/experimental/bits/string_view.tcc +++ b/libstdc++-v3/include/experimental/bits/string_view.tcc @@ -34,7 +34,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_STRING_VIEW_TCC #define _GLIBCXX_EXPERIMENTAL_STRING_VIEW_TCC 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #if __cplusplus >= 201402L diff --git a/libstdc++-v3/include/experimental/buffer b/libstdc++-v3/include/experimental/buffer index 054150e..87137dc 100644 --- a/libstdc++-v3/include/experimental/buffer +++ b/libstdc++-v3/include/experimental/buffer @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_BUFFER #define _GLIBCXX_EXPERIMENTAL_BUFFER 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/chrono b/libstdc++-v3/include/experimental/chrono index c5395ca..61ca839 100644 --- a/libstdc++-v3/include/experimental/chrono +++ b/libstdc++-v3/include/experimental/chrono @@ -34,7 +34,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_CHRONO #define _GLIBCXX_EXPERIMENTAL_CHRONO 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/contract b/libstdc++-v3/include/experimental/contract index 84f4433..98d42ba 100644 --- a/libstdc++-v3/include/experimental/contract +++ b/libstdc++-v3/include/experimental/contract @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_CONTRACT #define _GLIBCXX_CONTRACT 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #if __cplusplus >= 201703L diff --git a/libstdc++-v3/include/experimental/deque b/libstdc++-v3/include/experimental/deque index de5d46c..3ee39de 100644 --- a/libstdc++-v3/include/experimental/deque +++ b/libstdc++-v3/include/experimental/deque @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_DEQUE #define _GLIBCXX_EXPERIMENTAL_DEQUE 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/executor b/libstdc++-v3/include/experimental/executor index f64783b..cce5347 100644 --- a/libstdc++-v3/include/experimental/executor +++ b/libstdc++-v3/include/experimental/executor @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_EXECUTOR #define _GLIBCXX_EXPERIMENTAL_EXECUTOR 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/filesystem b/libstdc++-v3/include/experimental/filesystem index 82df075..182b148 100644 --- a/libstdc++-v3/include/experimental/filesystem +++ b/libstdc++-v3/include/experimental/filesystem @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_FILESYSTEM #define _GLIBCXX_EXPERIMENTAL_FILESYSTEM 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/forward_list b/libstdc++-v3/include/experimental/forward_list index 35d50f4..e1e3b03 100644 --- a/libstdc++-v3/include/experimental/forward_list +++ b/libstdc++-v3/include/experimental/forward_list @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_FORWARD_LIST #define _GLIBCXX_EXPERIMENTAL_FORWARD_LIST 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/functional b/libstdc++-v3/include/experimental/functional index b145173..cf420af 100644 --- a/libstdc++-v3/include/experimental/functional +++ b/libstdc++-v3/include/experimental/functional @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_FUNCTIONAL #define _GLIBCXX_EXPERIMENTAL_FUNCTIONAL 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/internet b/libstdc++-v3/include/experimental/internet index 3f5090c..d6b1319a 100644 --- a/libstdc++-v3/include/experimental/internet +++ b/libstdc++-v3/include/experimental/internet @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_INTERNET #define _GLIBCXX_EXPERIMENTAL_INTERNET +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/io_context b/libstdc++-v3/include/experimental/io_context index 8b0dba7..3bcc145 100644 --- a/libstdc++-v3/include/experimental/io_context +++ b/libstdc++-v3/include/experimental/io_context @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_IO_SERVICE #define _GLIBCXX_EXPERIMENTAL_IO_SERVICE 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/iterator b/libstdc++-v3/include/experimental/iterator index 51ecd29..96dfe84 100644 --- a/libstdc++-v3/include/experimental/iterator +++ b/libstdc++-v3/include/experimental/iterator @@ -34,7 +34,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_ITERATOR #define _GLIBCXX_EXPERIMENTAL_ITERATOR 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/list b/libstdc++-v3/include/experimental/list index 5bebf3c..27c9dfd 100644 --- a/libstdc++-v3/include/experimental/list +++ b/libstdc++-v3/include/experimental/list @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_LIST #define _GLIBCXX_EXPERIMENTAL_LIST 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/map b/libstdc++-v3/include/experimental/map index 414c023..3f0f533 100644 --- a/libstdc++-v3/include/experimental/map +++ b/libstdc++-v3/include/experimental/map @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_MAP #define _GLIBCXX_EXPERIMENTAL_MAP 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/memory b/libstdc++-v3/include/experimental/memory index ca6a364..0f8f1b8 100644 --- a/libstdc++-v3/include/experimental/memory +++ b/libstdc++-v3/include/experimental/memory @@ -34,7 +34,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_MEMORY #define _GLIBCXX_EXPERIMENTAL_MEMORY 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/memory_resource b/libstdc++-v3/include/experimental/memory_resource index bc2fdbf..c36bb88 100644 --- a/libstdc++-v3/include/experimental/memory_resource +++ b/libstdc++-v3/include/experimental/memory_resource @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_MEMORY_RESOURCE #define _GLIBCXX_EXPERIMENTAL_MEMORY_RESOURCE 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/net b/libstdc++-v3/include/experimental/net index a84fdf4..90c604c 100644 --- a/libstdc++-v3/include/experimental/net +++ b/libstdc++-v3/include/experimental/net @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_NET #define _GLIBCXX_EXPERIMENTAL_NET +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/netfwd b/libstdc++-v3/include/experimental/netfwd index e273810..17f8676 100644 --- a/libstdc++-v3/include/experimental/netfwd +++ b/libstdc++-v3/include/experimental/netfwd @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_NETFWD #define _GLIBCXX_EXPERIMENTAL_NETFWD 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/numeric b/libstdc++-v3/include/experimental/numeric index 42580b7..7f06d56 100644 --- a/libstdc++-v3/include/experimental/numeric +++ b/libstdc++-v3/include/experimental/numeric @@ -34,7 +34,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_NUMERIC #define _GLIBCXX_EXPERIMENTAL_NUMERIC 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/propagate_const b/libstdc++-v3/include/experimental/propagate_const index a3682ae..829a82d 100644 --- a/libstdc++-v3/include/experimental/propagate_const +++ b/libstdc++-v3/include/experimental/propagate_const @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_PROPAGATE_CONST #define _GLIBCXX_EXPERIMENTAL_PROPAGATE_CONST 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/ratio b/libstdc++-v3/include/experimental/ratio index 5b96e72..1325bea 100644 --- a/libstdc++-v3/include/experimental/ratio +++ b/libstdc++-v3/include/experimental/ratio @@ -34,7 +34,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_RATIO #define _GLIBCXX_EXPERIMENTAL_RATIO 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/regex b/libstdc++-v3/include/experimental/regex index d04dc1e..3c7802c 100644 --- a/libstdc++-v3/include/experimental/regex +++ b/libstdc++-v3/include/experimental/regex @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_REGEX #define _GLIBCXX_EXPERIMENTAL_REGEX 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/scope b/libstdc++-v3/include/experimental/scope index ea273e8..6e1d342 100644 --- a/libstdc++-v3/include/experimental/scope +++ b/libstdc++-v3/include/experimental/scope @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_SCOPE #define _GLIBCXX_EXPERIMENTAL_SCOPE 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/set b/libstdc++-v3/include/experimental/set index 4ccbf6f..6758119 100644 --- a/libstdc++-v3/include/experimental/set +++ b/libstdc++-v3/include/experimental/set @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_SET #define _GLIBCXX_EXPERIMENTAL_SET 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/socket b/libstdc++-v3/include/experimental/socket index 62beb43..8fb9c03 100644 --- a/libstdc++-v3/include/experimental/socket +++ b/libstdc++-v3/include/experimental/socket @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_SOCKET #define _GLIBCXX_EXPERIMENTAL_SOCKET +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/string b/libstdc++-v3/include/experimental/string index d6b18b9..8ab6041 100644 --- a/libstdc++-v3/include/experimental/string +++ b/libstdc++-v3/include/experimental/string @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_STRING #define _GLIBCXX_EXPERIMENTAL_STRING 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/string_view b/libstdc++-v3/include/experimental/string_view index 4eb1a84..8929748b 100644 --- a/libstdc++-v3/include/experimental/string_view +++ b/libstdc++-v3/include/experimental/string_view @@ -34,7 +34,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_STRING_VIEW #define _GLIBCXX_EXPERIMENTAL_STRING_VIEW 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/synchronized_value b/libstdc++-v3/include/experimental/synchronized_value index 9a91da9..93755e7 100644 --- a/libstdc++-v3/include/experimental/synchronized_value +++ b/libstdc++-v3/include/experimental/synchronized_value @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_SYNCVAL #define _GLIBCXX_EXPERIMENTAL_SYNCVAL 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // for std::mutex diff --git a/libstdc++-v3/include/experimental/system_error b/libstdc++-v3/include/experimental/system_error index 491b9dc..913995a 100644 --- a/libstdc++-v3/include/experimental/system_error +++ b/libstdc++-v3/include/experimental/system_error @@ -34,7 +34,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_SYSTEM_ERROR #define _GLIBCXX_EXPERIMENTAL_SYSTEM_ERROR 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/timer b/libstdc++-v3/include/experimental/timer index 8d6e328..1b60f70 100644 --- a/libstdc++-v3/include/experimental/timer +++ b/libstdc++-v3/include/experimental/timer @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_TIMER #define _GLIBCXX_EXPERIMENTAL_TIMER 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/tuple b/libstdc++-v3/include/experimental/tuple index f67f738..c38eb4b 100644 --- a/libstdc++-v3/include/experimental/tuple +++ b/libstdc++-v3/include/experimental/tuple @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_TUPLE #define _GLIBCXX_EXPERIMENTAL_TUPLE 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/type_traits b/libstdc++-v3/include/experimental/type_traits index 3fa88a3..25bb217 100644 --- a/libstdc++-v3/include/experimental/type_traits +++ b/libstdc++-v3/include/experimental/type_traits @@ -41,7 +41,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_TYPE_TRAITS #define _GLIBCXX_EXPERIMENTAL_TYPE_TRAITS 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #if __cplusplus >= 201402L diff --git a/libstdc++-v3/include/experimental/unordered_map b/libstdc++-v3/include/experimental/unordered_map index c94bd2c..06a439a 100644 --- a/libstdc++-v3/include/experimental/unordered_map +++ b/libstdc++-v3/include/experimental/unordered_map @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_UNORDERED_MAP #define _GLIBCXX_EXPERIMENTAL_UNORDERED_MAP 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/unordered_set b/libstdc++-v3/include/experimental/unordered_set index 128312c..e752740 100644 --- a/libstdc++-v3/include/experimental/unordered_set +++ b/libstdc++-v3/include/experimental/unordered_set @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_UNORDERED_SET #define _GLIBCXX_EXPERIMENTAL_UNORDERED_SET 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted diff --git a/libstdc++-v3/include/experimental/vector b/libstdc++-v3/include/experimental/vector index a51fdca..badfe68 100644 --- a/libstdc++-v3/include/experimental/vector +++ b/libstdc++-v3/include/experimental/vector @@ -30,7 +30,9 @@ #ifndef _GLIBCXX_EXPERIMENTAL_VECTOR #define _GLIBCXX_EXPERIMENTAL_VECTOR 1 +#ifdef _GLIBCXX_SYSHDR #pragma GCC system_header +#endif #include <bits/requires_hosted.h> // experimental is currently omitted |