git: 97936b3d67af - main - devel/heimdall: stop attempting to define nullptr
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 26 Apr 2022 19:13:16 UTC
The branch main has been updated by dim (src committer): URL: https://cgit.FreeBSD.org/ports/commit/?id=97936b3d67af0be32750eb83edc3170bd01f9755 commit 97936b3d67af0be32750eb83edc3170bd01f9755 Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2022-04-09 11:24:31 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2022-04-26 19:11:50 +0000 devel/heimdall: stop attempting to define nullptr During an exp-run for llvm 14 (see bug 261742), it turned out that devel/heimdall fails to build with libc++ 14: In file included from /wrkdirs/usr/ports/devel/heimdall/work/Heimdall-1.4.2/heimdall/source/HelpAction.cpp:24: In file included from /wrkdirs/usr/ports/devel/heimdall/work/Heimdall-1.4.2/heimdall/source/Interface.h:25: In file included from /usr/include/c++/v1/map:535: In file included from /usr/include/c++/v1/__node_handle:63: In file included from /usr/include/c++/v1/memory:819: In file included from /usr/include/c++/v1/__memory/ranges_uninitialized_algorithms.h:22: In file included from /usr/include/c++/v1/__memory/uninitialized_algorithms.h:17: In file included from /usr/include/c++/v1/iterator:591: In file included from /usr/include/c++/v1/__iterator/common_iterator.h:22: In file included from /usr/include/c++/v1/variant:204: /usr/include/c++/v1/__functional/hash.h:174:12: error: no matching constructor for initialization of 'pair<unsigned long, unsigned long>' return pair<_Size, _Size>(__a + __z, __b + __c); ^ ~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/v1/__functional/hash.h:182:12: note: in instantiation of member function 'std::__murmur2_or_cityhash<unsigned long, 64>::__weak_hash_len_32_with_seeds' requested here return __weak_hash_len_32_with_seeds(__loadword<_Size>(__s), ^ /usr/include/c++/v1/__functional/hash.h:241:28: note: in instantiation of member function 'std::__murmur2_or_cityhash<unsigned long, 64>::__weak_hash_len_32_with_seeds' requested here pair<_Size, _Size> __v = __weak_hash_len_32_with_seeds(__s + __len - 64, __len, __z); ^ /usr/include/c++/v1/__functional/hash.h:344:16: note: in instantiation of member function 'std::__murmur2_or_cityhash<unsigned long, 64>::operator()' requested here return __murmur2_or_cityhash<size_t>()(&__u, sizeof(__u)); ^ /usr/include/c++/v1/__functional/hash.h:418:20: note: in instantiation of member function 'std::__scalar_hash<std::_PairT, 2>::operator()' requested here return _HashT()(__p); ^ /usr/include/c++/v1/__utility/pair.h:157:14: note: candidate template ignored: requirement '_CheckArgsDep<true>::__enable_explicit()' was not satisfied [with _Dummy = true] explicit pair(_T1 const& __t1, _T2 const& __t2) ^ [... much more of this ...] This is because Heimdall.h defines nullptr as a macro with value 0, which isn't compatible with C++11 or later. PR: 263176 Approved by: ehaupt (maintainer) MFH: 2022Q2 --- devel/heimdall/files/patch-heimdall_source_Heimdall.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/devel/heimdall/files/patch-heimdall_source_Heimdall.h b/devel/heimdall/files/patch-heimdall_source_Heimdall.h new file mode 100644 index 000000000000..c20fccf6aa43 --- /dev/null +++ b/devel/heimdall/files/patch-heimdall_source_Heimdall.h @@ -0,0 +1,15 @@ +--- heimdall/source/Heimdall.h.orig 2017-05-11 18:34:25 UTC ++++ heimdall/source/Heimdall.h +@@ -54,12 +54,4 @@ + + #endif + +-#if (!(defined _MSC_VER) || (_MSC_VER < 1700)) +- +-#ifndef nullptr +-#define nullptr 0 +-#endif +- +-#endif +- + #endif