From f452f0d67f1a5a0da4e1e15026c5a9c322c2f5b7 Mon Sep 17 00:00:00 2001 From: Iain Buclaw Date: Sun, 21 Apr 2019 07:03:22 +0000 Subject: [PATCH] d: Ensure all unittests are registered against the original module. As any unittest functions registered against the testing module when compiling with -fbuilding-libphobos-tests are ignored during the generation of the ModuleInfo data. gcc/d/ChangeLog: 2019-04-21 Iain Buclaw * modules.cc (register_module_decl): Don't register unittests against the ModuleInfo symbol for -fbuilding-libphobos-tests. From-SVN: r270477 --- gcc/d/ChangeLog | 5 +++++ gcc/d/modules.cc | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/d/ChangeLog b/gcc/d/ChangeLog index 5a622af34a2..48fc9c69b4f 100644 --- a/gcc/d/ChangeLog +++ b/gcc/d/ChangeLog @@ -1,3 +1,8 @@ +2019-04-21 Iain Buclaw + + * modules.cc (register_module_decl): Don't register unittests against + the ModuleInfo symbol for -fbuilding-libphobos-tests. + 2019-04-17 Iain Buclaw * d-system.h (POSIX): Define unix as POSIX. diff --git a/gcc/d/modules.cc b/gcc/d/modules.cc index 315f5d82356..35050c8e17a 100644 --- a/gcc/d/modules.cc +++ b/gcc/d/modules.cc @@ -836,7 +836,8 @@ register_module_decl (Declaration *d) compiling in unittests are kept track of separately so they are not omitted when compiling with -fbuilding-libphobos-tests. */ module_info *minfo; - if (flag_building_libphobos_tests && DECL_IN_UNITTEST_CONDITION_P (decl)) + if (flag_building_libphobos_tests && !fd->isUnitTestDeclaration () + && DECL_IN_UNITTEST_CONDITION_P (decl)) minfo = current_testing_module; else minfo = current_moduleinfo; -- 2.30.2