https://gcc.gnu.org/g:13757e50ff0b4e0dccfabc67b1322a2724bf3a5c
commit r15-2005-g13757e50ff0b4e0dccfabc67b1322a2724bf3a5c Author: Nathaniel Shead <nathanielosh...@gmail.com> Date: Fri Jul 12 22:59:19 2024 +1000 c++/modules: Add testcase for fixed issue with usings [PR115798] This issue was fixed by r15-2003-gd6bf4b1c932211, but seems worth adding to the testsuite. PR c++/115798 gcc/testsuite/ChangeLog: * g++.dg/modules/using-26_a.C: New test. * g++.dg/modules/using-26_b.C: New test. * g++.dg/modules/using-26_c.C: New test. Signed-off-by: Nathaniel Shead <nathanielosh...@gmail.com> Diff: --- gcc/testsuite/g++.dg/modules/using-26_a.C | 15 +++++++++++++++ gcc/testsuite/g++.dg/modules/using-26_b.C | 10 ++++++++++ gcc/testsuite/g++.dg/modules/using-26_c.C | 9 +++++++++ 3 files changed, 34 insertions(+) diff --git a/gcc/testsuite/g++.dg/modules/using-26_a.C b/gcc/testsuite/g++.dg/modules/using-26_a.C new file mode 100644 index 000000000000..adab83d42433 --- /dev/null +++ b/gcc/testsuite/g++.dg/modules/using-26_a.C @@ -0,0 +1,15 @@ +// PR c++/115798 +// { dg-additional-options "-fmodules-ts" } +// { dg-module-cmi base } + +module; +#include <cstdint> +export module base; + +export { + using ::int8_t; +} + +export namespace std { + using std::int8_t; +} diff --git a/gcc/testsuite/g++.dg/modules/using-26_b.C b/gcc/testsuite/g++.dg/modules/using-26_b.C new file mode 100644 index 000000000000..06ed599df41e --- /dev/null +++ b/gcc/testsuite/g++.dg/modules/using-26_b.C @@ -0,0 +1,10 @@ +// PR c++/115798 +// { dg-additional-options "-fmodules-ts" } +// { dg-module-cmi xstd } + +export module xstd; +import base; + +export namespace std { + using std::int8_t; +} diff --git a/gcc/testsuite/g++.dg/modules/using-26_c.C b/gcc/testsuite/g++.dg/modules/using-26_c.C new file mode 100644 index 000000000000..68f45cacb82e --- /dev/null +++ b/gcc/testsuite/g++.dg/modules/using-26_c.C @@ -0,0 +1,9 @@ +// PR c++/115798 +// { dg-additional-options "-fmodules-ts" } + +import xstd; +import base; + +int main() { + static_assert(__is_same(int8_t, std::int8_t)); +}