With a previous fix (described in 1189362), I can get
boost::numeric::ublas::vector to compile on Solaris 2.8
using Sun ONE 8 CC-5.5. However, it SEGVs when run.
bash-2.03$ cat bug4.cpp
namespace std {
long double abs(long double);
};
int main ()
{
boost::numeric::ublas::vector<int> a (1000 * 1000);
for (size_t i = 0; i < a.size(); i++)
a[i] = i;
return 0;
}
bash-2.03$ CC -g -I$HOME/ftp/boost_1_32_0 bug4.cpp
bash-2.03$ ./a.out
Segmentation Fault (core dumped)
bash-2.03$ </int>
Delving a little, it seems memory was not being
allocated, and I wondered whether _RWSTD_ALLOCATOR
should in fact be defined:
bash-2.03$ CC -g -D_RWSTD_ALLOCATOR
-I$HOME/ftp/boost_1_32_0 bug4.cpp
"/opt/SS8/SUNWspro/prod/include/CC/Cstd/./vector", line
656: Warning: "typename" must be used within a template.
1 Warning(s) detected.
bash-2.03$ ./a.out
bash-2.03$
As you can see, I get a warning from std::vector, but
it does compile and run. (Purify seems happy too.)
I'm not sure what to make of it, so I'm raising this
for your information.
simon.marshall@misys.com
Anonymous
Logged In: YES
user_id=556024
Not sure what _RWSTD_ALLOCATOR does?
Worth trying with the current CVS HEAD
There should e no 'typename' warnings.