On Thu, 22 May 2025, Nathaniel Shead wrote:

> This patch series adds support for streaming some internal declarations
> in C++20 modules that we previously would ICE on.  

I like this patch series a lot, thanks for working on it!  I can't
approve but it looks pretty good to me.

> 
> The series has been successfully bootstrapped and regtested on
> x86_64-pc-linux-gnu.  Additionally, modules.exp now passes with
> '--target_board=unix/-fsanitize=undefined'.
> 
> Nathaniel Shead (4):
>   c++: Add flag to detect underlying representative of bitfield decls
>   c++/modules: Implement streaming of uncontexted TYPE_DECLs [PR98735]
>   c++/modules: Support streaming new size cookie for constexpr
>     [PR120040]
>   c++/modules: Avoid name clashes when streaming internal labels
>     [PR98375,PR118904]
> 
>  gcc/cp/constexpr.cc                        |   2 +-
>  gcc/cp/cp-gimplify.cc                      |   5 +-
>  gcc/cp/init.cc                             |  10 +-
>  gcc/cp/module.cc                           | 170 +++++++++++++++++++--
>  gcc/stor-layout.cc                         |   1 +
>  gcc/testsuite/g++.dg/modules/pr120040_a.C  |  19 +++
>  gcc/testsuite/g++.dg/modules/pr120040_b.C  |  15 ++
>  gcc/testsuite/g++.dg/modules/src-loc-1.h   |   6 +
>  gcc/testsuite/g++.dg/modules/src-loc-1_a.H |   7 +
>  gcc/testsuite/g++.dg/modules/src-loc-1_b.C |   5 +
>  gcc/testsuite/g++.dg/modules/src-loc-1_c.C |  16 ++
>  gcc/testsuite/g++.dg/modules/ubsan-1_a.C   |  10 ++
>  gcc/testsuite/g++.dg/modules/ubsan-1_b.C   |  14 ++
>  gcc/testsuite/g++.dg/ubsan/module-1-aux.cc |  12 ++
>  gcc/testsuite/g++.dg/ubsan/module-1.C      |  11 ++
>  gcc/tree-core.h                            |   1 +
>  gcc/tree.cc                                |  51 +++++++
>  gcc/tree.h                                 |  12 ++
>  gcc/ubsan.cc                               |  16 +-
>  19 files changed, 350 insertions(+), 33 deletions(-)
>  create mode 100644 gcc/testsuite/g++.dg/modules/pr120040_a.C
>  create mode 100644 gcc/testsuite/g++.dg/modules/pr120040_b.C
>  create mode 100644 gcc/testsuite/g++.dg/modules/src-loc-1.h
>  create mode 100644 gcc/testsuite/g++.dg/modules/src-loc-1_a.H
>  create mode 100644 gcc/testsuite/g++.dg/modules/src-loc-1_b.C
>  create mode 100644 gcc/testsuite/g++.dg/modules/src-loc-1_c.C
>  create mode 100644 gcc/testsuite/g++.dg/modules/ubsan-1_a.C
>  create mode 100644 gcc/testsuite/g++.dg/modules/ubsan-1_b.C
>  create mode 100644 gcc/testsuite/g++.dg/ubsan/module-1-aux.cc
>  create mode 100644 gcc/testsuite/g++.dg/ubsan/module-1.C
> 
> -- 
> 2.47.0
> 
> 

Reply via email to