https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=e5880bef39fd0593bfa51a01b12485f87de4251a
commit e5880bef39fd0593bfa51a01b12485f87de4251a Author: Corinna Vinschen <[email protected]> AuthorDate: Thu Jan 12 10:51:39 2023 +0100 Commit: Corinna Vinschen <[email protected]> CommitDate: Thu Jan 12 10:51:39 2023 +0100 Cygwin: wincap.h: clarify NO_COPY_RO usage ...and drop one unnecessary usage of NO_COPY_RO. Signed-off-by: Corinna Vinschen <[email protected]> Diff: --- winsup/cygwin/forkable.cc | 2 +- winsup/cygwin/local_includes/winsup.h | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/winsup/cygwin/forkable.cc b/winsup/cygwin/forkable.cc index 350a95c3e416..fbc30ae3028f 100644 --- a/winsup/cygwin/forkable.cc +++ b/winsup/cygwin/forkable.cc @@ -313,7 +313,7 @@ struct namepart { bool create_dir; }; /* mutex name is formed along dir names */ -static namepart NO_COPY_RO const +static namepart const forkable_nameparts[] = { /* text textfunc mutex_from_dir create */ { L"<cygroot>", rootname, false, false, }, diff --git a/winsup/cygwin/local_includes/winsup.h b/winsup/cygwin/local_includes/winsup.h index c54440fa808d..c9788de8f012 100644 --- a/winsup/cygwin/local_includes/winsup.h +++ b/winsup/cygwin/local_includes/winsup.h @@ -10,6 +10,12 @@ details. */ #define __INSIDE_CYGWIN__ +/* Use "static NO_COPY_RO" instead of "static const", if the datastructure + should be R/O, but without the "const" qualifier. Typically this is only + required if the static datastructure is "const" in reality, but the Windows + function is defined with a R/W type as argument. Unfortunately this is + often the case. However, make sure to try "const" first, and use + "NO_COPY_RO" as seldom as possible. */ #define NO_COPY_RO __attribute__((nocommon)) __attribute__((section(".rdata_cygwin_nocopy"))) #define NO_COPY __attribute__((nocommon)) __attribute__((section(".data_cygwin_nocopy"))) #define NO_COPY_INIT __attribute__((section(".data_cygwin_nocopy")))
