This is the mail archive of the
mailing list for the newlib project.
Re: C99 support in Newlib
- From: "Andre Vieira (lists)" <Andre dot SimoesDiasVieira at arm dot com>
- To: "newlib at sourceware dot org" <newlib at sourceware dot org>
- Date: Mon, 11 Jan 2016 14:27:39 +0000
- Subject: Re: C99 support in Newlib
- Authentication-results: sourceware.org; auth=none
- References: <CAOAAYWCVo=_y_z-MMv+kPSnOkdmZyRmdf7-vSBTMxYhD_dpc8Q at mail dot gmail dot com> <20150114161728 dot GJ15791 at calimero dot vinschen dot de> <CAL0py27b0tRYe31X9cSW9FpP8swbY5YLk9UM4XUZk9XTb3vT4w at mail dot gmail dot com> <20150120100612 dot GZ3122 at calimero dot vinschen dot de> <54BE3A2F dot 2030703 at op dot pl> <20150120114638 dot GC3122 at calimero dot vinschen dot de> <54BE40DE dot 9080206 at op dot pl>
On 20/01/15 11:49, Freddie Chopin wrote:
On 01/20/2015 12:46 PM, Corinna Vinschen wrote:
On Jan 20 12:21, Freddie Chopin wrote:
On 01/20/2015 11:06 AM, Corinna Vinschen wrote:
On Jan 20 17:19, Joey Ye wrote:
Corinna, May I know which features are missing please?
As far as I can tell, mainly the long double functions for targets
with sizeof(double) != sizeof(long double).
I have one more - from my recent browsing of scanf() code, I assume that
"%[...]" is supported, but "%[^...]" is not.
No, it is. See libc/stdio/sccl.c.
Right, my mistake (; Sorry for the noise then (;
I thought I'd reply to this thread as it is very much related to my issue.
In a recent GCC patch a change to an optimization, which now checks for
the existence of libc support for C99 functions, lead to a regression
for arm-none-eabi. This is because currently GCC is set up to assume no
C99 support is available for arm-none-eabi. As far as I know this is
because it comes with newlib and as this thread points out it does not
claim to fully support C99. See
Hopefully with some help I can figure out what GCC 'function classes'
can be seen as supported by newlib for arm-none-eabi. These function
functions only part of the standard in C94 or above.
functions only part of the standard in C99 or above.
math complex functions only part of the standard in C99 or above.
functions only part of the standard in C11 or above
And there is also 'function_sincos' for which I couldn't find a
definition though I assume its for the GNU extension 'sincos'.
$arm-none-eabi-nm libm.a | grep sincos
00000000 T sincos
00000000 T sincosf
Can someone confirm the support or lack thereof for these classes in
newlib for 'arm-none-eabi'.