Hi,
I used a previous version of the Units library to sketch out a fps system (foot-pound-second) that paralleled the cgs system, and the code compiled and ran fine. I am now returning to this effort, and I want to wrap it into a coordinate transform package, but I can no longer get the code to compile. I am using the latest code from the Boost sandbox, and MS Visual Studio with WinXP. The problem appears to be in the conversions, but I don't see what is missing when compared to cgs.

      typedef unit<length_dimension, SI::system > my_unit;
      typedef quantity< my_unit, ofs::Real64 >  linear_measure;
      linear_measure dummy(200.0*CGS::centimeter);   // implicit conversion from SI::meter to CGS::centimeter
      linear_measure dummy2(200.0*FPS::foot);

The first three lines work fine, but the last one generates 10 errors with my compiler (MSVC 8.0). The first error is

        boost/units/detail/conversion_impl.hpp(342) : error C2039: 'type' : is not a member of 'boost::units::detail::call_base_unit_converter<Source,Dest>'
        with
        [
            Source=boost::units::foot_base_unit,
            Dest=boost::units::unit<boost::units::length_dimension,boost::units::heterogeneous_system<boost::units::heterogeneous_system_pair<boost::units::dimension_list<boost::units::heterogeneous_system_dim<boost::units::meter_base_unit,boost::units::static_rational<1>>,boost::units::dimensionless_type>,boost::units::length_dimension>>>
        ]
        boost/units/detail/conversion_impl.hpp(536) : see reference to class template instantiation 'boost::units::detail::conversion_impl<N>::apply<Begin,DestinationSystem>' being compiled
        with
        [
            N=1,
            Begin=boost::units::dimension_list<boost::units::heterogeneous_system_dim<boost::units::foot_base_unit,boost::units::static_rational<1>>,boost::units::dimensionless_type>,
            DestinationSystem=boost::units::homogeneous_system<boost::units::dimension_list<boost::units::meter_base_unit,boost::units::dimensionless_type>>
        ]
        boost/units/detail/conversion_impl.hpp(216) : see reference to class template instantiation 'boost::units::detail::conversion_factor_helper<Source,Dest>' being compiled
        with
        [
            Source=boost::units::unit<boost::units::length_dimension,boost::units::heterogeneous_system<boost::units::heterogeneous_system_pair<boost::units::dimension_list<boost::units::heterogeneous_system_dim<boost::units::foot_base_unit,boost::units::static_rational<1>>,boost::units::dimensionless_type>,boost::units::length_dimension>>>,
            Dest=boost::units::unit<boost::units::length_dimension,boost::units::heterogeneous_system<boost::units::heterogeneous_system_pair<boost::units::dimension_list<boost::units::heterogeneous_system_dim<boost::units::meter_base_unit,boost::units::static_rational<1>>,boost::units::dimensionless_type>,boost::units::length_dimension>>>
        ]
        boost/units/detail/conversion_impl.hpp(324) : see reference to class template instantiation 'boost::units::detail::call_base_unit_converter_base_unit_impl<false,false>::apply<Source,Dest>' being compiled
        with
        [
            Source=boost::units::foot_base_unit,
            Dest=boost::units::meter_base_unit
        ]
        boost/units/detail/conversion_impl.hpp(342) : see reference to class template instantiation 'boost::units::detail::call_base_unit_converter<Source,Dest>' being compiled
        with
        [
            Source=boost::units::foot_base_unit,
            Dest=boost::units::unit<boost::units::length_dimension,boost::units::heterogeneous_system<boost::units::heterogeneous_system_pair<boost::units::dimension_list<boost::units::heterogeneous_system_dim<boost::units::meter_base_unit,boost::units::static_rational<1>>,boost::units::dimensionless_type>,boost::units::length_dimension>>>
        ]
        boost/units/detail/conversion_impl.hpp(377) : see reference to class template instantiation 'boost::units::detail::conversion_impl<N>::apply<Begin,DestinationSystem>' being compiled
        with
        [
            N=1,
            Begin=boost::units::dimension_list<boost::units::heterogeneous_system_dim<boost::units::foot_base_unit,boost::units::static_rational<1>>,boost::units::dimensionless_type>,
            DestinationSystem=boost::units::homogeneous_system<boost::units::dimension_list<boost::units::meter_base_unit,boost::units::dimension_list<boost::units::scaled_base_unit<boost::units::gram_base_unit,boost::units::scale<10,boost::units::static_rational<3>>>,boost::units::dimension_list<boost::units::second_base_unit,boost::units::dimension_list<boost::units::ampere_base_unit,boost::units::dimension_list<boost::units::kelvin_base_unit,boost::units::dimension_list<boost::units::mole_base_unit,boost::units::dimension_list<boost::units::candela_base_unit,boost::units::dimension_list<boost::units::radian_base_unit,boost::units::dimension_list<boost::units::steradian_base_unit,boost::units::dimensionless_type>>>>>>>>>>
        ]
        boost/units/detail/conversion_impl.hpp(372) : while compiling class template member function 'boost::units::quantity<Unit,Y> boost::units::conversion_helper<From,To>::convert(const boost::units::quantity<boost::units::unit<Dim,System>,Y> &)'
        with
        [
            Unit=my_unit,
            Y=ofs::Real64,
            From=boost::units::quantity<boost::units::unit<boost::units::length_dimension,boost::units::FPS::system>,double>,
            To=boost::units::quantity<my_unit,ofs::Real64>,
            Dim=boost::units::length_dimension,
            System=boost::units::FPS::system
        ]
        boost/units/quantity.hpp(167) : see reference to class template instantiation 'boost::units::conversion_helper<From,To>' being compiled
        with
        [
            From=boost::units::quantity<boost::units::unit<boost::units::length_dimension,boost::units::FPS::system>,double>,
            To=boost::units::quantity<my_unit,ofs::Real64>
        ]
        testQuantifiedVector.cpp(47) : see reference to function template instantiation 'boost::units::quantity<Unit,Y>::quantity<boost::units::unit<Dim,System>,double>(const boost::units::quantity<boost::units::unit<Dim,System>,Y> &,void *)' being compiled
        with
        [
            Unit=my_unit,
            Y=ofs::Real64,
            Dim=boost::units::length_dimension,
            System=boost::units::FPS::system
        ]

Any guidance in this would be greatly appreciated.
Pat