[LLVMdev] C++14 support for shared_mutex
Edward Diener
eldlistmailingz at tropicsoft.com
Mon Jun 8 21:34:35 PDT 2015
On 6/9/2015 12:06 AM, Nathan Wilson wrote:
>
> On Jun 8, 2015 10:53 PM, "Edward Diener" <eldlistmailingz at tropicsoft.com
> <mailto:eldlistmailingz at tropicsoft.com>> wrote:
> >
> > On 6/8/2015 10:10 PM, Tim Northover wrote:
> >>
> >> On 8 June 2015 at 17:53, Edward Diener
> <eldlistmailingz at tropicsoft.com <mailto:eldlistmailingz at tropicsoft.com>>
> wrote:
> >>>
> >>> How can I tell at compile time through predefined macros whether libc++
> >>> includes/supports the C++14 header file shared_mutex ?
> >>
> >>
> >> I doubt it's even theoretically possible. Clang can be used with
> >> multiple standard libraries, and there's no real way for it to know
> >> just what you're compiling against (even if it knows in general terms
> >> that it's libc++).
> >
> >
> > I am not talking about clang, I am talking about libc++. Is this the
> correct mailing list to ask a question about libc++ or is there a better
> one ? I did not see a separate llvm mailing list for libc++.
>
> I see Marshall's commits and review requests directed toward the cfe-dev
> list with libcxx in the subject. So, you loop them in or try that
> mailing list.
I will try the clang developers mailing list.
>
> >
> >
> >>
> >> On a tightly controlled platform like OS X you might find a mostly
> >> reliable proxy like the clang version (though people trying to use an
> >> updated libc++ may curse you for it).
> >
> >
> > I can tell "in general terms that it's libc++". The Boost.config
> headers can know that from the macro _LIBCPP_VERSION. Once I can tell,
> you are saying that there is no reliable way to tell whether libc++
> supports shared_mutex, which is currently a completely valid C++14
> header file and implementation ? That seems pretty poor of libc++. I
> don't mean to be critical but I think that a good standard library
> creates predefined values so that what can tell what is being offered in
> that library for any given release. You can't wait until run-time to
> include a header which may not be there.
> >
> > I don't want to check anything in clang because, as I understand it,
> libc++ can be and is being used by compilers other than clang. So I
> would assume that either _LIBCPP_VERSION or some other macro connected
> with libc++ should tell me at compile time if shared_mutex is supported.
More information about the llvm-dev
mailing list