https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124477
Nathaniel Shead <nshead at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |nshead at gcc dot gnu.org
--- Comment #1 from Nathaniel Shead <nshead at gcc dot gnu.org> ---
Thanks for the report! I haven't been able to reproduce locally, I wonder if
maybe it's a libc difference. Would you mind attaching maybe the result also
of the working version with '#include <cstring>'?
Alternatively, does the following simplified std module also ICE for you
similarly? And if so could you send the preprocessed source for a.cpp?
// a.cpp
module;
#include <cstring>
export module M;
export using ::memset;
// b.cpp
import M;
void foo(void* data) {
memset(data, 0xFF, 4);
}
# copy optimisation flags from above as needed to reproduce
$ g++ -fmodules -S -O3 #etc# a.cpp b.cpp