https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=286342

--- Comment #10 from Mark Millard <marklmi26-f...@yahoo.com> ---
(In reply to Jordan Gordeev from comment #9)

I do not know if FreeBSD or libc++ target
more than clang++ and g++ versions for
compatibility. __has_feature(x) is not from
the language standard, any version) but g++
has explicitly added support for clang++
compatibility.

https://clang.llvm.org/docs/LanguageExtensions.html#has-feature-and-has-extension

documents a usage technique via the text:

#ifndef __has_feature         // Optional of course.
  #define __has_feature(x) 0  // Compatibility with non-clang compilers.
#endif
#ifndef __has_extension
  #define __has_extension __has_feature // Compatibility with pre-3.0
compilers.
#endif

...
#if __has_feature(cxx_rvalue_references)
// This code will only be compiled with the -std=c++11 and -std=gnu++11
// options, because rvalue references are only standardized in C++11.
#endif

#if __has_extension(cxx_rvalue_references)
// This code will be compiled with the -std=c++11, -std=gnu++11, -std=c++98
// and -std=gnu++98 options, because rvalue references are supported as a
// language extension in C++98.
#endif

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to