uchar.h 954 B

123456789101112131415161718192021222324252627282930313233
  1. /**
  2. * This file has no copyright assigned and is placed in the Public Domain.
  3. * This file is part of the TinyCC package.
  4. * No warranty is given; refer to the file DISCLAIMER within this package.
  5. */
  6. #ifndef _INC_UCHAR
  7. #define _INC_UCHAR
  8. /*
  9. * The following defines are only valid when C11 (-std=c11) is used.
  10. *
  11. * ... a wide character constant prefixed by the letter u or U has type char16_t
  12. * or char32_t, respectively, unsigned integer types defined in the <uchar.h>
  13. * header.
  14. */
  15. #if __STDC_VERSION__ >= 201112L
  16. /**
  17. * __STDC_UTF_16__ The integer constant 1, intended to indicate that
  18. * values of type char16_t are UTF-16 encoded.
  19. */
  20. #define __STDC_UTF_16__ 1
  21. /**
  22. * __STDC_UTF_32__ The integer constant 1, intended to indicate that
  23. * values of type char32_t are UTF-32 encoded.
  24. */
  25. #define __STDC_UTF_32__ 1
  26. typedef unsigned short char16_t;
  27. typedef unsigned int char32_t;
  28. #endif /* __STDC_VERSION__ >= 201112L */
  29. #endif /* _INC_UCHAR */