Ticket #8568: loop_warning.patch

File loop_warning.patch, 1.7 KB (added by Bikineev Anton <abikineev@…>, 9 years ago)

pragma warning disable for msvc is added

  • boost/functional/hash/hash.hpp

     
    152152             std::size_t seed = 0;
    153153             T positive = val < 0 ? -1 - val : val;
    154154
     155#if defined(BOOST_MSVC)
     156#pragma warning(push)
     157#if BOOST_MSVC <= 1700
     158#pragma warning(disable:6295) // Ill-defined for-loop : 'unsigned int' values
     159                              // are always of range '0' to '4294967295'.
     160                              // Loop executes infinitely.
     161#endif
     162#endif
     163
    155164             // Hopefully, this loop can be unrolled.
    156165             for(unsigned int i = length * size_t_bits; i > 0; i -= size_t_bits)
    157166             {
     
    159168             }
    160169             seed ^= (std::size_t) val + (seed<<6) + (seed>>2);
    161170
     171#if defined(BOOST_MSVC)
     172#pragma warning(pop)
     173#endif
     174
    162175             return seed;
    163176        }
    164177
     
    172185
    173186             std::size_t seed = 0;
    174187
     188#if defined(BOOST_MSVC)
     189#pragma warning(push)
     190#if BOOST_MSVC <= 1700
     191#pragma warning(disable:6295) // Ill-defined for-loop : 'unsigned int' values
     192                              // are always of range '0' to '4294967295'.
     193                              // Loop executes infinitely.
     194#endif
     195#endif
     196
    175197             // Hopefully, this loop can be unrolled.
    176198             for(unsigned int i = length * size_t_bits; i > 0; i -= size_t_bits)
    177199             {
     
    179201             }
    180202             seed ^= (std::size_t) val + (seed<<6) + (seed>>2);
    181203
     204#if defined(BOOST_MSVC)
     205#pragma warning(pop)
     206#endif
     207
    182208             return seed;
    183209        }
    184210    }