899e0ef82b
gcc 13 is confused by the custom bitset implementation, so use the C++ standard one instead. However, this results in including the C++ <string> header in kernel code. This doesn't work for gcc2, because of two problems: - That header includes a declaration of atomic_add that doesn't match the one in SupportsDefs.h (which can in some cases replace the function with a #define for an inline version). Adjust the header to use the be a problem because it creates a risk of circular inclusions. Standard C++ headers shouldn't depend on BeAPI ones. - It also leads to the inclusion of iostream which defined lock and unlock functions in the global namespace. We don't want these, and they are not part of the C++ standard, so just remove them. Ideally we could use std::hash for the GetHashCode implementation, but that doesn't work because it depends on an helper function that's in libstdc++, and we can't link that from kernel add-ons. Change-Id: Iee07280beb4dddf7a9b6160e37f3b816e4de89ae Reviewed-on: https://review.haiku-os.org/c/haiku/+/6663 Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com> Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> |
||
---|---|---|
.. | ||
std | ||
algo.h | ||
algobase.h | ||
algorithm | ||
alloc.h | ||
bitset | ||
builtinbuf.h | ||
bvector.h | ||
cassert | ||
cctype | ||
cerrno | ||
cfloat | ||
ciso646 | ||
climits | ||
clocale | ||
cmath | ||
complex | ||
complex.h | ||
csetjmp | ||
csignal | ||
cstdarg | ||
cstddef | ||
cstdio | ||
cstdlib | ||
cstring | ||
ctime | ||
cwchar | ||
cwctype | ||
defalloc.h | ||
deque | ||
deque.h | ||
editbuf.h | ||
floatio.h | ||
fstream | ||
fstream.h | ||
function.h | ||
functional | ||
hash_map | ||
hash_map.h | ||
hash_set | ||
hash_set.h | ||
hashtable.h | ||
heap.h | ||
indstream.h | ||
iomanip | ||
iomanip.h | ||
iosfwd | ||
iostdio.h | ||
iostream | ||
iostream.h | ||
istream.h | ||
iterator | ||
iterator.h | ||
limits | ||
list | ||
list.h | ||
map | ||
map.h | ||
memory | ||
multimap.h | ||
multiset.h | ||
numeric | ||
ostream.h | ||
pair.h | ||
parsestream.h | ||
pfstream.h | ||
PlotFile.h | ||
procbuf.h | ||
pthread_alloc | ||
pthread_alloc.h | ||
queue | ||
rope | ||
rope.h | ||
ropeimpl.h | ||
set | ||
set.h | ||
SFile.h | ||
slist | ||
slist.h | ||
sstream | ||
stack | ||
stack.h | ||
stdexcept | ||
stdiostream.h | ||
stl_algo.h | ||
stl_algobase.h | ||
stl_alloc.h | ||
stl_bvector.h | ||
stl_config.h | ||
stl_construct.h | ||
stl_deque.h | ||
stl_function.h | ||
stl_hash_fun.h | ||
stl_hash_map.h | ||
stl_hash_set.h | ||
stl_hashtable.h | ||
stl_heap.h | ||
stl_iterator.h | ||
stl_list.h | ||
stl_map.h | ||
stl_multimap.h | ||
stl_multiset.h | ||
stl_numeric.h | ||
stl_pair.h | ||
stl_queue.h | ||
stl_raw_storage_iter.h | ||
stl_relops.h | ||
stl_rope.h | ||
stl_set.h | ||
stl_slist.h | ||
stl_stack.h | ||
stl_tempbuf.h | ||
stl_tree.h | ||
stl_uninitialized.h | ||
stl_vector.h | ||
stl.h | ||
stream.h | ||
streambuf.h | ||
strfile.h | ||
string | ||
strstream | ||
strstream.h | ||
tempbuf.h | ||
tree.h | ||
type_traits.h | ||
utility | ||
valarray | ||
vector | ||
vector.h |