Created attachment 168898 [details]
Fix several std::map declarations in www/node-devel
Follow-up to bug 208270: during the exp-run in bug 208158, it was found that www/node-devel, www/node012 and www/node4 give errors with libc++ 3.8.0 :
/usr/include/c++/v1/map:837:5: error: static_assert failed "Allocator::value_type must be same type as value_type"
static_assert((is_same<typename allocator_type::value_type, value_type>::value),
../deps/v8/src/compiler/js-type-feedback.h:41:21: note: in instantiation of template class 'std::__1::map<unsigned int, v8::internal::TypeFeedbackId, std::__1::less<unsigned int>, v8::internal::zone_allocator<v8::internal::TypeFeedbackId> >' requested here
This is because libc++ 3.8.0 has added these sanity checks for custom std::map allocators, which *must* be of the type std::pair<const Key, Value>. I fixed the few std::map instances in the node source by adding this to their allocator types.
Created attachment 168899 [details]
Fix several std::map declarations in www/node012
Created attachment 168900 [details]
Fix several std::map declarations in www/node4
Bradley, can you have a look at this and approve ?
Looks good to me. The node-devel port is seriously outdated, and I've created a PR to have it removed in PR 208756.
A commit references this bug:
Date: Thu Apr 14 11:08:53 UTC 2016
New revision: 413257
www/node012 www/node4: Fix build with libc++ 3.8.0
Submitted by: dim
Approved by: Bradley T. Hughes <email@example.com> (maintainer)