Re: [PATCH v0 0/2] Add C23 stdbit.h functions

Brian Inglis <[email protected]> Fri, 3 Apr 2026 17:08:28 -0600
Newsgroups gmane.comp.lib.newlib
Organization Systematic Software
Message-ID <[email protected]>
On 2026-04-03 11:14, Joel Sherrill wrote:
> Sorry for the delay. I got back to Corrina's comment:
> 
>  > No, they are not.  Target was Cygwin with its own limits.h, but even in
>  > newlib's limits.h, these WIDTH macros are not defined.  Incidentally,
>  > they are not defined anywhere in the newlib-cygwin repo.  If this works
>  > for you, you're probably overloading the newlib headers with rtems
>  > headers.
> 
> RTEMS does indeed have its own limits.h. And it must be aligned with  C23.
> 
> And Cygwin has its own limits.h which has not been updated to have any of
> the new C23 constants. Four show up in compiler error messages building
> the stdbit code.
> 
> https://en.cppreference.com/w/c/header/limits.html
> <https://en.cppreference.com/w/c/header/limits.html>
> 
> The stdbit.h addition needs a limits.h with the C23 constants.
> 
> Can those be added to the Cygwin limits.h? Then we can proceed with
> the stdbit.h addition.

For fastest response, please submit a patch with subject like:

[PATCH] Cygwin: winsup/cygwin/include/limits.h: Add C23 ..._WIDTH definitions

similar to your RTEMS changes, using normal feature test macros as appropriate, 
with git format-patch & git send-email to:

Cygwin core component patch submission and discussion
						<[email protected]>

> On Mon, Mar 23, 2026 at 3:55 PM Jeff Johnston <[email protected] 
> <mailto:[email protected]>> wrote:
> 
>     Regarding ELIX, ELIX 1 is the smallest subset of the library and ELIX 4, or
>     not specifying ELIX, is everything.  In general, adding new
>     shared functions should go in ELIX 4 as the original ELIX documentation
>     wouldn't have categorized the new functions.
> 
>     I don't know if anyone is currently using the ELIX settings.
> 
>     -- Jeff J.
> 
>     On Mon, Mar 23, 2026 at 4:59 AM Corinna Vinschen <[email protected]
>     <mailto:[email protected]>> wrote:
> 
>         Hi Joel,
> 
>         On Mar 21 18:52, Joel Sherrill wrote:
>          > Thanks. I finally aligned all the autotools versions with your changes.
>          >
>          > It all built for me to target sparc-rtems7.
>          >
>          > You mentioned a problem compiling these earlier. What target was that? I
>          > think all the
>          > XXX_WIDTH constants used are in limits.h.
> 
>         No, they are not.  Target was Cygwin with its own limits.h, but even in
>         newlib's limits.h, these WIDTH macros are not defined.  Incidentally,
>         they are not defined anywhere in the newlib-cygwin repo.  If this works
>         for you, you're probably overloading the newlib headers with rtems
>         headers.
> 
>          > And is there any organization behind ELIX and ELIX_LEVEL anymore? Is 3
>          > everything or some restricted subset. We would like them on RTEMS and I
>          > assume we would be a more restricted profile since we are single process.
> 
>         Actually, I don't know.  I thought we're supposed to maintain this
>         stuff.
> 
>         Jeff?
> 
>         If this isn't important anymore, fine with me, it just complicates
>         the configury anyway ;)
> 
> 
>         Thanks,
>         Corinna
> 


-- 
Take care. Thanks, Brian Inglis              Calgary, Alberta, Canada

La perfection est atteinte                   Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter  not when there is no more to add
mais lorsqu'il n'y a plus rien à retrancher  but when there is no more to cut
                                 -- Antoine de Saint-Exupéry