boost_no_cv_void_spec.ipp 844 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. // (C) Copyright John Maddock 2001.
  2. // Use, modification and distribution are subject to the
  3. // Boost Software License, Version 1.0. (See accompanying file
  4. // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  5. // See http://www.boost.org/libs/config for most recent version.
  6. // MACRO: BOOST_NO_CV_VOID_SPECIALIZATIONS
  7. // TITLE: template specialisations of cv-qualified void
  8. // DESCRIPTION: If template specialisations for cv-void types
  9. // conflict with a specialisation for void.
  10. namespace boost_no_cv_void_specializations{
  11. template <class T>
  12. struct is_void
  13. {
  14. };
  15. template <>
  16. struct is_void<void>
  17. {};
  18. template <>
  19. struct is_void<const void>
  20. {};
  21. template <>
  22. struct is_void<volatile void>
  23. {};
  24. template <>
  25. struct is_void<const volatile void>
  26. {};
  27. int test()
  28. {
  29. return 0;
  30. }
  31. }