 {
   void operator()(const size_t n)
   {
-#if defined(__GNUC__) && (__GNUC__ <= 4) && (__GNUC_MINOR__ <= 1)
-    // some bizzare problem with VariableUnitTest in this particular case
-    // on GCC 4.1.2 (SUSE Linux)
-    KNOWN_FAILURE;
-#else
     for(size_t num_bits = 0; num_bits < 8 * sizeof(T); num_bits += 7){
         thrust::host_vector<T>  h_keys = unittest::random_integers<T>(n);
    

  {
    thrust::host_vector<T>   h_keys = unittest::random_integers<T>(n);
    thrust::device_vector<T> d_keys = h_keys;
    
    thrust::host_vector<unsigned int>   h_values(n);
    thrust::device_vector<unsigned int> d_values(n);
    thrust::sequence(h_values.begin(), h_values.end());

    
        ASSERT_ALMOST_EQUAL(h_keys, d_keys);
    }
  }
};
VariableUnitTest<TestRadixSortVariableBits, unittest::type_list<unsigned int> > TestRadixSortVariableBitsInstance;


template <typename T>
