boost_no_wchar_t.ipp 1.4 KB

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_INTRINSIC_WCHAR_T
  7. // TITLE: intrinsic wchar_t
  8. // DESCRIPTION: The C++ implementation does not provide wchar_t,
  9. // or it is really a synonym for another integral type.
  10. // Use this symbol to decide whether it is appropriate
  11. // to explicitly specialize a template on wchar_t if there
  12. // is already a specialization for other integer types.
  13. #ifndef BOOST_NO_CWCHAR
  14. #include <wchar.h>
  15. #endif
  16. namespace boost_no_intrinsic_wchar_t{
  17. template <class T>
  18. struct is_int{ int i; };
  19. template <> struct is_int<unsigned char>{ int i; };
  20. template <> struct is_int<signed char>{ int i; };
  21. template <> struct is_int<char>{ int i; };
  22. template <> struct is_int<unsigned short>{ int i; };
  23. template <> struct is_int<short>{ int i; };
  24. template <> struct is_int<unsigned int>{ int i; };
  25. template <> struct is_int<int>{ int i; };
  26. template <> struct is_int<unsigned long>{ int i; };
  27. template <> struct is_int<long>{ int i; };
  28. template <> struct is_int<wchar_t>{ int i; };
  29. int test()
  30. {
  31. return 0;
  32. }
  33. }