Compilation problem MSVC with recent 'sort' implementation

Michael Goffioul michael.goffioul at gmail.com
Sun Feb 3 02:23:48 CST 2008


Hi,

I can't compile Array-d.cc anymore with MSVC due to the recent
changes in sort implementation. The error is that
Array<T> Array<T>::sort(octave_idx_type, sortmode) gets
instantiated with T=double before the actual specialization in
Array-d.cc: line 220. I tracked down this instantiation to
the appearance of Marray2<double> before the explicit
specialization. The sequence of inclusion is:

Array-d.cc -> Array.cc -> Range.h -> dMatrix.h -> Marray2<double>.

I looked into Array.cc and couldn't find any reference to
Range class. So one possible solution to break the chain
above is not inluding Range.h in Array.cc. However I'm
not sure about the side effects. Would this be acceptable?

Michael.


More information about the Octave-maintainers mailing list