Fixed char16_t and char32_t detection for clang.

These are now only assumed in C++11 mode. long long is also assumed
only in C++11 mode for clang, which may make some programs that rely on
long long as an extension in C++98 fail with Better Enums. I will solve
that at a later date if it becomes a problem.
This commit is contained in:
Anton Bachin 2015-06-30 12:21:02 -05:00
parent 54b7a054be
commit 535f7f151b

3
enum.h
View File

@ -25,8 +25,7 @@
# if !defined(__EXCEPTIONS) || !__has_feature(cxx_exceptions) # if !defined(__EXCEPTIONS) || !__has_feature(cxx_exceptions)
# define BETTER_ENUMS__NO_EXCEPTIONS # define BETTER_ENUMS__NO_EXCEPTIONS
# endif # endif
# if (__clang_major__ > 2) || \ # if __cplusplus >= 201103L
(__clang_major__ == 2) && (__clang_minor__ >= 9)
# define BETTER_ENUMS__HAVE_LONG_LONG # define BETTER_ENUMS__HAVE_LONG_LONG
# define BETTER_ENUMS__HAVE_NEW_CHAR_TYPES # define BETTER_ENUMS__HAVE_NEW_CHAR_TYPES
# endif # endif