public inbox for cygwin-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin/main] Cygwin: uchar.h: fix definition of uchar16_t and uchar32_t
@ 2023-08-02 15:04 Corinna Vinschen
  0 siblings, 0 replies; only message in thread
From: Corinna Vinschen @ 2023-08-02 15:04 UTC (permalink / raw)
  To: cygwin-cvs

https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=8fbbc668a01db50c3735d396f6e021940f7b3834

commit 8fbbc668a01db50c3735d396f6e021940f7b3834
Author:     Corinna Vinschen <corinna@vinschen.de>
AuthorDate: Wed Aug 2 16:50:23 2023 +0200
Commit:     Corinna Vinschen <corinna@vinschen.de>
CommitDate: Wed Aug 2 16:56:24 2023 +0200

    Cygwin: uchar.h: fix definition of uchar16_t and uchar32_t
    
    Per C++11, uchar16_t and uchar32_t are defined the same as
    uint_least16_t and uint_least32_t.  Also, check for the C++
    version to make sure that the types are not colliding with
    predefined c++ types.
    
    Fixes: 4f258c55e87f ("Cygwin: Add ISO C11 functions c16rtomb, c32rtomb, mbrtoc16, mbrtoc32.")
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

Diff:
---
 winsup/cygwin/include/uchar.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/winsup/cygwin/include/uchar.h b/winsup/cygwin/include/uchar.h
index 84020553700d..bf865ff16e7f 100644
--- a/winsup/cygwin/include/uchar.h
+++ b/winsup/cygwin/include/uchar.h
@@ -6,6 +6,11 @@
 
 typedef	__uint16_t	char16_t;
 typedef	__uint32_t	char32_t;
+/* C++11 already defines those types. */
+#if !defined (__cplusplus) || (__cplusplus - 0 < 201103L)
+typedef	__uint_least16_t	char16_t;
+typedef	__uint_least32_t	char32_t;
+#endif
 
 __BEGIN_DECLS

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-08-02 15:04 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-02 15:04 [newlib-cygwin/main] Cygwin: uchar.h: fix definition of uchar16_t and uchar32_t Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).