Patch use of boost::bind for boost 1.58.
This commit is contained in:
parent
85520eee84
commit
f04d638cd4
42
dyninst-8.2.1-boost-bind.patch
Normal file
42
dyninst-8.2.1-boost-bind.patch
Normal file
@ -0,0 +1,42 @@
|
||||
commit 28f52285af957fd464485cc706b4b9eba65912cf
|
||||
Author: Josh Stone <jistone@redhat.com>
|
||||
Date: Thu Jul 23 15:28:56 2015 -0700
|
||||
|
||||
dataflowAPI: use boost::bind() instead of bind<void>()
|
||||
|
||||
With boost 1.58, the boost::bind<void>() in Slicer::getPredecessors()
|
||||
gave an "error: call of overloaded 'bind[...]' is ambiguous".
|
||||
|
||||
Every other bind in dyninst uses plain boost::bind(), which does its own
|
||||
inspection of return type. That works well in this case too, even with
|
||||
older boost versions.
|
||||
|
||||
diff --git a/dataflowAPI/src/slicing.C b/dataflowAPI/src/slicing.C
|
||||
index 8f36d8dc3cd6..436961549a9f 100644
|
||||
--- a/dataflowAPI/src/slicing.C
|
||||
+++ b/dataflowAPI/src/slicing.C
|
||||
@@ -722,15 +722,15 @@ Slicer::getPredecessors(
|
||||
const Block::edgelist & sources = cand.loc.block->sources();
|
||||
std::for_each(boost::make_filter_iterator(epred, sources.begin(), sources.end()),
|
||||
boost::make_filter_iterator(epred, sources.end(), sources.end()),
|
||||
- boost::bind<void>(&Slicer::handlePredecessorEdge,
|
||||
- this,
|
||||
- _1,
|
||||
- boost::ref(p),
|
||||
- boost::ref(cand),
|
||||
- boost::ref(newCands),
|
||||
- boost::ref(err),
|
||||
- boost::ref(nf)
|
||||
- ));
|
||||
+ boost::bind(&Slicer::handlePredecessorEdge,
|
||||
+ this,
|
||||
+ _1,
|
||||
+ boost::ref(p),
|
||||
+ boost::ref(cand),
|
||||
+ boost::ref(newCands),
|
||||
+ boost::ref(err),
|
||||
+ boost::ref(nf)
|
||||
+ ));
|
||||
|
||||
return !err;
|
||||
}
|
10
dyninst.spec
10
dyninst.spec
@ -2,7 +2,7 @@ Summary: An API for Run-time Code Generation
|
||||
License: LGPLv2+
|
||||
Name: dyninst
|
||||
Group: Development/Libraries
|
||||
Release: 6%{?dist}
|
||||
Release: 7%{?dist}
|
||||
URL: http://www.dyninst.org
|
||||
Version: 8.2.1
|
||||
Exclusiveos: linux
|
||||
@ -24,6 +24,7 @@ ExclusiveArch: %{ix86} x86_64 ppc ppc64
|
||||
Source0: dyninst-8.2.1.tar.gz
|
||||
Source1: dyninst-docs-8.2.0.1.tar.gz
|
||||
Source2: dyninst-testsuite-8.2.0.1.tar.gz
|
||||
Patch1: dyninst-8.2.1-boost-bind.patch
|
||||
BuildRequires: libdwarf-devel >= 20111030
|
||||
BuildRequires: elfutils-libelf-devel
|
||||
BuildRequires: boost-devel
|
||||
@ -91,6 +92,10 @@ making sure that dyninst works properly.
|
||||
%setup -q -T -D -a 1
|
||||
%setup -q -T -D -a 2
|
||||
|
||||
pushd dyninst
|
||||
%patch1 -p1 -b .bind
|
||||
popd
|
||||
|
||||
%build
|
||||
|
||||
cd dyninst
|
||||
@ -181,6 +186,9 @@ chmod 644 %{buildroot}%{_libdir}/dyninst/testsuite/*
|
||||
%attr(755,root,root) %{_libdir}/dyninst/testsuite/*
|
||||
|
||||
%changelog
|
||||
* Thu Jul 23 2015 Josh Stone <jistone@redhat.com> - 8.2.1-7
|
||||
- Patch use of boost::bind for boost 1.58.
|
||||
|
||||
* Wed Jul 22 2015 David Tardon <dtardon@redhat.com> - 8.2.1-6
|
||||
- rebuild for Boost 1.58
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user