Re: [PATCH 3/4] gcc/c-family/c-opts: fix quoting for `-fdeps-format=` error message

2024-05-08 Thread Ben Boeckel
On Tue, May 07, 2024 at 21:15:09 +, Joseph Myers wrote: > That can't be right. The GCC %q is a modifier that needs to have an > actual format specifier it modifies (so %qs - which produces the same > output as %<%s%> - but not %q by itself). Yes, I got CI results of failure and noticed that

[PATCH 2/4] libcpp/init: remove unnecessary `struct` keyword

2024-05-04 Thread Ben Boeckel
, 2023-09-01) Reported-by: Roland Illig libcpp/ * init.cc (cpp_finish): Remove unnecessary `struct` keyword. Signed-off-by: Ben Boeckel --- libcpp/init.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libcpp/init.cc b/libcpp/init.cc index 54fc9236d38..cbd22249b04

[PATCH 3/4] gcc/c-family/c-opts: fix quoting for `-fdeps-format=` error message

2024-05-04 Thread Ben Boeckel
Fixes: 024f135a1e9 (p1689r5: initial support, 2023-09-01) Reported-by: Roland Illig gcc/c-family/ * c-opts.cc (c_common_handle_option): Fix quoting in `-fdeps-format=` unrecognized parameter error message. Signed-off-by: Ben Boeckel --- gcc/c-family/c-opts.cc | 2 +- 1 file

[PATCH 4/4] gcc/c-family/c.opt: clarify `-fdeps-*` flag documentation

2024-05-04 Thread Ben Boeckel
. Signed-off-by: Ben Boeckel --- gcc/c-family/c.opt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt index 56cccf2a67b..fa82eebb518 100644 --- a/gcc/c-family/c.opt +++ b/gcc/c-family/c.opt @@ -256,13 +256,13 @@ MT C ObjC C++ ObjC

[PATCH 1/4] libcpp/mkdeps: fix indentation

2024-05-04 Thread Ben Boeckel
Fixes: 024f135a1e9 (p1689r5: initial support, 2023-09-01) Reported-by: Roland Illig libcpp/ * mkdeps.cc (fdeps_add_target): Fix indentation. Signed-off-by: Ben Boeckel --- libcpp/mkdeps.cc | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/libcpp

[PATCH 0/4] P1689 followup fixes

2024-05-04 Thread Ben Boeckel
Hi, Here are some minor fixes to documentation, formatting, and styling to the P1689R5 support through the `-fdeps-*` flags. Thanks, --Ben Ben Boeckel (4): libcpp/mkdeps: fix indentation libcpp/init: remove unnecessary `struct` keyword gcc/c-family/c-opts: fix quoting for `-fdeps-format

Re: [PATCHv2 wwwdocs 1/1] gcc-14: document P1689R5 scanning output support

2024-05-02 Thread Ben Boeckel
On Tue, Apr 30, 2024 at 10:24:44 +0100, Jonathan Wakely wrote: > On 20/11/23 11:22 -0500, Ben Boeckel wrote: > >--- > > htdocs/gcc-14/changes.html | 11 +++ > > 1 file changed, 11 insertions(+) > > > >diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-

Re: [PATCH wwwdocs 1/1] gcc-14: document P1689R5 scanning output support

2024-04-27 Thread Ben Boeckel
On Sat, Jan 06, 2024 at 14:17:14 +0100, Arsen Arsenović wrote: > Hi Ben, > > Ben Boeckel writes: > > > Ping? Is this the right place to submit this patch? > > Yes, this is the correct list, though it is usually recommended to use > --subject-prefix='PATCH wwwd

[PATCH v2 2/2] bugzilla: remove `gcc-bugs@` mailing list address

2024-03-08 Thread Ben Boeckel
/ChangeLog: * configure: Regenerate. * configure.ac: Replace gcc-bugs@ with bug reporting link. Signed-off-by: Ben Boeckel --- v1 -> v2: - Use `https://gcc.gnu.org/bugs/ instead of a direct Bugzilla link - Regenerate `configure` scripts --- config-ml.in |

[PATCH v2 1/2] email: fix patch email addresses

2024-03-08 Thread Ben Boeckel
ChangeLog: * config-ml.in: Update patch email address. * symlink-tree: Update patch email address. Signed-off-by: Ben Boeckel --- v1 -> v2: - add Signed-off-by --- config-ml.in | 2 +- symlink-tree | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/con

[PATCH wwwdocs 1/1] [RESEND] gcc-14: document P1689R5 scanning output support

2024-03-08 Thread Ben Boeckel
--- htdocs/gcc-14/changes.html | 11 +++ 1 file changed, 11 insertions(+) diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-14/changes.html index 7278f753..b506eeb1 100644 --- a/htdocs/gcc-14/changes.html +++ b/htdocs/gcc-14/changes.html @@ -112,6 +112,17 @@ a work-in-progress.

Re: [PATCH 1/1] gcc-14: document P1689R5 scanning output support

2024-01-03 Thread Ben Boeckel
On Mon, Nov 20, 2023 at 11:22:56 -0500, Ben Boeckel wrote: > --- > htdocs/gcc-14/changes.html | 11 +++ > 1 file changed, 11 insertions(+) > > diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-14/changes.html > index 7278f753..b506eeb1 100644 > --- a/htdocs/gcc-14

Re: [PATCH 2/2] bugzilla: remove `gcc-bugs@` mailing list address

2023-11-22 Thread Ben Boeckel
On Wed, Nov 22, 2023 at 23:15:56 +, Joseph Myers wrote: > On Mon, 20 Nov 2023, Ben Boeckel wrote: > > > Bugzilla is preferred today. > > > > ChangeLog: > > > > * config-ml.in: Replace gcc-bugs@ with Bugzilla link. > > * symlink-tree: Re

[PATCH 2/2] bugzilla: remove `gcc-bugs@` mailing list address

2023-11-20 Thread Ben Boeckel
: Replace gcc-bugs@ with Bugzilla link. Signed-off-by: Ben Boeckel --- config-ml.in | 2 +- fixincludes/README| 4 ++-- gcc/testsuite/lib/file-format.exp | 4 ++-- libcpp/configure | 12 ++-- libcpp/configure.ac | 2

[PATCH 1/1] email: fix bug and patch email addresses

2023-11-20 Thread Ben Boeckel
Changelog: * config-ml.in: Update bug and patch email address. * symlink-tree: Update bug and patch email address. --- config-ml.in | 4 ++-- symlink-tree | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/config-ml.in b/config-ml.in index 68854a4f16c..107d31

[PATCH 1/1] gcc-14: document P1689R5 scanning output support

2023-11-20 Thread Ben Boeckel
--- htdocs/gcc-14/changes.html | 11 +++ 1 file changed, 11 insertions(+) diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-14/changes.html index 7278f753..b506eeb1 100644 --- a/htdocs/gcc-14/changes.html +++ b/htdocs/gcc-14/changes.html @@ -112,6 +112,17 @@ a work-in-progress.

[PATCH 1/1] email: fix bug and patch email addresses

2023-11-20 Thread Ben Boeckel
Changelog: * config-ml.in: Update bug and patch email address. * symlink-tree: Update bug and patch email address. --- config-ml.in | 4 ++-- symlink-tree | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/config-ml.in b/config-ml.in index 68854a4f16c..107d31

[PATCH 1/1] gcc-14: document P1689R5 scanning output support

2023-11-20 Thread Ben Boeckel
--- htdocs/gcc-14/changes.html | 11 +++ 1 file changed, 11 insertions(+) diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-14/changes.html index 7278f753..b506eeb1 100644 --- a/htdocs/gcc-14/changes.html +++ b/htdocs/gcc-14/changes.html @@ -112,6 +112,17 @@ a work-in-progress.

Re: [PATCH v8 0/4] P1689R5 support

2023-09-20 Thread Ben Boeckel
On Tue, Sep 19, 2023 at 17:33:34 -0400, Jason Merrill wrote: > Pushed, thanks! Thanks! Is there a process I can use to backport this to GCC 13? --Ben

[PATCH v8 4/4] c++modules: report module mapper files as a dependency

2023-09-01 Thread Ben Boeckel via Gcc-patches
`:|` syntax output when generating modules. Signed-off-by: Ben Boeckel --- gcc/cp/mapper-client.cc | 5 + gcc/cp/mapper-client.h| 1 + gcc/cp/module.cc | 18 - .../g++.dg/modules/depreport-2.modmap

[PATCH v8 3/4] c++modules: report imported CMI files as dependencies

2023-09-01 Thread Ben Boeckel via Gcc-patches
/modules/test-depfile.py: New tool for validating depfile information. * lib/modules.exp: Support for validating depfile contents. Signed-off-by: Ben Boeckel --- gcc/cp/module.cc | 3 + gcc/testsuite/g++.dg/modules/depreport-1_a.C | 10 + gcc/testsuite/g

[PATCH v8 2/4] p1689r5: initial support

2023-09-01 Thread Ben Boeckel via Gcc-patches
-5.exp.ddi: New test expectation. * g++.dg/modules/modules.exp: Load new P1689 library routines. * g++.dg/modules/test-p1689.py: New tool for validating P1689 output. * lib/modules.exp: Support for validating P1689 outputs. Signed-off-by: Ben Boeckel --- gc

[PATCH v8 0/4] P1689R5 support

2023-09-01 Thread Ben Boeckel via Gcc-patches
moval of the `deps_write(extra)` parameter to option-checking where ndeeded - default parameter of `cpp_finish(fdeps_stream = NULL)` - unification of libcpp UTF-8 validity functions from v1 - test cases for flag parsing states (depflags-*) and p1689 output (p1689-*) Ben Boeckel (4): spec: add

[PATCH v8 1/4] spec: add a spec function to join arguments

2023-09-01 Thread Ben Boeckel via Gcc-patches
n all arguments. Signed-off-by: Ben Boeckel --- gcc/gcc.cc | 23 +++ 1 file changed, 23 insertions(+) diff --git a/gcc/gcc.cc b/gcc/gcc.cc index fdfac0b4fe4..4c4e81dee50 100644 --- a/gcc/gcc.cc +++ b/gcc/gcc.cc @@ -447,6 +447,7 @@ static const char *greater_than_spec_func

Re: [PATCH v5 4/5] c++modules: report imported CMI files as dependencies

2023-07-29 Thread Ben Boeckel via Gcc-patches
On Thu, Jul 27, 2023 at 18:13:48 -0700, Jason Merrill wrote: > On 7/23/23 20:26, Ben Boeckel wrote: > > Sure, *CMake* knows them, but the *build tool* needs to be told > > (typically `make` or `ninja`) because it is what is actually executing > > the build graph. The way th

Re: [PATCH v5 4/5] c++modules: report imported CMI files as dependencies

2023-07-23 Thread Ben Boeckel via Gcc-patches
On Fri, Jul 21, 2023 at 16:23:07 -0400, Nathan Sidwell wrote: > It occurs to me that the model I am envisioning is similar to CMake's object > libraries. Object libraries are a convenient name for a bunch of object > files. > IIUC they're linked by naming the individual object files (or I think

Re: [PATCH v5 4/5] c++modules: report imported CMI files as dependencies

2023-07-21 Thread Ben Boeckel via Gcc-patches
On Thu, Jul 20, 2023 at 17:00:32 -0400, Nathan Sidwell wrote: > On 7/19/23 20:47, Ben Boeckel wrote: > > But it is inhibiting distributed builds because the distributing tool > > would need to know: > > > > - what CMIs are actually imported (here, "read the module

Re: [PATCH v5 4/5] c++modules: report imported CMI files as dependencies

2023-07-19 Thread Ben Boeckel via Gcc-patches
an be sent. And relocatable is probably fine. How does it interact with reproducible builds? Or are GCC CMIs not really something anyone should consider for installation (even as a "here, maybe this can help consumers" mechanism)? > On 7/18/23 20:01, Ben Boeckel wrote: > > Ma

Re: [PATCH v5 4/5] c++modules: report imported CMI files as dependencies

2023-07-18 Thread Ben Boeckel via Gcc-patches
On Tue, Jul 18, 2023 at 16:52:44 -0400, Jason Merrill wrote: > On 6/25/23 12:36, Ben Boeckel wrote: > > On Fri, Jun 23, 2023 at 08:12:41 -0400, Nathan Sidwell wrote: > >> On 6/22/23 22:45, Ben Boeckel wrote: > >>> On Thu, Jun 22, 2023 at 17:21:42 -0400, Jason Merrill

[PATCH v7 2/4] p1689r5: initial support

2023-07-02 Thread Ben Boeckel via Gcc-patches
-5.exp.ddi: New test expectation. * g++.dg/modules/modules.exp: Load new P1689 library routines. * g++.dg/modules/test-p1689.py: New tool for validating P1689 output. * lib/modules.exp: Support for validating P1689 outputs. Signed-off-by: Ben Boeckel --- gc

[PATCH v7 4/4] c++modules: report module mapper files as a dependency

2023-07-02 Thread Ben Boeckel via Gcc-patches
`:|` syntax output when generating modules. Signed-off-by: Ben Boeckel --- gcc/cp/mapper-client.cc | 5 + gcc/cp/mapper-client.h| 1 + gcc/cp/module.cc | 18 - .../g++.dg/modules/depreport-2.modmap

[PATCH v7 1/4] spec: add a spec function to join arguments

2023-07-02 Thread Ben Boeckel via Gcc-patches
n all arguments. Signed-off-by: Ben Boeckel --- gcc/gcc.cc | 15 +++ 1 file changed, 15 insertions(+) diff --git a/gcc/gcc.cc b/gcc/gcc.cc index fdfac0b4fe4..44433b80d61 100644 --- a/gcc/gcc.cc +++ b/gcc/gcc.cc @@ -447,6 +447,7 @@ static const char *greater_than_spec_func (int, const

[PATCH v7 0/4] P1689R5 support

2023-07-02 Thread Ben Boeckel via Gcc-patches
write(extra)` parameter to option-checking where ndeeded - default parameter of `cpp_finish(fdeps_stream = NULL)` - unification of libcpp UTF-8 validity functions from v1 - test cases for flag parsing states (depflags-*) and p1689 output (p1689-*) Ben Boeckel (4): spec: add a spec function to join

[PATCH v7 3/4] c++modules: report imported CMI files as dependencies

2023-07-02 Thread Ben Boeckel via Gcc-patches
/modules/test-depfile.py: New tool for validating depfile information. * lib/modules.exp: Support for validating depfile contents. Signed-off-by: Ben Boeckel --- gcc/cp/module.cc | 3 + gcc/testsuite/g++.dg/modules/depreport-1_a.C | 10 + gcc/testsuite/g

Re: [PATCH v5 3/5] p1689r5: initial support

2023-06-25 Thread Ben Boeckel via Gcc-patches
On Fri, Jun 23, 2023 at 14:31:17 -0400, Jason Merrill wrote: > On 6/20/23 15:46, Ben Boeckel wrote: > > On Tue, Feb 14, 2023 at 16:50:27 -0500, Jason Merrill wrote: > >> On 1/25/23 13:06, Ben Boeckel wrote: > > >>> Header units (including the standard library he

Re: [PATCH v5 5/5] c++modules: report module mapper files as a dependency

2023-06-25 Thread Ben Boeckel via Gcc-patches
On Fri, Jun 23, 2023 at 10:44:11 -0400, Jason Merrill wrote: > On 1/25/23 16:06, Ben Boeckel wrote: > > It affects the build, and if used as a static file, can reliably be > > tracked using the `-MF` mechanism. > > Hmm, this seems a bit like making all .o depend on the Makef

Re: [PATCH v5 4/5] c++modules: report imported CMI files as dependencies

2023-06-25 Thread Ben Boeckel via Gcc-patches
On Fri, Jun 23, 2023 at 08:12:41 -0400, Nathan Sidwell wrote: > On 6/22/23 22:45, Ben Boeckel wrote: > > On Thu, Jun 22, 2023 at 17:21:42 -0400, Jason Merrill wrote: > >> On 1/25/23 16:06, Ben Boeckel wrote: > >>> They affect the build, so report them via `-MF` mechan

Re: [PATCH v5 4/5] c++modules: report imported CMI files as dependencies

2023-06-22 Thread Ben Boeckel via Gcc-patches
On Thu, Jun 22, 2023 at 17:21:42 -0400, Jason Merrill wrote: > On 1/25/23 16:06, Ben Boeckel wrote: > > They affect the build, so report them via `-MF` mechanisms. > > Why isn't this covered by the existing code in preprocessed_module? It appears as though it is neute

[PATCH 1/1] libcpp: allow UCS_LIMIT codepoints in UTF-8 strings

2023-06-21 Thread Ben Boeckel
libcpp/ * charset.cc: Allow `UCS_LIMIT` in UTF-8 strings. Reported-by: Damien Guibouret Fixes: c1dbaa6656a (libcpp: reject codepoints above 0x10, 2023-06-06) Signed-off-by: Ben Boeckel --- libcpp/charset.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libcpp

Re: [PATCH v5 3/5] p1689r5: initial support

2023-06-20 Thread Ben Boeckel via Gcc-patches
On Tue, Feb 14, 2023 at 16:50:27 -0500, Jason Merrill wrote: > On 1/25/23 13:06, Ben Boeckel wrote: > > - header-unit information fields > > > > Header units (including the standard library headers) are 100% > > unsupported right now because the `-E` mechanism wants

Re: [PATCH v5 3/5] p1689r5: initial support

2023-06-20 Thread Ben Boeckel via Gcc-patches
On Mon, Jun 19, 2023 at 17:33:58 -0400, Jason Merrill wrote: > On 5/12/23 10:24, Ben Boeckel wrote: > > `file` can be omitted (the `output_stream` will be used then). I *think* > > I see that adding: > > > > %{fdeps_file:-fdeps-file=%{!o:%b.ddi}%{o*:%.ddi%*}}

Re: [PATCH v6 0/4] P1689R5 support

2023-06-17 Thread Ben Boeckel via Gcc-patches
On Fri, Jun 16, 2023 at 23:55:53 -0400, Jason Merrill wrote: > I see the same thing with patch 4 on x86_64-pc-linux-gnu, e.g. > > FAIL: g++.dg/modules/ben-1_a.C -std=c++17 (test for excess errors) > Excess errors: > /home/jason/gt/gcc/testsuite/g++.dg/modules/ben-1_a.C:9:1: internal > compiler err

Re: [PATCH v6 0/4] P1689R5 support

2023-06-16 Thread Ben Boeckel via Gcc-patches
On Fri, Jun 16, 2023 at 15:48:59 -0400, Ben Boeckel wrote: > On Thu, Jun 08, 2023 at 21:59:13 +0400, Maxim Kuvyrkov wrote: > > This patch series causes ICEs on arm-linux-gnueabihf. Would you > > please investigate? Please let me know if you need any in reproducing > > these.

Re: [PATCH v6 0/4] P1689R5 support

2023-06-16 Thread Ben Boeckel via Gcc-patches
On Thu, Jun 08, 2023 at 21:59:13 +0400, Maxim Kuvyrkov wrote: > This patch series causes ICEs on arm-linux-gnueabihf. Would you > please investigate? Please let me know if you need any in reproducing > these. Finally back at it. I tried on aarch64, but wasn't able to reproduce the errors (alas,

[PATCH v6 3/4] c++modules: report imported CMI files as dependencies

2023-06-06 Thread Ben Boeckel via Gcc-patches
They affect the build, so report them via `-MF` mechanisms. gcc/cp/ * module.cc (do_import): Report imported CMI files as dependencies. Signed-off-by: Ben Boeckel --- gcc/cp/module.cc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gcc/cp/module.cc b/gcc/cp/module.cc

[PATCH v6 2/4] p1689r5: initial support

2023-06-06 Thread Ben Boeckel via Gcc-patches
5.exp.json: New test expectation. * g++.dg/modules/modules.exp: Load new P1689 library routines. * g++.dg/modules/test-p1689.py: New tool for validating P1689 output. * lib/modules.exp: Support for validating P1689 outputs. Signed-off-by: Ben Boeckel --- gc

[PATCH v6 4/4] c++modules: report module mapper files as a dependency

2023-06-06 Thread Ben Boeckel via Gcc-patches
(make_mapper, get_mapper): Pass the dependency tracking class down. Signed-off-by: Ben Boeckel --- gcc/cp/mapper-client.cc | 4 gcc/cp/mapper-client.h | 1 + gcc/cp/module.cc| 18 +- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/gcc/cp/mapper

[PATCH v6 1/4] libcpp: reject codepoints above 0x10FFFF

2023-06-06 Thread Ben Boeckel via Gcc-patches
Unicode does not support such values because they are unrepresentable in UTF-16. libcpp/ * charset.cc: Reject encodings of codepoints above 0x10. UTF-16 does not support such codepoints and therefore all Unicode rejects such values. Signed-off-by: Ben Boeckel

[PATCH v6 0/4] P1689R5 support

2023-06-06 Thread Ben Boeckel via Gcc-patches
removal of the `deps_write(extra)` parameter to option-checking where ndeeded - default parameter of `cpp_finish(fdeps_stream = NULL)` - unification of libcpp UTF-8 validity functions from v1 - test cases for flag parsing states (depflags-*) and p1689 output (p1689-*) Ben Boeckel (4): libcpp: reje

Re: [PATCH v5 4/5] c++modules: report imported CMI files as dependencies

2023-05-12 Thread Ben Boeckel via Gcc-patches
On Mon, Feb 13, 2023 at 13:33:50 -0500, Jason Merrill wrote: > Both this and the mapper dependency patch seem to cause most of the > modules testcases to crash; please remember to run the regression tests > (https://gcc.gnu.org/contribute.html#testing) Fixed for v6. `cpp_get_deps` can return `NU

Re: [PATCH v5 1/5] libcpp: reject codepoints above 0x10FFFF

2023-05-12 Thread Ben Boeckel via Gcc-patches
On Mon, Feb 13, 2023 at 10:53:17 -0500, Jason Merrill wrote: > On 1/25/23 13:06, Ben Boeckel wrote: > > Unicode does not support such values because they are unrepresentable in > > UTF-16. > > > > libcpp/ > > > > * charset.cc: Reject encodings of co

Re: [PATCH v5 3/5] p1689r5: initial support

2023-05-12 Thread Ben Boeckel via Gcc-patches
On Tue, Feb 14, 2023 at 16:50:27 -0500, Jason Merrill wrote: > I notice that the actual flags are all -fdep-*, though some of them are > -fdeps-* here, and the internal variables all seem to be fdeps_*. I > lean toward harmonizing on "deps", I think. Done. > I don't love the three separate opt

Re: [PATCH v5 0/5] P1689R5 support

2023-02-03 Thread Ben Boeckel via Gcc-patches
On Fri, Feb 03, 2023 at 09:10:21 +, Jonathan Wakely wrote: > On Fri, 3 Feb 2023 at 08:58, Jonathan Wakely wrote: > > On Fri, 3 Feb 2023, 04:09 Andrew Pinski via Gcc, wrote: > >> On Wed, Jan 25, 2023 at 1:07 PM Ben Boeckel via Fortran > >> wrote: > >> >

Re: [PATCH v5 0/5] P1689R5 support

2023-02-02 Thread Ben Boeckel via Gcc-patches
On Thu, Feb 02, 2023 at 21:24:12 +0100, Harald Anlauf wrote: > Am 25.01.23 um 22:06 schrieb Ben Boeckel via Gcc-patches: > > Hi, > > > > This patch series adds initial support for ISO C++'s [P1689R5][], a > > format for describing C++ module requirements and provisi

Re: [PATCH v5 0/5] P1689R5 support

2023-02-02 Thread Ben Boeckel via Gcc-patches
On Wed, Jan 25, 2023 at 16:06:31 -0500, Ben Boeckel wrote: > This patch series adds initial support for ISO C++'s [P1689R5][], a > format for describing C++ module requirements and provisions based on > the source code. This is required because compiling C++ with modules is > n

[PATCH v5 2/5] libcpp: add a function to determine UTF-8 validity of a C string

2023-01-25 Thread Ben Boeckel via Gcc-patches
h: Add prototype for `_cpp_valid_utf8_str`. Signed-off-by: Ben Boeckel --- libcpp/charset.cc | 20 libcpp/internal.h | 2 ++ 2 files changed, 22 insertions(+) diff --git a/libcpp/charset.cc b/libcpp/charset.cc index f7ae12ea5a2..616be9d02ee 100644 --- a/libcpp/charset.cc +++ b/libcpp/c

[PATCH v5 5/5] c++modules: report module mapper files as a dependency

2023-01-25 Thread Ben Boeckel via Gcc-patches
(make_mapper, get_mapper): Pass the dependency tracking class down. Signed-off-by: Ben Boeckel --- gcc/cp/mapper-client.cc | 4 gcc/cp/mapper-client.h | 1 + gcc/cp/module.cc| 18 +- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/gcc/cp/mapper

[PATCH v5 4/5] c++modules: report imported CMI files as dependencies

2023-01-25 Thread Ben Boeckel via Gcc-patches
They affect the build, so report them via `-MF` mechanisms. gcc/cp/ * module.cc (do_import): Report imported CMI files as dependencies. Signed-off-by: Ben Boeckel --- gcc/cp/module.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gcc/cp/module.cc b/gcc/cp/module.cc

[PATCH v5 3/5] p1689r5: initial support

2023-01-25 Thread Ben Boeckel via Gcc-patches
ctation. * g++.dg/modules/modules.exp: Load new P1689 library routines. * g++.dg/modules/test-p1689.py: New tool for validating P1689 output. * lib/modules.exp: Support for validating P1689 outputs. Signed-off-by: Ben Boeckel --- gcc/c-family/c-opts.cc

[PATCH v5 1/5] libcpp: reject codepoints above 0x10FFFF

2023-01-25 Thread Ben Boeckel via Gcc-patches
Unicode does not support such values because they are unrepresentable in UTF-16. libcpp/ * charset.cc: Reject encodings of codepoints above 0x10. UTF-16 does not support such codepoints and therefore all Unicode rejects such values. Signed-off-by: Ben Boeckel

[PATCH v5 0/5] P1689R5 support

2023-01-25 Thread Ben Boeckel via Gcc-patches
documentation updated/added in the UTF-8 routine editing v1 -> v2: - removal of the `deps_write(extra)` parameter to option-checking where ndeeded - default parameter of `cpp_finish(fdeps_stream = NULL)` - unification of libcpp UTF-8 validity functions from v1 - test cases for flag parsing s

[PATCH v4 1/3] libcpp: reject codepoints above 0x10FFFF

2022-12-10 Thread Ben Boeckel via Gcc-patches
Unicode does not support such values because they are unrepresentable in UTF-16. libcpp/ * charset.cc: Reject encodings of codepoints above 0x10. UTF-16 does not support such codepoints and therefore all Unicode rejects such values. Signed-off-by: Ben Boeckel

[PATCH v4 3/3] p1689r5: initial support

2022-12-10 Thread Ben Boeckel via Gcc-patches
ctation. * g++.dg/modules/modules.exp: Load new P1689 library routines. * g++.dg/modules/test-p1689.py: New tool for validating P1689 output. * lib/modules.exp: Support for validating P1689 outputs. Signed-off-by: Ben Boeckel --- gcc/c-family/c-opts.cc

[PATCH v4 2/3] libcpp: add a function to determine UTF-8 validity of a C string

2022-12-10 Thread Ben Boeckel via Gcc-patches
h: Add prototype for `_cpp_valid_utf8_str`. Signed-off-by: Ben Boeckel --- libcpp/charset.cc | 20 libcpp/internal.h | 2 ++ 2 files changed, 22 insertions(+) diff --git a/libcpp/charset.cc b/libcpp/charset.cc index 324b5b19136..422cb52595c 100644 --- a/libcpp/charset.cc +++ b/libcpp/c

[PATCH v4 0/3] RFC: P1689R5 support

2022-12-10 Thread Ben Boeckel via Gcc-patches
tream = NULL)` - unification of libcpp UTF-8 validity functions from v1 - test cases for flag parsing states (depflags-*) and p1689 output (p1689-*) Ben Boeckel (3): libcpp: reject codepoints above 0x10 libcpp: add a function to determine UTF-8 validity of a C string p1689

[PATCH v3 1/3] libcpp: reject codepoints above 0x10FFFF

2022-11-08 Thread Ben Boeckel via Gcc-patches
Unicode does not support such values because they are unrepresentable in UTF-16. libcpp/ * charset.cc: Reject encodings of codepoints above 0x10. UTF-16 does not support such codepoints and therefore all Unicode rejects such values. Signed-off-by: Ben Boeckel

[PATCH v3 3/3] p1689r5: initial support

2022-11-08 Thread Ben Boeckel via Gcc-patches
ctation. * g++.dg/modules/modules.exp: Load new P1689 library routines. * g++.dg/modules/test-p1689.py: New tool for validating P1689 output. * lib/modules.exp: Support for validating P1689 outputs. Signed-off-by: Ben Boeckel --- gcc/c-family/c-opts.cc

[PATCH v3 2/3] libcpp: add a function to determine UTF-8 validity of a C string

2022-11-08 Thread Ben Boeckel via Gcc-patches
h: Add prototype for `_cpp_valid_utf8_str`. Signed-off-by: Ben Boeckel --- libcpp/charset.cc | 20 libcpp/internal.h | 2 ++ 2 files changed, 22 insertions(+) diff --git a/libcpp/charset.cc b/libcpp/charset.cc index 324b5b19136..e130bc01f48 100644 --- a/libcpp/charset.cc +++ b/libcpp/c

[PATCH v3 0/3] RFC: P1689R5 support

2022-11-08 Thread Ben Boeckel via Gcc-patches
t cases for flag parsing states (depflags-*) and p1689 output (p1689-*) Ben Boeckel (3): libcpp: reject codepoints above 0x10 libcpp: add a function to determine UTF-8 validity of a C string p1689r5: initial support gcc/c-family/c-opts.cc| 40 +++- gcc/c-fami

Re: [PATCH v2 3/3] p1689r5: initial support

2022-11-01 Thread Ben Boeckel via Gcc-patches
On Tue, Nov 01, 2022 at 08:57:37 -0600, Tom Tromey wrote: > >>>>> "Ben" == Ben Boeckel via Gcc-patches writes: > > Ben> - `-fdeps-file=` specifies the path to the file to write the format to. > > I don't know how this output is intended t

Re: [PATCH v2 3/3] p1689r5: initial support

2022-10-28 Thread Ben Boeckel via Gcc-patches
On Thu, Oct 27, 2022 at 19:16:44 -0400, Ben Boeckel wrote: > diff --git a/gcc/testsuite/g++.dg/modules/modules.exp > b/gcc/testsuite/g++.dg/modules/modules.exp > index afb323d0efd..7fe8825144f 100644 > --- a/gcc/testsuite/g++.dg/modules/modules.exp > +++ b/gcc/testsuite/g++.dg/modu

Re: [PATCH v2 2/3] libcpp: add a function to determine UTF-8 validity of a C string

2022-10-28 Thread Ben Boeckel via Gcc-patches
On Fri, Oct 28, 2022 at 08:59:16 -0400, David Malcolm wrote: > On Thu, 2022-10-27 at 19:16 -0400, Ben Boeckel wrote: > > This simplifies the interface for other UTF-8 validity detections > > when a > > simple "yes" or "no" answer is suffic

[PATCH v2 1/3] libcpp: reject codepoints above 0x10FFFF

2022-10-27 Thread Ben Boeckel via Gcc-patches
Unicode does not support such values because they are unrepresentable in UTF-16. Signed-off-by: Ben Boeckel --- libcpp/ChangeLog | 6 ++ libcpp/charset.cc | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 18d5bcceaf0

[PATCH v2 3/3] p1689r5: initial support

2022-10-27 Thread Ben Boeckel via Gcc-patches
ed to it. It happens rarely and seems to be the result of some `ftruncate`-style call which results in extra padding in the contents. Noting it here as an observation at least. Signed-off-by: Ben Boeckel --- gcc/ChangeLog | 5 + gcc/c-family/ChangeLog

[PATCH v2 2/3] libcpp: add a function to determine UTF-8 validity of a C string

2022-10-27 Thread Ben Boeckel via Gcc-patches
This simplifies the interface for other UTF-8 validity detections when a simple "yes" or "no" answer is sufficient. Signed-off-by: Ben Boeckel --- libcpp/ChangeLog | 6 ++ libcpp/charset.cc | 18 ++ libcpp/internal.h | 2 ++ 3 files changed, 26 inserti

[PATCH v2 0/1] RFC: P1689R5 support

2022-10-27 Thread Ben Boeckel via Gcc-patches
deps_write(extra)` parameter to option-checking where ndeeded - default parameter of `cpp_finish(fdeps_stream = NULL)` - unification of libcpp UTF-8 validity functions from v1 - test cases for flag parsing states (depflags-*) and p1689 output (p1689-*) Ben Boeckel (3): libcpp: reject codepoints a

Re: [PATCH RESEND 1/1] p1689r5: initial support

2022-10-20 Thread Ben Boeckel via Gcc-patches
On Thu, Oct 20, 2022 at 11:39:25 -0400, Jason Merrill wrote: > Oops, I was thinking this was in gcc as well. In libcpp there's > _cpp_valid_utf8 (which calls one_utf8_to_cppchar). This routine has a lot more logic (including UCN decoding) and the `one_utf8_to_cppchar` also supports out-of-bounds

Re: [PATCH RESEND 0/1] RFC: P1689R5 support

2022-10-18 Thread Ben Boeckel via Gcc-patches
On Thu, Oct 13, 2022 at 13:08:46 -0400, David Malcolm wrote: > On Mon, 2022-10-10 at 16:21 -0400, Jason Merrill wrote: > > David Malcolm would probably know best about JSON wrangling. > > Unfortunately our JSON output doesn't make any guarantees about the > ordering of keys within an object, so th

Re: [PATCH RESEND 1/1] p1689r5: initial support

2022-10-18 Thread Ben Boeckel via Gcc-patches
On Tue, Oct 11, 2022 at 07:42:43 -0400, Ben Boeckel wrote: > On Mon, Oct 10, 2022 at 17:04:09 -0400, Jason Merrill wrote: > > Can we share utf8 parsing code with decode_utf8_char in pretty-print.cc? > > I can look at factoring that out. I'll have to decode its logic to se

Re: [PATCH RESEND 1/1] p1689r5: initial support

2022-10-11 Thread Ben Boeckel via Gcc-patches
On Mon, Oct 10, 2022 at 17:04:09 -0400, Jason Merrill wrote: > On 10/4/22 11:12, Ben Boeckel wrote: > > This patch implements support for [P1689R5][] to communicate to a build > > system the C++20 module dependencies to build systems so that they may > > build `.gcm` file

Re: [PATCH RESEND 1/1] p1689r5: initial support

2022-10-11 Thread Ben Boeckel via Gcc-patches
On Tue, Oct 04, 2022 at 21:12:03 +0200, Harald Anlauf wrote: > Am 04.10.22 um 17:12 schrieb Ben Boeckel: > > This patch implements support for [P1689R5][] to communicate to a build > > system the C++20 module dependencies to build systems so that they may > > build `.gcm` file

[PATCH RESEND 0/1] RFC: P1689R5 support

2022-10-04 Thread Ben Boeckel
e: https://reviews.llvm.org/D134269 with the same flags (though using my old `trtbd` spelling for the format name). Thanks, --Ben Ben Boeckel (1): p1689r5: initial support gcc/ChangeLog | 9 ++ gcc/c-family/ChangeLog | 6 + gcc/c-family/c-opts.cc | 40 ++-

[PATCH RESEND 1/1] p1689r5: initial support

2022-10-04 Thread Ben Boeckel
ed to it. It happens rarely and seems to be the result of some `ftruncate`-style call which results in extra padding in the contents. Noting it here as an observation at least. Signed-off-by: Ben Boeckel --- gcc/ChangeLog | 9 ++ gcc/c-family/ChangeLog | 6 + gcc/c-family/c-opts.cc

[PATCH 1/1] p1689r5: initial support

2022-09-27 Thread Ben Boeckel via Gcc-patches
ed to it. It happens rarely and seems to be the result of some `ftruncate`-style call which results in extra padding in the contents. Noting it here as an observation at least. Signed-off-by: Ben Boeckel --- gcc/ChangeLog | 9 ++ gcc/c-family/ChangeLog | 6 + gcc/c-family/c-opts.cc

[PATCH 0/1] RFC: P1689R5 support

2022-09-27 Thread Ben Boeckel via Gcc-patches
e: https://reviews.llvm.org/D134269 with the same flags (though using my old `trtbd` spelling for the format name). Thanks, --Ben Ben Boeckel (1): p1689r5: initial support gcc/ChangeLog | 9 ++ gcc/c-family/ChangeLog | 6 + gcc/c-family/c-opts.cc | 40 ++-