This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: stdio.h patches for g++ -std=c++11


On May  9 12:15, zosrothko wrote:
> >On 09/05/14 11:01, zosrothko wrote:
> >>Corinna
> >>Le 09/05/2014 10:43, Corinna Vinschen a Ãcrit :
> >>>Is defining them with only
> >>>
> >>>    #if !defined(__STRICT_ANSI__)
> >>>
> >>>sufficient?
> >>That won't work because of this
> >>
> >>$ g++ -xc++ -std=c++11 -dM -E - < /dev/null | sort | grep ANSI
> >>#define __STRICT_ANSI__ 1
> >>
> >>$ g++ -xc++ -std=gnu++11 -dM -E - < /dev/null | sort | grep ANSI
> >>
> >>$
> >>
> >>
> >>g++ with -std=gnu++11 does not define __STRICT_ANSI__ while g++ -std=c++11 does and those previous printfs functions and only those should be defined for c++11. The other traditional stdio functions should be defined only for g++11 and for traditional C.
> >>
> >>People that does not care about compliance will use the gnu++11 version while those that cares about compliance must use the c++11 version and so should be aligned the printfs series from stdio.h
> >>
> >>
> >>Here at http://www.cplusplus.com/reference/clibrary/ is described which functions borrowed from C are included in the new c++11 standard. I worked for now only on the stdio.h functions but all includes should be checked against the strict compliance for c++11.
> >>zos
> >>
> >>
> >GNU++11 is C++11 with extensions.  I don't see a problem with having the
> >i functions in that case.
> There is no problem for having the i functions for gnu++11... but not for
> c++11
> 
> Just to emphase on the compliance for c++11: snprintf is part of the c++11
> standard while fprintf, fscanf, printf, scanf, sprintf are not..

fprintf, fscanf, etc. are defined in C++11.  The declaration block we're
talking about defines only standard functions which are in C++11, or
functions which are newlib-only 'i' variations of the printf/scanf
families.


Corinna

-- 
Corinna Vinschen
Cygwin Maintainer
Red Hat

Attachment: pgpQoRHIXW5nQ.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]