<div dir="ltr">Thanks Ben.<div><br></div><div>Yes, my concern is about library features. As long as libcxx does not assume C11 (or later) library features, we are mostly OK :)</div><div><br></div><div>/ Asiri </div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, May 25, 2016 at 6:58 PM, Craig, Ben via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<p>std::atomic is implemented in terms of the C11 _Atomic feature.
That's a language feature though, and not a library feature. I
think you are mostly concerned with the library features needed.</p>
<p>I've had success with a C99 Dinkumware library. I think the
backing source predates C11. I've had to do a fair amount on the
pthread and posix side of things.</p>
<p>To be honest though, I don't know that it is entirely productive
to list out the dependencies in as abstract a form as "C99
compliant + POSIX 20xx compliant". In practice, libcxx and
libcxxabi are developed against specific OSes and specific C
libraries. Support is added for those platforms. GLIBC, MUSL,
UCLIBC, NEWLIB, and a bunch of other C libraries all claim support
for C99, but there tends to be little warts in each library that
requires libcxx intervention.<br>
</p><div><div class="h5">
<div>On 5/25/2016 9:15 AM, Asiri Rathnayake
via cfe-dev wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">OK, that makes sense.
<div><br>
</div>
<div>So, libc++ essentially assumes C99 + some POSIX extensions
like pthreads et. al.</div>
<div><br>
</div>
<div>Is it OK to assume that libc++ will not depend on C11
functionality in future?</div>
<div><br>
</div>
<div>Thanks!</div>
<div><br>
</div>
<div>/ Asiri</div>
<div><br>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Wed, May 25, 2016 at 3:10 PM, Joerg
Sonnenberger via cfe-dev <span dir="ltr"><<a href="mailto:cfe-dev@lists.llvm.org" target="_blank"></a><a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span>On Wed, May 25, 2016 at 10:46:03AM +0100, Asiri
Rathnayake via cfe-dev wrote:<br>
> For example, the current std::thread support (C++11)
does not assume the<br>
> underlying C library to be C11 compliant, it instead
depends on pthreads.<br>
> On the other hand, we do seem to assume a C11
compliant <ctime> header<br>
> (e.g. timespec).<br>
<br>
</span>I think you are confusing C11 functionality with
basic POSIX functions.<br>
While C11 might have merged a bunch of things from POSIX,
things like<br>
timespec are much older and wildly supported. That's unlike
C11<br>
threading for example.<br>
<br>
Joerg<br>
_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
</blockquote>
</div>
<br>
</div>
<br>
<fieldset></fieldset>
<br>
<pre>_______________________________________________
cfe-dev mailing list
<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a>
</pre>
</blockquote>
<br>
</div></div><span class="HOEnZb"><font color="#888888"><pre cols="72">--
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project
</pre>
</font></span></div>
<br>_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
<br></blockquote></div><br></div>