Neal Becker wrote: > template<typename T> > inline vector<typename scalar<T>::type> mag_sqr (vector<T> const& z) { > typedef typename scalar<T>::type out_t; > vector<out_t> out (z.size()); > std::transform (z.begin(), z.end(), out.begin(), mag_sqr1<T>); > return out; > } That just makes my eyeballs hurt.