[Bug c++/112899] New: odr-using constexpr static data member of class exported from module results in linker error
michael.kenzel at gmail dot com
gcc-bugzilla@gcc.gnu.org
Thu Dec 7 10:34:54 GMT 2023
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112899
Bug ID: 112899
Summary: odr-using constexpr static data member of class
exported from module results in linker error
Product: gcc
Version: 13.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: michael.kenzel at gmail dot com
Target Milestone: ---
The following example will reproduce the issue:
// A.ixx
export module A;
export struct A
{
static constexpr int blub = -1;
};
// main.cpp
import A;
int main()
{
const int& x = A::blub;
}
compile with
g++ -std=c++23 -fmodules-ts -c -x c++ A.ixx
g++ -std=c++23 -fmodules-ts main.cpp A.o
results in
main.cpp:(.text+0x4): undefined reference to `A@A::blub'
More information about the Gcc-bugs
mailing list