Package: libboost-dev
Version: 1.32.0-2
Severity: normal
When a multi_array rebasing to 1 is attempted via extent_range,
a segmentation fault happens on accessing the boundary element.
Workaround: use reindex. See the snippet below.
The 1.32.0-2 was built locally from the source package.
-- Transcript of a crash:
[EMAIL PROTECTED]:$ make t-boost-multiarray-reindex1
g++ -Wall -O3 -g -ansi -pedantic-errors -MMD t-boost-multiarray-reindex1.cpp
-o t-boost-multiarray-reindex1
[EMAIL PROTECTED]:$ ./t-boost-multiarray-reindex1
Segmentation fault
-- Test that causes the crash (t-boost-multiarray-reindex1.cpp):
#include <boost/multi_array.hpp>
int main()
{
typedef boost::multi_array<float, 1> arr;
float pi = 3.14;
#ifdef WORKAROUND
arr a(boost::extents[ 1 ]);
a.reindex(1);
#else
arr a(boost::extents[ arr::extent_range(1, 1) ]);
#endif
a[1] = pi;
return 0;
}
-- System Information:
Debian Release: 3.1
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.6.8-1-686
Locale: LANG=ru_RU.KOI8-R, LC_CTYPE=ru_RU.KOI8-R (charmap=KOI8-R)
Versions of packages libboost-dev depends on:
ii libstdc++5-3.3-dev [libstdc++ 1:3.3.5-5 The GNU Standard C++ Library v3 (d
-- no debconf information
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]