Package: g++-14 Version: 14.2.0-12 Severity: normal Dear Maintainer,
* What led up to the situation? When working on the conversion of existing projectss to projects using modules the compiler reported an (unclear) error message when compiling a source file defining a module. * What exactly did you do that caused the issue? First I prepared in /usr/include/c++/14/ filesystem.gcm and memory.gcm, calling g++ --std=c++26 -Wall -fmodules-ts -x c++-system-header filesystem and g++ --std=c++26 -Wall -fmodules-ts -x c++-system-header memory followed by mv gcm.cache/usr/include/c++/14/*.gcm . so they're located in /usr/include/c++/14/ and can be imported. Then I wrote this source file (e.g., modsupport.cc, stripped down to its bare essentials): --------------------------------------------- export module Support; export import <filesystem>; export import <memory>; export { class Support { using Path = std::filesystem::path; }; } --------------------------------------------- In its directory I defined a sub-directory gcm.cache having a softlink usr -> /usr so the module-compiled headers are available. * What was the outcome of this action? When compiling modsupport.cc using g++ --std=c++26 -Wall -fmodules-ts -c modsupport.cc the compiler reports: modsupport.cc: In destructor ‘virtual std::filesystem::__cxx11::path::_Codecvt<char16_t>::~_Codecvt()’: modsupport.cc:24:35: warning: ignoring attributes applied to ‘std::auto_ptr< <template-parameter-1-1> >’ after definition [-Wattributes] 24 | using Path = std::filesystem::path; | ^~~~ modsupport.cc:24:35: note: during load of pendings for ‘std::codecvt’ modsupport.cc: In destructor ‘virtual std::filesystem::__cxx11::path::_Codecvt<wchar_t>::~_Codecvt()’: modsupport.cc:24:35: note: during load of pendings for ‘std::filesystem::__cxx11::path’ modsupport.cc: In destructor ‘virtual std::codecvt_utf8<wchar_t>::~codecvt_utf8()’: modsupport.cc:24:35: note: during load of pendings for ‘std::codecvt_utf8’ modsupport.cc: At global scope: modsupport.cc:24:35: note: during load of binding ‘std::filesystem::__cxx11::path’ which, AFAICS, isn't something I can repair. Also: when 'export import <memory>;' isn't specified the error message doesn't appear. * What outcome did you expect instead? I'd expect that the compilation would succeed without errors. -- System Information: Debian Release: trixie/sid APT prefers testing APT policy: (500, 'testing'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 6.12.10-amd64 (SMP w/2 CPU threads; PREEMPT) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages g++-14 depends on: ii g++-14-x86-64-linux-gnu 14.2.0-12 ii gcc-14 14.2.0-12 ii gcc-14-base 14.2.0-12 g++-14 recommends no packages. Versions of packages g++-14 suggests: pn g++-14-multilib <none> pn gcc-14-doc <none> -- no debconf information