SignalR MVC 5 Websocket нет действительных учетных данных

#    if __has_extension(is_enum)
         ~~~~~~~~~~~~~~~^

Это языковое расширение Clang , называемое макросами проверки функции . Они долгое время были для Клана. GCC предоставил их, начиная с GCC 5.0, IIRC.

__has_extension можно проверить как макрос препроцессора. Итак, сначала вы проверяете наличие макроса, а затем проверяете эту функцию:

#if defined(__has_extension)
# if __has_extension(is_enum)
   ...
# endif
#endif

__has_extension(is_enum) должен находиться в отдельной строке.

Он работает для включения файлов. Из проекта Crypto ++ файл rdrand.cpp :

# include  // rdrand, MSC, ICC, and GCC
# if defined(__has_include)
#  if __has_include()
#   include  // rdseed for some compilers, like GCC
#  endif
# endif
30
задан Konobi 11 November 2014 в 10:57
поделиться